Hire me on UpWork
Showing posts with label 11g. Show all posts
Showing posts with label 11g. Show all posts

Friday, September 15, 2017

Part 1 || ORA-06512: at "SYS.UTL_HTTP", line 1130 ORA-24247: network access denied by access control list (ACL)

As salamualikum (islamic greetings), brothers and sisters. :)

  Hope you are well with the grace of Almighty Allah (swt)

If you confirm about creating Oracle Database ACL (Access Control List ) for 11g and higher,

and getting following error for calling a web service or web address, then this solution if for you.

Error

Error starting at line : 1 in command -
begin
PROC_URL_CALL;
end ;
Error report -
ORA-29273: HTTP request failed
ORA-06512: at "SYS.UTL_HTTP", line 1130
ORA-24247: network access denied by access control list (ACL)

ORA-06512: at "HR.PROC_URL_CALL", line 8
ORA-06512: at line 2
29273. 00000 -  "HTTP request failed"
*Cause:    The UTL_HTTP package failed to execute the HTTP request.
*Action:   Use get_detailed_sqlerrm to check the detailed error message.
           Fix the error and retry the HTTP request.


Where PROC_URL_CALL have the following code,

create or replace PROCEDURE PROC_URL_CALL AS
  l_url            VARCHAR2(500) := 'http://allieditbd.com';
  l_http_request   UTL_HTTP.req;
  l_http_response  UTL_HTTP.resp;
BEGIN
  -- Make a HTTP request and get the response.
  l_http_request  := UTL_HTTP.begin_request(l_url);
  l_http_response := UTL_HTTP.get_response(l_http_request);
  UTL_HTTP.end_response(l_http_response);
END;

and calling the procedure ,

begin
PROC_URL_CALL;
end ;

There is no error in the ACL creation, issue in the procedure where we set default value for url.
remove the http:// and add www.

Now the code will be

create or replace PROCEDURE PROC_URL_CALL AS
  l_url            VARCHAR2(500) := 'www.allieditbd.com';
  l_http_request   UTL_HTTP.req;
  l_http_response  UTL_HTTP.resp;
BEGIN
  -- Make a HTTP request and get the response.
  l_http_request  := UTL_HTTP.begin_request(l_url);
  l_http_response := UTL_HTTP.get_response(l_http_request);
  UTL_HTTP.end_response(l_http_response);
END;

Now run call the procedure

begin
PROC_URL_CALL;
end ;

and you will get

PL/SQL procedure successfully completed.


Thanks for reading the post and congratulation on your success.

Tuesday, October 28, 2014

How to Read Image / Picture in Oracle Reports from File System ?

As salamualikum (islamic greetings), brothers and sisters. :)
Hope you are well with the grace of Almighty Allah (swt).

Today, i discuss an important issue, many of oracle developer spend hours and hours to make a reports to show image from file system, which is much complex.

From Now on, it will be easy and remain easy. :)

Follow the bellow steps.

  1. Take a Formula column
  2. Data Type Char
  3. Length 500
  4. Set READ FROM FILE property to YES
  5. Set File Format to Image
  6. Make the Image stored folder as Shared Folder

Example Code::

function CF_IMAGEFormula return Char is
  
  filename VARCHAR2(200);
  tiff_image_dir VARCHAR2(80) :='<PC_NAME>/emp_picture/'; --// Folder name should be shared for shared link.
    out_file Text_IO.File_Type;
BEGIN

out_file :=Text_IO.Fopen(tiff_image_dir||:EMP_CODE||'.jpg', 'r'); -- r is read only AND EMP_CODE is the name of image.

filename := tiff_image_dir||:EMP_CODE||'.jpg';
return filename;

exception
when no_data_found then
RETURN tiff_image_dir||'blank.jpg';

when others then
if sqlcode=-302000 then
RETURN tiff_image_dir||'blank.jpg';
end if; 

end;


 You are Done :)
Pray for me to Almighty Allah (swt) to keep it up and for my hereafter.

Wednesday, October 22, 2014

ORA-28001: the password has expired or ORA-28002 the password will expire within 7 days (Oracle Database Password Expired)

As salamualikum (islamic greetings), brothers and sisters. :)
Hope you are well with the grace of Almighty Allah (swt).

Today we talk on issue of Oracle Database password Expired issues show version 11g and on words.

What will you see ? 


Solution:: 
  1. Connect to Database with SYS DBA.
For Example

C:\oraclexe\app\oracle\product\11.2.0\server\bin>SQLPLUS/NOLOG

SQL*Plus: Release 11.2.0.2.0 Production on Fri May 23 19:53:42 2014

Copyright (c) 1982, 2010, Oracle.  All rights reserved.


SQL> CONN SYS/SYSTEM11g AS SYSDBA

  1. Execute the following query
  2. Sql > select * from dba_profiles;
You will see something like bellow… (Shortened)

1.  PROFILE              RESOURCE_NAME             RESOURCE LIMIT
2.  -------------------- ------------------------- -------- ---------------
3.  DEFAULT              FAILED_LOGIN_ATTEMPTS     PASSWORD 10
4.  MONITORING_PROFILE   PASSWORD_LIFE_TIME        PASSWORD DEFAULT
5.  DEFAULT              PASSWORD_LIFE_TIME        PASSWORD 180
6.   
7.  PROFILE              RESOURCE_NAME             RESOURCE LIMIT
8.  -------------------- ------------------------- -------- ---------------
9.  MONITORING_PROFILE   PASSWORD_REUSE_TIME       PASSWORD DEFAULT
10.DEFAULT              PASSWORD_REUSE_TIME       PASSWORD UNLIMITED
11. 
12.32 rows selected.

  1. Here PASSWORD_LIFE_TIME field is responsible for expiring of password after 180 days.
  1.  Execute following command to disable this feature:
  2. Sql> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED; 
  1. Now crosscheck for disabling of this feature.
  2. Sql > select * from dba_profiles;
  1. The value in PASSWORD_LIFE_TIME has changed to unlimited. Now password will never expire.
 You are almost DONE


 Now reset the password of locked user. 
Here are two options to reset password. 
Either you can keep same password or you can give a new password.

One is..


 

 You are Done :)

Pray for me to Almighty Allah (swt) to keep it up and for my hereafter.