Accessing Restful Web Services in APEX?

Hi I am new to this forum so I hope you will bear with me. I have been looking at how to create RESTful web services through the SQL Workshop Resful Services wizard but every single article I look at refers to a test button which I cannot see anywhere (I am using APEX 4.2) so how do I test the service?
Also, how can I get the URL of the service so I can call it from another application?
Thanks in advance
Malcolm

Oracle® Application Express
SQL Workshop Guide
Release 4.2
RESTful Service Requirements
In order for the RESTful Service utility to be available and function properly, the
following requirements must be met:
■ The instance administrator must enable RESTful Services for this Application
   Express instance. See Oracle Application Express Administration Guide.
■ The Oracle Application Express Listener version 2.0 or higher must be used. The
  Oracle XML DB HTTP Server with the embedded PL/SQL gateway and Oracle
  HTTP Server with mod_plsql do not support this functionality. See Oracle
  Application Express Listener Installation and Developer Guide.
Regards
Zack

Similar Messages

  • HTTP error when trying to access RESTful web service from application

    Hi,
    We are getting the following error when trying to access a RESTful web service coming from Apex workspace 4.2.1 and Apex listener 2.1:
    ORA-29273: HTTP request failed ORA-06512: at "SYS.UTL_HTTP", line 1130 ORA-29024: Certificate validation failure
    In the Debug report, besides the above I also see:
    error_backtrace: ORA-06512: at "SYS.UTL_HTTP", line 1130 ORA-06512: at "APEX_040200.WWV_FLOW_WEB_SERVICES", line 543 ORA-06512: at "APEX_040200.WWV_FLOW_WEB_SERVICES", line 1164 ORA-06512: at "APEX_040200.WWV_FLOW_PROCESS", line 396
    We get that error whether we use https or http in the URI pointing to the web service. When I test the Web Service in Workspace RESTful service GUI, I get the data back. When I go build an application with a report calling the RESTful Web Service I get that error. Both the Application and the Workspace RESTful services are on the same Apex environment and even the same workspace.
    What is odd is that I can actually put the URL of the web service into a browser and I get the data: (using the demo hr data in sample RESTful services.)
    IN browser-- https://weblogic-dev.edu/apex/ace/hr/empinfo/
    yields:
    7839,KING,PRESIDENT,,1981-11-17T05:00:00Z,5000,,10 7698,BLAKE,MANAGER,7839,1981-05-01T04:00:00Z,2850,,30 7782,CLARK,MANAGER,7839,1981-06-09T04:00:00Z,2450,,10 7566,JONES,MANAGER,7839,1981-04-02T05:00:00Z,2975,,20 7788,SCOTT,ANALYST,7566,1982-12-09T05:00:00Z,3000,,20 7902,FORD,ANALYST,7566,1981-12-03T05:00:00Z,3000,,20 7369,SMITH,CLERK,7902,1980-12-17T05:00:00Z,800,,20 7499,ALLEN,SALESMAN,7698,1981-02-20T05:00:00Z,1600,300,30 7521,WARD,SALESMAN,7698,1981-02-22T05:00:00Z,1250,500,30 7654,MARTIN,SALESMAN,7698,1981-09-28T04:00:00Z,1250,1400,30 7844,TURNER,SALESMAN,7698,1981-09-08T04:00:00Z,1500,0,30 7876,ADAMS,CLERK,7788,1983-01-12T05:00:00Z,1100,,20 7900,JAMES,CLERK,7698,1981-12-03T05:00:00Z,950,,30 7934,MILLER,CLERK,7782,1982-01-23T05:00:00Z,1300,,10
    Any ideas on what would be causing the Error above in our application?
    Thanks,
    Pat
    Edited by: patfmnd on Mar 11, 2013 3:25 PM
    In reviewing the above error, I think we are realizing that we have to have the Weblogic layer SSL cert (actually the CERT from our BigIP load balancer which also does our SSL termination) imported into the Oracle server wallet where Apex is installed. Am I correct?
    PM

    We resolved our problem. The Apex Administrative Guide made us realize that we had to set up Wallet path in the Instance. This required working with DBAs to follow the Advanced networking guide to get the wallet set up on our server. We then added that path to the Instance configuration. (Manager Instance --> Instance settings). We ran into another other issue related to our implementation of CAS but were able to resolve that, and 'voila' were able to get the sample RESTful service consumed by our application!!
    Now to the task of figuring out how to get Basic Auth working between client application and RESTful web service. If anyone has that working, let us know!!
    It would be helpful if in the documentation of the Apex 2.x listener or Apex install/configuration there was clear reference to the above steps required for HTTPS access to RESTful web services.
    Pat

  • Consuming RESTful web service in Apex app

    Hi,
    I have created a RESTful Web service through an Apex application (4.0) and published as a public web service. Can someone point me to an example of how to then consume that service in another Apex app? The output is straightforward XML that I can retrieve just by pointing the browser to the URL of the service created, but when I go to create the REST Web Reference for the receiving application, I am not sure what to put for the Response Xpath or Response Namespace. The service is meant to just return report records that were created in the REStful Web service with no input required.
    The service XML looks like this:
    <ROWSET>
    <ROW>
    <PROJ_ID>132</PROJ_ID>
    <PSL_NETID>xxxxxxxx</PSL_NETID>
    <PROJECT_TITLE>11g- Oracle Upgrade to RAC 11g</PROJECT_TITLE>
    <CUSTOMER>OIT</CUSTOMER>
    <DIVISION>EIS</DIVISION>
    </ROW>
    <ROW>
    <PROJ_ID>132</PROJ_ID>
    <PSL_NETID>xxxxxx</PSL_NETID>
    <PROJECT_TITLE>11g- Oracle Upgrade to RAC 11g</PROJECT_TITLE>
    <CUSTOMER>OIT</CUSTOMER>
    <DIVISION>CSS</DIVISION>
    Any help would be appreciated.
    Thanks,
    Pat
    Edited by: patfmnd on Dec 7, 2012 3:04 AM

    Hi,
    I have made progress in this. I created the RESTful report service in an Apex 4.1 application. (previous attempt was with 4.0 version of Apex)
    I then created a separate application and created a RESTful web service reference that I tested and it was successful in bringing up XML. However in Apex 4.1, when I create a report following the Wizard for creating a report based on that Web service reference I get the error: ORA-31013: Invalid XPATH expression Which I don't know how to get past. The Xpath provided in the Web service reference test gave output below and brought back a result. There was no where during the Report creation to provide an Xpath. Am I missing something or is 4.1 not quite Web service ready??
    This is what I get from the test of the Web service reference in the Apex App from which I want to create a report: (I see in this XML the data I was expecting from the test of the RESTful web service but it looks like the output I get from the Web service test is more like the Report xml itself.)
    <!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtml" xmlns:htmldb="http://htmldb.oracle.com" xmlns:apex="http://apex.oracle.com"> <head> <title>Author</title>
    <!--[if IE]><link rel="stylesheet" href="/i/css/apex_ie_4_1.css" type="text/css" /><![endif]--> <script type="text/javascript">
    //<![CDATA[
    var apex_img_dir = "/i/", htmldb_Img_Dir = apex_img_dir;
    //]]>
    </script>
    <script src="/i/javascript/apex_4_1.min.js" type="text/javascript">
    </script>
    <script type="text/javascript">
    //<![CDATA[
    apex.security.framebreaker("D");
    //]]>
    </script>
    <!--[if IE]><link rel="stylesheet" href="/i/themes/theme_2/css/theme_4_0_ie.css" type="text/css" /><![endif]--><!--[if IE 6]><link rel="stylesheet" href="/i/themes/theme_2/css/theme_4_0_ie6.css" type="text/css" /><![endif]--><!--[if IE 7]><link rel="stylesheet" href="/i/themes/theme_2/css/theme_4_0_ie7.css" type="text/css" /><![endif]--><!--[if lte IE 6]><div id="outdated-browser">You are using an outdated web browser. For a list of supported browsers, please reference the Oracle Application Express Installation Guide.</div><![endif]-->
    <form action="wwv_flow.accept" method="post" name="wwv_flow" id="wwvFlowForm"><input type="hidden" name="p_flow_id" value="140" id="pFlowId" /><input type="hidden" name="p_flow_step_id" value="1" id="pFlowStepId" /><input type="hidden" name="p_instance" value="6146802068150520" id="pInstance" /><input type="hidden" name="p_page_submission_id" value="1940235134399423" id="pPageSubmissionId" /><input type="hidden" name="p_request" value="" id="pRequest" />
    <div id="header">
    <div id="app-logo"><a href="f?p=140:1:0"></a></div>
    <div id="navbar">
    <div class="navbar-entry">Logout</div>
    </div>
    </div>
    <div id="tabs">
    <div class="frame">
    <div class="bg">
    <div class="tab-holder">
    <div class="first-current">
    <div><span>Author</span></div>
    </div>
    </div>
    </div>
    </div>
    </div>
    <div id="topbar">
    <div class="breadcrumb-region" id="R170908223330421512">
    <div>
    <div id="breadcrumbs">
    <ul class="breadcrumb-list">
    <li class="current">Author</li>
    </ul>
    </div>
    </div>
    </div>
    </div>
    <div id="messages"></div>
    <div id="body">
    <table class="tbl-body" cellspacing="0" cellpadding="0" border="0" summary="">
    <tbody>
    <tr>
    <td class="tbl-main" width="100%">
    <div class="rounded-corner-region" id="books">
    <div class="rc-blue-top">
    <div class="rc-blue-top-r">
    <div class="rc-title">AUTHOR</div>
    <div class="rc-buttons"><button value="Reset" class="button-gray" type="button" id="B170907622885421490"><span>Reset</span></button></div>
    </div>
    </div>
    <div class="rc-body">
    <div class="rc-body-r">
    <div class="rc-content-main">
    <table id="apex_layout_170907030238421484" border="0" class="formlayout" summary="" role="presentation" datatable="0">
    <tr>
    <td align="right"><label for="P1_REPORT_SEARCH" tabindex="999"><a class="optional-w-help" href="javascript:popupFieldHelp('170907422375421487','6146802068150520')" tabindex="999">Search</a></label></td>
    <td colspan="1" rowspan="1" align="left"><input type="hidden" name="p_arg_names" value="170907422375421487" /><input type="text" id="P1_REPORT_SEARCH" name="p_t01" value="" size="30" maxlength="2000" class="text_field" /></td>
    <td align="right"><label for="P1_ROWS" tabindex="999"><a class="optional-w-help" href="javascript:popupFieldHelp('170907508375421490','6146802068150520')" tabindex="999">Display</a></label></td>
    <td colspan="1" rowspan="1" align="left"><input type="hidden" name="p_arg_names" value="170907508375421490" /><select name="p_t02" id="P1_ROWS" size="1" class="selectlist">
    <option value="10">10</option>
    <option value="15" selected="selected">15</option>
    <option value="20">20</option>
    <option value="30">30</option>
    <option value="50">50</option>
    <option value="100">100</option>
    <option value="200">200</option>
    <option value="500">500</option>
    <option value="1000">1000</option>
    <option value="5000">5000</option>
    </select></td>
    <td align="left"></td>
    <td colspan="1" rowspan="1" align="left"><button value="Go" class="button-gray" type="button" id="P1_GO"><span>Go</span></button></td>
    </tr>
    </table>
    <div id="report_170907030238421484_catch">
    <table cellpadding="0" border="0" cellspacing="0" summary="" id="report_books">
    <tr>
    <td></td>
    </tr>
    <tr>
    <td>
    <table cellpadding="0" border="0" cellspacing="0" summary="" class="report-standard">
    <tr>
    <th id="AUTHORID" class="header">
    <div class="rpt-sort">Authorid<img align="absmiddle" src="/i/arrow_up_gray_dark.gif" width="13" height="12" alt="Sort by this column" /></div>
    </th>
    <th id="LNAME" class="header">
    <div class="rpt-sort">Lname</div>
    </th>
    <th id="FNAME" class="header">
    <div class="rpt-sort">Fname</div>
    </th>
    </tr>
    <tr class="highlight-row">
    <td headers="AUTHORID" class="data">A100</td>
    <td headers="LNAME" class="data">AUSTIN</td>
    <td headers="FNAME" class="data">JAMES</td>
    </tr>
    <tr class="highlight-row">
    <td headers="AUTHORID" class="data">A105</td>
    <td headers="LNAME" class="data">ADAMS</td>
    <td headers="FNAME" class="data">JUAN</td>
    </tr>
    <tr class="highlight-row">
    <td headers="AUTHORID" class="data">B100</td>
    <td headers="LNAME" class="data">BAKER</td>
    <td headers="FNAME" class="data">JACK</td>
    </tr>
    <tr class="highlight-row">
    <td headers="AUTHORID" class="data">F100</td>
    <td headers="LNAME" class="data">FIELDS</td>
    <td headers="FNAME" class="data">OSCAR</td>
    </tr>
    <tr class="highlight-row">
    <td headers="AUTHORID" class="data">J100</td>
    <td headers="LNAME" class="data">JONES</td>
    <td headers="FNAME" class="data">JANICE</td>
    </tr>
    <tr class="highlight-row">
    <td headers="AUTHORID" class="data">K100</td>
    <td headers="LNAME" class="data">KZOCHSKY</td>
    <td headers="FNAME" class="data">TAMARA</td>
    </tr>
    <tr class="highlight-row">
    <td headers="AUTHORID" class="data">M100</td>
    <td headers="LNAME" class="data">MARTINEZ</td>
    <td headers="FNAME" class="data">SHEILA</td>
    </tr>
    <tr class="highlight-row">
    <td headers="AUTHORID" class="data">P100</td>
    <td headers="LNAME" class="data">PORTER</td>
    <td headers="FNAME" cla
    Edited by: patfmnd on Dec 12, 2012 5:59 PM
    Edited by: patfmnd on Dec 12, 2012 6:07 PM

  • How to access (any) soap / rest web services from widget

    Hi all,
    Is there an API, javascript library etc, which allows accessing (any) soap / rest webservices from widgets?
    I know I can access web services from sap j2ee with widget foundation, but I'm still not sure how to access "outside"
    web services.
    A blog entry about this topic would be greatly appreciated I think, not only by me.
    Regards,
    Ladislav

    As promised, below is the js lib source code. I did not see the attachement option, so you can just create a text file and save it with .js extension.
              function getHdrData( FuncName ) {
                return '<?xml version="1.0" encoding="UTF-8" ?>' +
                          '<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" ' +
                                             'xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ' +
                                             'xmlns:xs="http://www.w3.org/2001/XMLSchema">' +
                          '<SOAP-ENV:Header><sapsess:Session ' +
                                    'xmlns:sapsess="http://www.sap.com/webas/630/soap/features/session/">' +
                                    '<enableSession>true</enableSession></sapsess:Session>'+
                          '</SOAP-ENV:Header><SOAP-ENV:Body><ns1:' +
                          FuncName +
                          ' xmlns:ns1=\'urn:sap-com:document:sap:soap:functions:mc-style\'>';
              function addVar ( VarName, VarValue ) {
                return '<' + VarName + '>' + VarValue  + '</' + VarName + '>';
              function getFtrData( FuncName ) {
              return '</ns1:' + FuncName + '></SOAP-ENV:Body></SOAP-ENV:Envelope>';
              function setTable ( TblName, TblType) {
                   return '<' + TblName + ' xsi:type=\'ns1:' + TblType + '\'>';
              function closeTable ( TblName) {
                   return '</' + TblName + '>';
              function startEntry( ) {
                   return '<item>';
              function endEntry( ) {
                   return '</item>';
    So the following is the basic on how to use this library:
    * Set up SOAP envelope
    * Get the header data
    getHdrData( SOAP operation name )
    * If the web service set up the table and record start tags
    setTable( variable name, table type ) - Optional
    Set new record tag: startEntry() ? Optional
    * Set up the fieldname or variable name
    addVar( variable name, variable value )
    * Set up the table and record end tags
    endEntry() ? Optional
    closeTable( variable name ) ? Optional
    * Set up the footer SOAP envelope
    Set footer data: getFtrData(SOAP operation name )
    So hopefully that will help you consume SAP Published web services.

  • RESTful web services : Accessing the param id resource URI parameter.

    Hello all,
    I created restful web services using Netbeans 6.1--->New RESTful web services from patterns-->Container-Item.
    This gives me 2 class files, for example : MyWSsResource and MyWSResource.
    Now in MyWSResource there are 3 generated methods GET, PUT and Delete.
    Here is an example of the GET
    @Path("/myws/{arg1}")
        @GET
        @ProduceMime("application/xml")
        public String getXml(@PathParam("id")
        String id) {
            if(context.equals(null)) {
            throw new UnsupportedOperationException();
           //My code below
            FpkSentDB fpkSent = new FpkSentDB();
            MultivaluedMap<String, String> params = context.getTemplateParameters();
            String arg1       = params.getFirst("arg1");
            return fpkSent.getFPKSent(arg1).toString();
    {code}I am not understanding the following code:
      {code:java} (@PathParam("id") String id) {code}
    .... I can access arg1 using the URI/arg1value.
    How is PathParam("id")  meant to be accessed?
    If I do a {code:java} logger.debug("ID equals:" + id);{code}
    id returns null always.
    My code works just fine as it is but I am new to REST and wanted to follow spec as closely as possible.
    Any Ideas?
    TIA!                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

    Any possible solution for the issue?, so much thanks for it.

  • ORACLE APEX POST Restful Web services

    Any examples and/or ideas into how to insert a XML or JSON style document into column with XMLtype, varchar2, clob or blob type using an Apex post restful web service? I don't want to use SQL loader, external tables or something that requires a directory in the database server. 
    Oracle Apex 4.2
    Apache tomcat 7 web server
    Oracle Apex Listener 2.0
    Oracle database 11.2.0.3
    thank you!

    MK,
    I am able to insert into a table the following json document;
    {"name": "John", "age": "21"}
    Here is the code behind it.
    <code>
    create table students (
    name varchar2(100),
    age varchar2(100));
    begin
    insert into students(name, age)
    values(:name, :age);
    end;
    </code>
    This works, But the following will fail,
    {"name": "John", "age": "21"}, {"name": "Mary", "age": "22"}.
    I would like to load the document into memory and insert into a table.

  • URGENT: Rest web service with get method works fine in browser but not with java client(Android)

    Hi ,
    I have created one REST web service which accepts two parameters send back JSON results.
    I tested the it in browser with URL as http://+Inteernal server+/ords/utimes/login_info?p1=+first_param+&p2=+second_para+
    Web service URL :  http://+Inteernal server+/ords/utimes/login_info?p1={p1}&p2={p2}
    But when java team wants to access it from java code it gives error as "400- Bad Request".
    one more IMP thing : when I test it in RESTful web service by using "set bind variable" , it only set value of first parameter.
    APEX version : 4.2
    Database : 11g (XE)
    ords : 2.0.8
    please help me ASAP.
    regards,
    Nagesh Patil

    Hi Pragya,
    thank you for the update.
    Another question: could you please give us any reference about these corrections you told about? Maybe they could be relevant in our case too.
    Our raised incident number is: 3100851983
    Kind regards,
    Davide

  • REST Web Service Output Parameter not working in POST Handler

    I've created a RESTful Web Service in Oracle Apex, using a POST method as "handler".   I've setup 11 input parameters which all work fine, it is my one output parameter that does not return successfully.
    Here is detail on the Output Paramter
    Name:  returns
    Bind Variable Name:  :returns
    Access Method:  OUT
    Source Type: Response
    Parameter Type:  String
    The actual source is a call to a pl/sql package that returns a value that I set :returns equal to (eg :returns := v_result).   I've tried this with Source Type Header and still the same result, 'no output'.
    I see APEX is calling wwv_flow_api.create_restful_param to generate the parameters (for importing), is there any documentation on this procedure?
    How can I get this output parameter to return something in the response?
    The request accepts a Json payload.
    Any help greatly appreciated
    Thanks,
    James

    Solved my own problem :returns does not work needs to be returns
    Does Not Work
    Name:  returns
    Bind Variable Name:  :returns
    Access Method:  OUT
    Source Type: Response
    Parameter Type:  String
    Does Work
    Name:  returns
    Bind Variable Name:  returns
    Access Method:  OUT
    Source Type: Response
    Parameter Type:  String

  • REST Web Service References: Can't run Google APIS

    Hello Everyone!
    I am learning on how to integrate REST web service reference in APEX application. I found a tutorial video at YouTube on 'Creating and Using a RESTful Web Service in Application Express 4.2', which found to be very helpful and easy to do on my sample app. The REST Web Service URL:
    http://maps.googleapis.com/maps/api/geocode/xml?address=san%20fancisco&sensor=false
    But my application throws an error as below:
    1 error has occurred
    ORA-29273: HTTP request failed ORA-06512: at "SYS.UTL_HTTP", line 1130 ORA-24247: network access denied by access control list (ACL)
    After going through some of the posts here at OTN, I have granted access as follows:
    GRANT EXECUTE ON SYS.UTL_HTTP TO ETI;
    GRANT EXECUTE ON SYS.UTL_INADDR TO ETI;
    GRANT EXECUTE ON SYS.UTL_TCP TO ETI;
    GRANT EXECUTE ON SYS.UTL_SMTP TO ETI;
    GRANT EXECUTE ON SYS.UTL_URL to ETI;
    GRANT EXECUTE ON SYS.UTL_XML to ETI;
    Second thing I did was, created and assigned ACL:
    begin
      dbms_network_acl_admin.create_acl (
        acl         => 'googleapis.xml',
        description => 'Google Translate API',
        principal   => 'CONNECT',
        is_grant    => true,
        privilege   => 'connect',
        start_date  => null,
        end_date    => null
      dbms_network_acl_admin.add_privilege (
        acl       => 'googleapis.xml',
        principal => 'CONNECT',
        is_grant  => true,
        privilege => 'connect'
      dbms_network_acl_admin.assign_acl (
        acl  => 'googleapis.xml',
        host => 'ajax.googleapis.com'
      dbms_network_acl_admin.assign_acl (
        acl  => 'googleapis.xml',
        host => 'maps.googleapis.com'
    end;
    All these statements were executed on my database with out any error, even though not helping my web service reference to work.
    Any idea how can I get my Google API REST Web service working, what is the thing I'm missing here?

    I apologize for the lack of information.
    I thought I had included a list of schemas for you to try out.
    At first, (due to the GRANT ___ TO ETI;) I thought you were writing your own Web Service parser in PL/SQL.
    (If that was the case, than ETI would need be part with the ACL)
    Then, I realized,you were using the built in APEX functionality.
    In this case, try adding your APEX_{version} schema as part of the ACL.
    I'm not sure if this will work (I haven't tried it).
    However, I do know you need to add the APEX_{version} to the ACL if you use the LDAP Authentication.
    finding APEX_{version}
    select comp_id, version, status, schema
    from dba_registry
    where comp_id='APEX'
    MK

  • Composite Application with RESTful Web Services

    Hello!
    Is it possible to build Composite Application with RESTful Web Services only. I use Glassfishe 2.1 and OpenESB 2.1.
    Can you point me on some tutorials on the net to read about using RESTful Web Services in BPEL?

    Hi Gabriel,
    Let me try to answer some of your questions:
    1) The "Requires Secure Access" attribute of a resource handler controls whether this handler must be accessed/consumed only over SSL (HTTPS). Oracle Database Cloud Schema Service is only offered over SSL, so this attribute does not have any effect on RESTful services deployed in this environment (because secure access is always required and there is no other way). That said, if you want to access such web service from your own APEX instance, your instance must have Oracle Wallet configured with appropriate SSL certificate.
    2) The URI parameters are not required. If your web service returns data for many entities (for example, list of employees in employees/), you may not need a parameter. If your web service returns data for one specific entity (for example, details of one employee in employees/{id}), you may want to identify that entity with a URI parameter.
    3) You can have many URI parameters, for example: customers/{id}/orders/{order_id}.
    4) Yes, these are the same HTTP methods/verbs you would use from PHP.
    5) If you are trying this POST example from your own APEX instance (not Oracle Database Cloud Schema Service) and you are trying to access a web service over SSL, then it is likely that the Oracle Wallet used by your instance does not include the required SSL certificate(s), or the Oracle Wallet is not configured at all.
    6) I recommend to check RESTful Web Services for the Oracle Database Cloud white paper and Oracle REST Data Services Developers Guide. Oracle REST Data Services is the technology that enables RESTful services in the Oracle Database Cloud Schema Service.
    You can certainly create your own web services in the Oracle Database Cloud Schema Service and consume them from the same environment.
    Vlad

  • Invoking web service through apex.

    Apex 4.1,
    I'm trying to bind a simple web service to my apex page. Web service is hosted in a different server. When i try to add the path reference of WSDL file i'm getting the error message. Obviously its expecting a proxy server address to be configured. But we don't have a proxy server to access our web service. Even we were able to bind the same service to an infopath form by directly giving the WSDL file path.
    Greatly appreciate if someone can assist me on this.
    Thanks

    Apex-Ape wrote:
    i'm getting the error message.Hi,
    Can you please give us the precise error that you're getting?
    Tom

  • Error in REST Web Service with Output Format as Text

    Hi All,
    I am referencing a REST web service, and can successfully connect to it and retrieve results with the Output Format set to XML.
    I don't need the individual node values, I just want to capture the entire XML as a string, and populate a table column with it.
    When I create a new Rest web service reference, with Output Format set to Text, and then create a form/report to run it, I get the following error when I click 'Submit':
    ORA-06550: line 1, column 63: PLS-00103: Encountered the symbol "end-of-file" when expecting one of the following: ( - + case mod new not null others avg count current exists max min prior sql stddev sum variance execute forall merge time timestamp interval date pipe
         Error      Error sending request.
    There are control characters in the XML, but surely this is handled by Apex, so I'm not sure what the problem is here.
    Any ideas most welcome.
    Thanks,
    Rhodri

    Rhodri:
    Application Express expects text response to actually be text response, delimited by other characters denoting a new value, and a new record set. You should leave the response as XML. The XML document will be stored in the xmltype01 column of the collection you specify. You can then convert that xmltype01 column to a clob if you like using .toClobVal().
    Regards,
    Jason

  • Problem with RESTful web service

    I am running into a problem with Flex Web Services (REST) in trying to get the proper format returned. I can see that the HTTP header is set to
    Accept: */*;
    rather than
    Accept: application/xml
    when sending the request. The web service was generated via the web services HTTP data services wizard. I edited it to set the resultFormat to xml
        // Constructor
        public function _Super_UsersService()
            // initialize service control
            _serviceControl = new mx.rpc.http.HTTPMultiService();
             var operations:Array = new Array();
             var operation:mx.rpc.http.Operation;
             var argsArray:Array;
             operation = new mx.rpc.http.Operation(null, "getUsers");
             operation.url = "http://localhost:8888/users";
             operation.contentType = "";
             operation.method = "GET";
             operation.resultFormat = "xml";
             //operation.serializationFilter = serializer0;
             operation.properties = new Object();
             operation.properties["xPath"] = "/";
             operation.resultType = valueObjects.Users;
             operations.push(operation);
             _serviceControl.operationList = operations; 
             model_internal::initialize();
    How does one configure the accept header?

    Hi,
    I have posted a simple application with the RESTful reference:
    http://apex.oracle.com/pls/apex/f?p=13758
    I can give you full privileges on this so you can look at the WEB service reference. Shall I send to you separately for login user?
    It is using the RESTful service: http://apex.oracle.com/pls/apex/nd_pat_miller/demo/employee/{deptno}
    This RESTful service tests fine when I test from within the RESTful web service module of the Workspace.
    I based this on the Video demo tutorial for RESTful web service that Oracle published for 4.2 release. The video seemed to exclude the {deptno} in the URL but when I try that, it doesn't work either.
    This is the error I am getting when I run this on my Apex environment: (it, of course, will not run the web service in the apex.oracle.com environment)
    class="statusMessage">Bad Request</span>                                         
    </h3>                                         
    </div>                                         
    </div>                                         
    <div id="xWhiteContentContainer" class="xContentWide">                                         
    <div class="xWhiteContent">                                         
    <div class="errorPage">                                         
    <p>                                         
    <ul class="reasons"><li class="badRequestReason"><span class="target" style="display:none;">uri</span><span class="reason">Request path contains unbound parameters: deptno</span></li>                                    
    </ul>Thanks,
    Pat
    Edited by: patfmnd on May 8, 2013 3:33 AM

  • Exposing a report as RESTful web service - Parameters

    Hi,
    I am creating a RESTful web service by exposing an apex report. It just works fine and it renders the data. However I want to have parameters and values in the web service URL so that the data can be filtered based on the parameter values?
    For example:
    http://127.0.0.1:8080/apex/apex_rest.getReport?app=100&page=15&reportid=rest_example renders correctly for the report query
    select * from (
    select
    "CUSTOMER_ID",
    "CUST_FIRST_NAME",
    "CUST_LAST_NAME",
    "CUST_STREET_ADDRESS1",
    "CUST_STREET_ADDRESS2",
    "CUST_CITY",
    "CUST_STATE",
    "CUST_POSTAL_CODE",
    "PHONE_NUMBER1",
    "PHONE_NUMBER2",
    "CREDIT_LIMIT",
    "CUST_EMAIL"
    from #OWNER#.DEMO_CUSTOMERS )
    where (
    instr(upper("CUST_FIRST_NAME"),upper(nvl(:P15_REPORT_SEARCH,"CUST_FIRST_NAME"))) > 0  or
    instr(upper("CUST_LAST_NAME"),upper(nvl(:P15_REPORT_SEARCH,"CUST_LAST_NAME"))) > 0
    )But I want to filter the result for a particular customer id by getting a value in the URL like this.
    http://127.0.0.1:8080/apex/apex_rest.getReport?app=100&page=15&reportid=rest_example&P15_CUSTOMER_ID=6 and to use the value received thro the URL in the report query
    select * from (
    select
    "CUSTOMER_ID",
    "CUST_FIRST_NAME",
    "CUST_LAST_NAME",
    "CUST_STREET_ADDRESS1",
    "CUST_STREET_ADDRESS2",
    "CUST_CITY",
    "CUST_STATE",
    "CUST_POSTAL_CODE",
    "PHONE_NUMBER1",
    "PHONE_NUMBER2",
    "CREDIT_LIMIT",
    "CUST_EMAIL"
    from #OWNER#.DEMO_CUSTOMERS
    where customer_id = :P15_CUSTOMER_ID)
    where (
    instr(upper("CUST_FIRST_NAME"),upper(nvl(:P15_REPORT_SEARCH,"CUST_FIRST_NAME"))) > 0  or
    instr(upper("CUST_LAST_NAME"),upper(nvl(:P15_REPORT_SEARCH,"CUST_LAST_NAME"))) > 0
    )Is it possible to have it working in this way?
    I am currently testing this in apex 4.2 and Oracle 11g XE. My development environment will be Apex 4.1 and Oracle 11g.
    Thanks in Advance.
    Regards,
    Natarajan
    Edited by: Nattu on Dec 18, 2012 2:09 AM

    It does accept values for the parameters but does not accept value names in the URL.
    The previous thread Restful web service passing character parameters helped me to get it working.
    Thanks.

  • REST web service using PL/SQL

    Hello,
    I am trying to learn how a REST web service can be created using PL/SQL and how it can be used.
    I am using this as a starting point.
    Also, I am using the pre-build "Oracle Developer Days" setup for this (which means I have 11.2 version of oracle database installed).
    I have done all the steps mentioned in the above blog post but when I try to access the web service in browser, I get the
    "404 Not found - The requested URL /devtest/rest-demo/departments was not found on this server" message.
    Here is my DAD setup :
    SQL> declare
      l_name dbms_epg.varchar2_table;
      l_value dbms_epg.varchar2_table;
    begin
      DBMS_EPG.GET_ALL_DAD_ATTRIBUTES (dad_name => 'devtest', attr_names => l_name, attr_values => l_value);
      for i in l_name.first..l_name.last
      loop
        dbms_output.put_line(l_name(i)||' => '||l_value(i));
      end loop;
    end;
      2    3    4    5    6    7    8    9   10   11  database-username => HR1
    path-alias => rest-demo
    path-alias-procedure => rest_handler.handle_requestI have created the package and procedures as mentioned in that blog post
    SQL> desc hr1.rest_handler
    PROCEDURE HANDLE_REQUEST
    Argument Name                  Type                    In/Out Default?
    P_PATH                         VARCHAR2                INHave I missed something ?
    Any help will be appreciated.
    Thanks

    Probably an security issue, I guess. The article (http://ora-00001.blogspot.com/2009/07/creating-rest-web-service-with-plsql.html) mentioned is a very good one (if not only I like what the site has become in recent years - much good tips and articles). As an alternative for your problems, have a look at the explaination of how Tim Hall has done it...
    http://www.oracle-base.com/articles/misc/XMLOverHTTP.php
    Edited by: Marco Gralike on Nov 21, 2011 11:31 AM

Maybe you are looking for

  • Why I can't see the stroke on the Application bar on this view?

    Instead I have essentials, covering something behind? I tried restore to default and didn't work. And anyway, I shouldn't need to do that. I'm using a Mac. Thanks.

  • MacBook Pro to 23in. Cinema HD Display

    I was given a 23in Cinema HD Display (Model # M8536) and I'm trying to hook it up to my MacBook Pro. I got the Mini DisplayPort to DVI Adapter but my computer doesn't even recognize the display. Is this the correct adapter or do I need the dual-link

  • How to search in several pdf files at once

    how is it possible to make one pdf file starting from 20 pdf's in order to search for an item in one operation. I do not need to change the contenance (pro edition off adobat?)

  • Lost beats audio

    Have an HP Pavilion dv6 running Win 7.  Was listening to Pandora in Firefox  -   went to Beats Audio to adjust sound.  On the Volume screen, I clicked on the white box at lower right of the third speaker volume control.  Sound stopped and I can't get

  • Spry.Utils.updateContent() not applying CSS styles to included fragments on mobile viewing

    NOTE THAT THIS ONLY PERTAINS TO MOBILE VIEWING (tested on iPhone) Hi, I have a SpryTabbedPanels widget within my index.html page, where clicking each tab calls Spry.Utils.updateContent() to load an html fragment into the body of the panel content. My