Skip to Main Content

SQL & PL/SQL

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Using PL/SQL APEX_WEB_SERVICE.MAKE_REST_REQUEST to upload a file in ALFRESCO

3240057May 17 2016 — edited May 19 2016

Hello,

I try to upload a file in ALFRESCO using PL / SQL and APEX_WEB_SERVICE.MAKE_REST_REQUEST.

Here is my code :

declare

    l_url VARCHAR2(4000);

    lc_entire_msg clob;

    G_API_USER VARCHAR2(128);

    G_API_KEY VARCHAR2(128);

   

    p_param_1 VARCHAR2(80);

    p_param_2 VARCHAR2(80);

    p_param_3 VARCHAR2(80);

    p_param_4 VARCHAR2(80);

    p_param_5 VARCHAR2(80);

    p_param_global VARCHAR2(512);

   

    l_value_1 VARCHAR2(80);

    l_value_2 VARCHAR2(80);

    l_value_3 VARCHAR2(80);

    l_value_4 VARCHAR2(80);

    l_value_5 VARCHAR2(80);

    l_value_global VARCHAR2(512);

   

    l_status_code VARCHAR2(5);

   

    l_blob blob;

BEGIN

    -- URL WEB SERVICE CMIS

   

    l_url := 'http://ged..../alfresco/api/-default-/public/cmis/versions/1.1/browser/root';

   

    -- IDENTIFIANT DU WEB SERVICE

   

    G_API_USER := 'admin';

    G_API_KEY := 'password';

   

    p_param_1 := 'cmisaction';

    p_param_2 := 'propertyId[0]';

    p_param_3 := 'propertyValue[0]';

    p_param_4 := 'propertyId[1]';

    p_param_5 := 'propertyValue[1]';

    p_param_global := p_param_1 || ',' || p_param_2 || ',' || p_param_3 || ',' || p_param_4 || ',' || p_param_5;

   

    l_value_1 := 'createDocument';

    l_value_2 := 'cmis:name';

    l_value_3 := 'photo.jpeg';

    l_value_4 := 'cmis:objectTypeId';

    l_value_5 := 'cmis:document';

    l_value_global := l_value_1 || ',' || l_value_2 || ',' || l_value_3 || ',' || l_value_4 || ',' || l_value_5;

   

    -- RECUPERATION DU FICHIER

   

    select photo into l_blob from annuaire where AGENT=XXXX;

       

    -- APPEL DU WEB SERVICE

   

    apex_web_service.g_request_headers(1).name := 'Content-Type';

    apex_web_service.g_request_headers(1).Value := 'image/jpeg';       

       

    lc_entire_msg := APEX_WEB_SERVICE.MAKE_REST_REQUEST(

    p_url               => l_url,

    p_http_method       =>  'POST',

    p_username          =>  G_API_USER,

    p_password          =>  G_API_KEY,

    p_parm_name     => apex_util.string_to_table(p_param_global, ','),

    p_parm_value     => apex_util.string_to_table(l_value_global, ','),

    p_body_blob         => l_blob

    );

    l_status_code := apex_web_service.g_status_code;

    DBMS_OUTPUT.PUT_LINE (l_status_code);

END;

Here is the error :

11:10:34  [DECLARE - 0 row(s), 180.003 secs]  [Error Code: 29273, SQL State: 99999]  ORA-29273: échec de demande HTTP

ORA-06512: à "SYS.UTL_HTTP", ligne 1369

ORA-29276: temporisation de transfert

ORA-06512: à "APEX_040200.WWV_FLOW_WEB_SERVICES", ligne 609

ORA-06512: à "APEX_040200.WWV_FLOW_WEBSERVICES_API", ligne 197

ORA-06512: à ligne 61

Accuracy: my image file is very small in size and this error happens after 3 minutes !


Can anyone help me?


Thank you in advance,


Jérôme

Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Jun 16 2016
Added on May 17 2016
3 comments
2,102 views