Trouble Calling Web Service Function From Runbook

i have downloaded the OrchestratorServiceModule web services module from CodePlex and i am successfully using it in runbooks.  But for some reason when i call the runbook from another runbook, the Get-OrchestratorRunbook function returns no data
($runbook variable is $null).   The error message states the runbook name that i provide "is not found in Orchestrator".    This function works well when the runbook is called directly.   The variables
are populated.  $creds is set to $null.   there are no errors regarding installing the module or finding the function.   any ideas as to why this would succeed when the runbook is called directly but fail when called by another runbook?
$runbook = Get-OrchestratorRunbook -serviceurl $url -runbookpath $rbpath -credentials $creds

George,
The documented way to call a web service using PL/SQL is to use UTL_DBWS package.
Here are a couple of links that may be useful:
http://www.oracle-base.com/articles/10g/utl_dbws10g.php
http://www.oracle.com/technology/sample_code/tech/java/jsp/callout_users_guide.htm
There is also an APEX package wwv_flow_web_services, but I couldn't find any documentation on it.
Sima

Similar Messages

  • Calling web service request from PL/SQL

    I am trying to create Apex page with stock quote ticker - like what Yahoo has on their page. I have the right web service and have put together a page which works when you submit (created by the wizard). Instead of clicking submit to refresh the page I want to use Ajax to do this but for this purpose I need to know how to call web service from PL/SQL so I can do this in my on demand process. Any ideas?

    George,
    The documented way to call a web service using PL/SQL is to use UTL_DBWS package.
    Here are a couple of links that may be useful:
    http://www.oracle-base.com/articles/10g/utl_dbws10g.php
    http://www.oracle.com/technology/sample_code/tech/java/jsp/callout_users_guide.htm
    There is also an APEX package wwv_flow_web_services, but I couldn't find any documentation on it.
    Sima

  • Call web service (WSDL)  from apex

    Hi all,
    I have web service (WSDL) as (http://localhost:8080/merlin-service/services/ContraIndicationService?wsdl) from example.
    and I want to call this service from Apex, how can i do that , any idea?
    I tried web service reference found in apex but it is failed.
    So please any idea about this.
    Thanks and regards.
    Mohd.
    Edited by: Ajeeb on Aug 26, 2010 10:23 AM

    Hi,
    I used web service refences to create call this web service and when I tested the web service in the test area in web service refences
    it is working fine and it is giving the foloowing
    In the request:
    <?xml version='1.0' encoding='UTF-8'?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
         <SOAP-ENV:Body><ns1:searchByCommonNameGroupIdAndCim10Ids xmlns:ns1="http://contraindication.api.vidal.com"><ns1:commonNameGroupId>4835</ns1:commonNameGroupId><ns1:cim10Ids><ns1:int>4399</ns1:int></ns1:cim10Ids></ns1:searchByCommonNameGroupIdAndCim10Ids></SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    and it is returning this response
    (<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soap:Body><ns1:searchByCommonNameGroupIdAndCim10IdsResponse xmlns:ns1="urn:Vidal"><ns1:contraIndicationCim10List><contraIndications xmlns="urn:Vidal"><contraIndicationTypeCim10Tuple><cim10><code>J45</code><id>4398</id><name> </name></cim10><contraIndication><id>16241</id><name>History of asthma attack related to taking aspirin</name></contraIndication><type>ABSOLUTE</type></contraIndicationTypeCim10Tuple><contraIndicationTypeCim10Tuple><cim10><code>J45</code><id>4398</id><name> </name></cim10><contraIndication><id>16251</id><name>History of asthma attack related to taking non-steroidal anti-inflammatory drugs</name></contraIndication><type>ABSOLUTE</type></contraIndicationTypeCim10Tuple></contraIndications><homogeneous xmlns="urn:Vidal">true</homogeneous></ns1:contraIndicationCim10List></ns1:searchByCommonNameGroupIdAndCim10IdsResponse></soap:Body></soap:Envelope>
    But when I created form and report for this service it is giving me no data found>
    How can I get the output of this service, if it is XML data also no problem for me.
    Best Regards.
    Mohd.

  • Urgent - Error calling web service generated from plsql package

    Hi,
    I am using Jdeveloper 10.1.3 production release.
    I am trying to publish a plsql packaged procedure as a web service.
    My first question is -
    When I am publishing the plsql API as a WS, should I choose the style Document/Wrapped or RPC Literal? Document Wrapped is the default in the wizard.
    My second question - Depending on whether I choose Document/Wrapped or RPC Literal style, I get 2 different errors when I try to run the client java file (generated by Jdeveloper) that calls the web service. The client java compiles successfully but when I run I get these messages:
    Document/Wrapped error -
    D:\jdev1013\jdk\bin\javaw.exe -ojvm -classpath H:\jdevhome\jdev\mywork\Genesis\Test\classes;D:\jdev1013\sqlj\lib\runtime12.jar;D:\jdev1013\jdbc\lib\ojdbc14dms.jar;D:\jdev1013\jdbc\lib\orai18n.jar;D:\jdev1013\jdbc\lib\ocrs12.jar;D:\jdev1013\diagnostics\lib\ojdl.jar;D:\jdev1013\lib\dms.jar;D:\jdev1013\jdev\lib\jdev-rt.jar;D:\jdev1013\webservices\lib\soap.jar;D:\jdev1013\webservices\lib\saaj-api.jar;D:\jdev1013\lib\xmlparserv2.jar;D:\jdev1013\jlib\javax-ssl-1_1.jar;D:\jdev1013\jlib\jssl-1_1.jar;D:\jdev1013\j2ee\home\lib\activation.jar;D:\jdev1013\j2ee\home\lib\mail.jar;D:\jdev1013\j2ee\home\lib\http_client.jar;D:\jdev1013\webservices\lib\jaxrpc-api.jar;D:\jdev1013\webservices\lib\wsclient.jar;D:\jdev1013\webservices\lib\wsserver.jar;D:\jdev1013\webservices\lib\wssecurity.jar;D:\jdev1013\webservices\lib\wsdl.jar;D:\jdev1013\webservices\lib\orasaaj.jar;D:\jdev1013\webservices\lib\orawsdl.jar;D:\jdev1013\webservices\lib\orawsrm.jar;D:\jdev1013\webservices\lib\jaxr_api.jar;D:\jdev1013\webservices\lib\orajaxr.jar;D:\jdev1013\webservices\lib\relaxngDatatype.jar;D:\jdev1013\webservices\lib\jaxb-impl.jar;D:\jdev1013\webservices\lib\jaxb-libs.jar;D:\jdev1013\webservices\lib\xsdlib.jar;D:\jdev1013\webservices\lib\mdds.jar;D:\jdev1013\jlib\jaxen.jar;D:\jdev1013\jlib\oraclepki.jar;D:\jdev1013\jlib\ojpse.jar;D:\jdev1013\jlib\osdt_core.jar;D:\jdev1013\jlib\osdt_cert.jar;D:\jdev1013\jlib\osdt_xmlsec.jar;D:\jdev1013\jlib\osdt_wss.jar;D:\jdev1013\jlib\osdt_saml.jar;D:\jdev1013\jlib\repository.jar;D:\jdev1013\jlib\ojmisc.jar;D:\jdev1013\j2ee\home\jazncore.jar;D:\jdev1013\j2ee\home\oc4jclient.jar;D:\jdev1013\rdbms\jlib\xdb.jar;D:\jdev1013\diagnostics\lib\ojdl2.jar;D:\jdev1013\lib\xsu12.jar;D:\jdev1013\lib\xml.jar;D:\jdev1013\j2ee\home\lib\ejb.jar;D:\jdev1013\j2ee\home\lib\jms.jar;D:\jdev1013\j2ee\home\lib\jta.jar;D:\jdev1013\j2ee\home\lib\servlet.jar;D:\jdev1013\jakarta-taglibs\commons-logging-1.0.3\commons-logging-api.jar;D:\jdev1013\jakarta-taglibs\commons-logging-1.0.3\commons-logging.jar;D:\jdev1013\j2ee\home\lib\ojsp.jar;D:\jdev1013\j2ee\home\jsp\lib\taglib\ojsputil.jar;D:\jdev1013\j2ee\home\oc4j.jar;D:\jdev1013\j2ee\home\lib\oc4j-internal.jar;D:\jdev1013\jdev\lib\ojc.jar genc2dv1.TestWebServiceSoapHttpPortClient
    calling http://rchellam-PC1:8888/Genesis-Test-context-root/TestWebServiceSoapHttpPort
    java.rmi.RemoteException: Error parsing envelope: (1, 1) Start of root element expected.; nested exception is:
         javax.xml.soap.SOAPException: Error parsing envelope: (1, 1) Start of root element expected.
         at test.proxy.runtime.TestWebServiceSoapHttp_Stub.getAttributes(TestWebServiceSoapHttp_Stub.java:157)
         at genc2dv1.TestWebServiceSoapHttpPortClient.getAttributes(TestWebServiceSoapHttpPortClient.java:46)
         at genc2dv1.TestWebServiceSoapHttpPortClient.main(TestWebServiceSoapHttpPortClient.java:29)
    Caused by: javax.xml.soap.SOAPException: Error parsing envelope: (1, 1) Start of root element expected.
         at oracle.j2ee.ws.saaj.soap.soap11.SOAPImplementation11.createEnvelope(SOAPImplementation11.java:104)
         at oracle.j2ee.ws.saaj.soap.SOAPPartImpl.getEnvelope(SOAPPartImpl.java:76)
         at oracle.j2ee.ws.saaj.soap.MessageImpl.getSOAPBody(MessageImpl.java:713)
         at oracle.j2ee.ws.client.StreamingSender._preHandlingHook(StreamingSender.java:673)
         at oracle.j2ee.ws.client.StubBase._preHandlingHook(StubBase.java:664)
         at oracle.j2ee.ws.client.StreamingSender._sendImpl(StreamingSender.java:201)
         at oracle.j2ee.ws.client.StreamingSender._send(StreamingSender.java:111)
         at test.proxy.runtime.TestWebServiceSoapHttp_Stub.getAttributes(TestWebServiceSoapHttp_Stub.java:134)
         ... 2 more
    Caused by: oracle.xml.parser.v2.XMLParseException: Start of root element expected.
         at oracle.xml.parser.v2.XMLError.flushErrors1(XMLError.java:320)
         at oracle.xml.parser.v2.NonValidatingParser.parseRootElement(NonValidatingParser.java:333)
         at oracle.xml.parser.v2.NonValidatingParser.parseDocument(NonValidatingParser.java:295)
         at oracle.xml.parser.v2.XMLParser.parse(XMLParser.java:201)
         at oracle.j2ee.ws.saaj.soap.soap11.SOAPImplementation11.createEnvelope(SOAPImplementation11.java:78)
         ... 9 more
    Process exited with exit code 0.
    RPC Literal error -
    D:\jdev1013\jdk\bin\javaw.exe -ojvm -classpath H:\jdevhome\jdev\mywork\Genesis\Test\classes;D:\jdev1013\sqlj\lib\runtime12.jar;D:\jdev1013\jdbc\lib\ojdbc14dms.jar;D:\jdev1013\jdbc\lib\orai18n.jar;D:\jdev1013\jdbc\lib\ocrs12.jar;D:\jdev1013\diagnostics\lib\ojdl.jar;D:\jdev1013\lib\dms.jar;D:\jdev1013\jdev\lib\jdev-rt.jar;D:\jdev1013\webservices\lib\soap.jar;D:\jdev1013\webservices\lib\saaj-api.jar;D:\jdev1013\lib\xmlparserv2.jar;D:\jdev1013\jlib\javax-ssl-1_1.jar;D:\jdev1013\jlib\jssl-1_1.jar;D:\jdev1013\j2ee\home\lib\activation.jar;D:\jdev1013\j2ee\home\lib\mail.jar;D:\jdev1013\j2ee\home\lib\http_client.jar;D:\jdev1013\webservices\lib\jaxrpc-api.jar;D:\jdev1013\webservices\lib\wsclient.jar;D:\jdev1013\webservices\lib\wsserver.jar;D:\jdev1013\webservices\lib\wssecurity.jar;D:\jdev1013\webservices\lib\wsdl.jar;D:\jdev1013\webservices\lib\orasaaj.jar;D:\jdev1013\webservices\lib\orawsdl.jar;D:\jdev1013\webservices\lib\orawsrm.jar;D:\jdev1013\webservices\lib\jaxr_api.jar;D:\jdev1013\webservices\lib\orajaxr.jar;D:\jdev1013\webservices\lib\relaxngDatatype.jar;D:\jdev1013\webservices\lib\jaxb-impl.jar;D:\jdev1013\webservices\lib\jaxb-libs.jar;D:\jdev1013\webservices\lib\xsdlib.jar;D:\jdev1013\webservices\lib\mdds.jar;D:\jdev1013\jlib\jaxen.jar;D:\jdev1013\jlib\oraclepki.jar;D:\jdev1013\jlib\ojpse.jar;D:\jdev1013\jlib\osdt_core.jar;D:\jdev1013\jlib\osdt_cert.jar;D:\jdev1013\jlib\osdt_xmlsec.jar;D:\jdev1013\jlib\osdt_wss.jar;D:\jdev1013\jlib\osdt_saml.jar;D:\jdev1013\jlib\repository.jar;D:\jdev1013\jlib\ojmisc.jar;D:\jdev1013\j2ee\home\jazncore.jar;D:\jdev1013\j2ee\home\oc4jclient.jar;D:\jdev1013\rdbms\jlib\xdb.jar;D:\jdev1013\diagnostics\lib\ojdl2.jar;D:\jdev1013\lib\xsu12.jar;D:\jdev1013\lib\xml.jar;D:\jdev1013\j2ee\home\lib\ejb.jar;D:\jdev1013\j2ee\home\lib\jms.jar;D:\jdev1013\j2ee\home\lib\jta.jar;D:\jdev1013\j2ee\home\lib\servlet.jar;D:\jdev1013\jakarta-taglibs\commons-logging-1.0.3\commons-logging-api.jar;D:\jdev1013\jakarta-taglibs\commons-logging-1.0.3\commons-logging.jar;D:\jdev1013\j2ee\home\lib\ojsp.jar;D:\jdev1013\j2ee\home\jsp\lib\taglib\ojsputil.jar;D:\jdev1013\j2ee\home\oc4j.jar;D:\jdev1013\j2ee\home\lib\oc4j-internal.jar;D:\jdev1013\jdev\lib\ojc.jar genc2dv1.TestWebService2SoapHttpPortClient
    calling http://rchellam-PC1:8888/Genesis-Test-context-root/TestWebService2SoapHttpPort
    unexpected null value for literal data
         at oracle.j2ee.ws.common.util.exception.JAXRPCExceptionBase.<init>(JAXRPCExceptionBase.java:52)
         at oracle.j2ee.ws.common.encoding.SerializationException.<init>(SerializationException.java:26)
         at oracle.j2ee.ws.common.encoding.literal.LiteralObjectSerializerBase.internalSerialize(LiteralObjectSerializerBase.java:191)
         at oracle.j2ee.ws.common.encoding.literal.LiteralObjectSerializerBase.serialize(LiteralObjectSerializerBase.java:137)
         at test.proxy.runtime.TestWebService2SoapHttp_getAttributes_ReqS_LiteralSerializer.doSerialize(TestWebService2SoapHttp_getAttributes_ReqS_LiteralSerializer.java:154)
         at oracle.j2ee.ws.common.encoding.literal.LiteralObjectSerializerBase.internalSerialize(LiteralObjectSerializerBase.java:199)
         at oracle.j2ee.ws.common.encoding.literal.LiteralObjectSerializerBase.serialize(LiteralObjectSerializerBase.java:137)
         at oracle.j2ee.ws.client.StreamingSender._writeRequest(StreamingSender.java:625)
         at oracle.j2ee.ws.client.StreamingSender._sendImpl(StreamingSender.java:137)
         at oracle.j2ee.ws.client.StreamingSender._send(StreamingSender.java:111)
         at test.proxy.runtime.TestWebService2SoapHttp_Stub.getAttributes(TestWebService2SoapHttp_Stub.java:89)
         at genc2dv1.TestWebService2SoapHttpPortClient.getAttributes(TestWebService2SoapHttpPortClient.java:57)
         at genc2dv1.TestWebService2SoapHttpPortClient.main(TestWebService2SoapHttpPortClient.java:32)
    Process exited with exit code 0.
    Now all the classes are generated by JDeveloper automatically from the plsql API. So I am not sure why the errors occur and how to fix these.
    Also, these errors are occurring on plsql APIs that have input or output parameters of plsql record type or pslql table of record type. These errors don't occur if the api is simple with scalar input or output parameters only.
    I would appreciate any help on how to resolve these errors.
    Thanks,
    Raji

    Hi,
    I'm wondering if the problem is actually that the client is failing to connect to the server correctly. Can I suggest that you switch on the HTTP Analyzer and see what comes back there.
    Is it possible it is a proxy problem? If you are working locally then I first suggest that you ensure that the Web Browser Proxy is off (see Tools -> Preferences -> Web Browser Proxy) - and that there are no exceptions listed (either with the proxy on or off) before you start the HTTP Analyzer.
    As to Doc/Wrapped or RPC. see this blog entry for a little more explanation:
    http://susanduncan.blogspot.com/2006/05/rpc-document-bare-wrapped-literal-get.html
    regards
    Susan

  • Programatically calling Web Service DataControl from App Module

    Hey,
    I've been following the 4GL ADF tutorial recently but have a question regarding initiating a web service call instead of using an entity object. The tutorial I am using is located at:
    http://www.oracle.com/technology/products/adf/learnadf.html
    On Page 102 - Adding Custom Methods to the Application Module there is a little piece of code to transfer some data from a transient view object into an entity object. The code is
    public void createNewServiceRequestFromGlobals() {
    ServiceRequestImpl sr =
    (ServiceRequestImpl)getDBTransaction().createEntityInstance(ServiceReques
    tImpl.getDefinitionObject(),null);
    Row globalsRow = getGlobals().first();
    sr.setProblemDescription((String)globalsRow.getAttribute("ProblemDescript
    ion"));
    sr.setProdId((Number)globalsRow.getAttribute("ProductId"));
    getDBTransaction().commit();
    What I would really like to be able to do is use a web service datacontrol instead of the entity object. Can anyone point me in the right direction?
    Thanks,
    Mark

    I have the same problem
    1. I have a data control what is a web service client to URL https:
    2. JDev 11g build a model
    3. I need to call this data control from java class
    4. My java class simply must call a method of the web service, this method I see in the DAta Control, with the parameter and just return the String,
    5. this is not a Web Application, is swing, I not have a Context
    method in WS
    public String ConsultaPlaca(String arg1);
    How I can implement this?
    Just in Java Class, not in page JSP. the java class is a library of other Java class, I need to build a file .jar

  • Calling Web Service from PL/SQL in 9.2.0.4

    We're having some problems getting the "Calling Web Services Sample from PL/SQL" sample working with our 9.2.0.4 database. After downloading the sample from http://www.oracle.com/technology/tech/webservices/htdocs/samples/dbwebservice/DBWebServices_PLSQL.html, we try to run the sample but get the following error stack:
    ORA-31011: XML parsing failed
    ORA-19202: Error occurred in XML processing
    LPX-00243: element attribute value must be enclosed in quotes
    Error at line 20
    ORA-06512: at "SYS.XMLTYPE", line 0
    ORA-06512: at "TODDH.DEMO_SOAP", line 81
    ORA-06512: at "TODDH.TIME_SERVICE", line 15
    ORA-06512: at line 2
    Has anyone encountered a similar problem? Any help is much appreciated.
    Todd.

    the message looks very much like the one posted at http://asktom.oracle.com/pls/ask/f?p=4950:8:5812357525663697256::NO::F4950_P8_DISPLAYID,F4950_P8_CRITERIA:16568950771220
    b.t.w. i don't think that any packages are missing. it seems that the XML is invalid. Did you use dbms_output commands to show the generated XML?

  • Web Service (SOAP) From Oracle Forms

    From the exaples of calling web services (soap) from pl/sql, it seems very poor and troublesome. I've seen a few articles with good points about why not to do this from pl/sql. So, I was hoping someone in the forums could share their opinions and approaches to using web services from forms based applications. I would ideally like to hear reasons people chose not to use pl/sql.

    There are some examples of calling web services from forms on the Forms OTN page - works fine although I would encourage the use of the new JVM pooling features as this will aid scalability and performance.
    Regards
    Grant Ronald
    Forms Product Management

  • Error calling web service from Adobe form

    Hi Experts,
    While calling web service form my adobe form, i was getting an error as below saying "Error attempting to read from the file" followed by the URL of my web service.
    To create the above scenario i followed the following steps:
    1. Create a Function module and create a web service from that function module.
    2. Through SOAMANAGER, download the WSDL file for the generated web service.
    3. Create an Adobe form with an empty Interface and create a new Data Connection on the form using the downloaded WSDL.
    4. Generate this adobe form using an ABAP report.
    Kindly extend help on this to figure out if I'm missing something!!!

    Well questions related to Web Services have been answered here in past, please Search on SCN for links to it.

  • Is it possible to call web service from ABAP SAP 4.6 c..If yes how

    Hi Friends,
    Is it possible to call web service from ABAP-SAP 4.6 c..If yes Could you please let me know how.
    Thanks in Advance.
    Murali Krishna K
    Edited by: Murali Krishna Kakarla on Jan 26, 2008 7:09 PM
    Edited by: Murali Krishna Kakarla on Jan 26, 2008 7:11 PM

    Olivier CHRETIEN wrote:>
    > Hi Terry,
    >
    > So these function modules must use the SAPHTTPA RFC destination which uses the exe saphttp.exe ?
    >
    > How much abap code lines do you have for a web service call ?
    > Do you have to code the call specifically for each different web service ?
    > Are you able to use the WSDL ?
    >
    > Nice job if you have coded your own private SOAP runtime !
    >
    > But I don't think this is an easy solution for everybody...
    >
    > Regards,
    >
    > Olivier
    Yes, SAPHTTPA (runs on application server) and/or SAPHTTP (runs on front-end pc), one of which, is required for HTTP communication.  So far, nothing too elaborate as far as SOAP goes, but the logic is simplistic.  Here's some sample code:
      DEST = 'SAPHTTPA'.
      TRANSLATE HOST TO LOWER CASE.
      MYURL = 'wssrvTest/Service.asmx/GetByOrderItem'.
      CONCATENATE HOST MYURL INTO MYURL.
      REQUEST_HEADERS-DATA = 
                  'Content-type: application/x-www-form-urlencoded'.
      APPEND REQUEST_HEADERS.
      CLEAR REQUEST_HEADERS.
    *........Convert Order Number to External Format........................
      CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
           EXPORTING
                INPUT  = ORDER
           IMPORTING
                OUTPUT = ORDER.
    *........Convert Item Number to External Format.........................
      CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
           EXPORTING
                INPUT  = ITEM
           IMPORTING
                OUTPUT = ITEM.
    *........Convert Material Number to External Format.....................
      CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
           EXPORTING
                INPUT  = MATERIAL
           IMPORTING
                OUTPUT = MATERIAL.
      CONCATENATE 'sOrder=' ORDER
                   INTO REQUEST_BODY-DATA.
      APPEND REQUEST_BODY.
      CLEAR REQUEST_BODY.
      CONCATENATE '&sItem=' ITEM
                   INTO REQUEST_BODY-DATA.
      APPEND REQUEST_BODY.
      CLEAR REQUEST_BODY.
      CONCATENATE '&sMaterial=' MATERIAL
                  INTO REQUEST_BODY-DATA.
      APPEND REQUEST_BODY.
      CLEAR REQUEST_BODY.
      CALL FUNCTION 'HTTP_POST'
           EXPORTING
                ABSOLUTE_URI          = MYURL
                RFC_DESTINATION       = DEST
                BLANKSTOCRLF          = 'X'
           TABLES
                RESPONSE_ENTITY_BODY  = RESPONSE_BODY
                REQUEST_ENTITY_BODY   = REQUEST_BODY
                RESPONSE_HEADERS      = RESPONSE_HEADERS
                REQUEST_HEADERS       = REQUEST_HEADERS
           EXCEPTIONS
                CONNECT_FAILED        = 1
                TIMEOUT               = 2
                INTERNAL_ERROR        = 3
                TCPIP_ERROR           = 4
                DATA_ERROR            = 5
                SYSTEM_FAILURE        = 6
                COMMUNICATION_FAILURE = 7
                OTHERS                = 8.
      CHECK SY-SUBRC = 0.  "more appropriate msg goes here
      LOOP AT RESPONSE_BODY.
        IF RESPONSE_BODY+0(7) <> '<string' AND
           RESPONSE_BODY+0(8) <> '</string' AND
           RESPONSE_BODY+0(5) <> '<?xml'.
          SPLIT RESPONSE_BODY-DATA AT '=' INTO FIELD_NAME FIELD_VALUE.
          TRANSLATE FIELD_NAME TO UPPER CASE.
          CASE FIELD_NAME.
            WHEN 'HEIGHT'.
              HEIGHT = FIELD_VALUE.
            WHEN 'WIDTH'.
              WIDTH = FIELD_VALUE.
            WHEN 'LENGTH'.
              LENGTH = FIELD_VALUE.
            WHEN 'WEIGHT'.
              WEIGHT = FIELD_VALUE.
            WHEN 'QTY'.
              QTY = FIELD_VALUE.
          ENDCASE.
        ENDIF.
      ENDLOOP.
    Hope this helps...
    Terry
    Edited by: Terry West on Feb 4, 2008 3:08 PM

  • Security issues with calling web services from within Oracle?

    I'd like to use a trigger to initiate pushing data to a web service, so I thought we should call the web service from PL/SQL in a DBMS job, or perhaps create a .NET stored proc to call the service. Our DB Lead is concerned about security, since the standard model is for clients to call the database, and not for the database to function as a client.
    Does this pose any security risk? Can you refer me to any best practices or articles on this?
    Thanks in advance.
    Edited by: Kit.net on Nov 9, 2010 11:28 AM

    First, a trigger is there to for a single sole purpose - guaranteeing the integrity of the data and the transaction. It is not there to interact with external services and processes (like mail, web and other services). Doing that exposes the transaction to those other processes/services. The transaction can now fail. not because of a business rule validation, but because of a network error when the trigger accesses an external service. How on earth can a business transaction fail when the transaction is valid, but a the transaction's trigger hit an external access error!?
    And what happens do that event you have fired off in the trigger, when the transaction is rolled back? How do you undo that event you have created in the trigger that was based on uncommitted data?
    So using a trigger like this is simply stupid (and yes, I have seen it too often in practice with horrible results to sugarcoat such an idiotic approach).
    As for calling a web service from the database, using the database as the client in such a case. This is not a security risk. This is not unusual. In fact, it is very common in my experience. We have a lot of databases, ranging from SE to EE and several RAC clusters. All of them function as a client at some stage during processing. Some use a db link - and as a client fire off a SQL via that db link to a database server to obtain data. Some use ftp and act as a ftp clients, transferring processed data (XML format) to a server. Some call web services to extract data from 3rd party systems to reconcile the differences between local data sets and 3rd party data sets..
    This is common between server and server. I do not see anything unusual in the database server using another server (and acting as a client when it does). Security between servers should not be a major problem (in fact, it can easily be done in a very robust way using trusted and encrypted communication).
    The problem occurs when a client connects to the server and client and server roles are swapped at some stage (like the server "writing" a file directly to the client's filesystem). This very seldom makes any sense. And this is where authentication and security become an issue.

  • How do i call web services from SAP ABAP

    Hello,
    Ian working with .net team. they are using sap .net Connector to connect SAP. But my job is In SAP side when Purchase Requisition is created, I have to call web services from ABAP and i have to pass the Purchase Requisition number to web service(.net Program). Please help me how to call web services from ABAP and how to pass value. Any one help me with example.
    Thanks
    RaviKumar

    Hi Ravi,
    If you can call EJB from ABAP and from EJB call Web service which you want to call. I am giving code to write in EJB business method processFunction.
    public void processFunction(Function function) {
       IRepository repository;
       repository = new Repository("TestRepository");
       JCO.MetaData fmeta = new JCO.MetaData("ZTEST_EJB");
       fmeta.addInfo("REQUTEXT", JCO.TYPE_CHAR, 255,   0,  0,  
       JCO.IMPORT_PARAMETER, null);
       fmeta.addInfo("ECHOTEXT", JCO.TYPE_CHAR, 255,   0,  0,
       JCO.EXPORT_PARAMETER, null);
       fmeta.addInfo("RESPTEXT", JCO.TYPE_CHAR, 255,   0,  0,
       JCO.EXPORT_PARAMETER, null);
       repository.addFunctionInterfaceToCache(fmeta);
       JCO.ParameterList input  =
       function.getImportParameterList();
       JCO.ParameterList output =
       function.getExportParameterList();          
       JCO.ParameterList tables =
       function.getTableParameterList();
      if (function.getName().equals("ZTEST_EJB")) {
                        output.setValue(input.getCharArray("REQUTEXT"),"ECHOTEXT");
    output.setValue("This is a response " + table.getString("E_NAME") +" " + output.getName(1), "RESPTEXT");
      else if (function.getName().equals("STFC_STRUCTURE")) {
      JCO.Structure sin  = input.getStructure("IMPORTSTRUCT");
      JCO.Structure sout = (JCO.Structure)sin.clone();
      try {
          System.out.println(sin);
       catch (Exception ex) {
           System.out.println(ex);
                        output.setValue(sout,"ECHOSTRUCT");
    output.setValue("This is a response from Example5.java","RESPTEXT");
    }//if
    Here REQUTEXT, ECHOTEXT are import parameter and RESPTEXT is the Export parameter of Function module ZTEST_EJB in SAP.
    Here from this bisuness method you can call web service which you want and give back the result of webservice to ABAP F.M.
    Regards,
    Bhavik

  • How to call web services from oracle database 10g

    Hi all ,
    How can i call web services from oracle database 10g ?
    thanks ...

    abdou123 wrote:
    but how can i get complex result
    for example
    i pass input parameter like National Id Number
    and get the person details ( name , age , date of birth , ............ ) .Basic approach to web services using UTL_HTTP explained in {message:id=10448611}.
    An example of using a pipeline table function as a data transformation process (turning web data into rows and columns) in {message:id=10158148}.

  • Calling web service from oracle forms 10g

    Problem Description:
    I'm following the steps as per the doc:
    http://www.oracle.com/technology/products/forms/htdocs/10gr2/howto/webservicefromforms/ws_10_1_3_from_forms.html
    to create a java stub to call external web service and then use java importer in oracle forms to call this web service from oracle forms.
    WSDL for external web service used is http://gend:83/DesignService.svc?wsdl
    The service was developed by us.
    Calling the web service using JDeveloper works fine but when I complie in Oracle Forms it returns wrong number of types of arguments in call SENDHELLO.
    The code from oracle form to call web service is as below:
    DECLARE
    jo ora_java.jobject;
    xo ora_java.jobject;
    rv varchar2(2000);
    ex ora_java.jobject;
    str varchar2(100);
    BEGIN
    jo := GendServiceClient.new;
    rv := GendServiceClient.sendHello('Nora');
    EXCEPTION
    WHEN ORA_JAVA.JAVA_ERROR then
    message('Unable to call out to Java, ' ||ORA_JAVA.LAST_ERROR);
    WHEN ORA_JAVA.EXCEPTION_THROWN then
    ex := ORA_JAVA.LAST_EXCEPTION;
    message(Exception_.toString(ex));
    END;
    Any help/ideas on this is greatly appreciated. Thanks.
    Edited by: KE Nora Loera on Jun 1, 2012 1:24 PM

    My primary skill is PL/SQL but the only information I found on Oracle's site to call a web service from a 10g Form was creating a jar file and importing the java class. Since I don't want to ask our corporate IT to make changes on the UNIX box for the jar files I went a different route.
    I use UTL_HTTP.BEGIN_REQUEST to call a URL then load I load the data to a table as a CLOB since we have more than 4000 characters. Now I need to parse the XML and load it into a form. I have never done this so if there is a helpful site please let me know. I have looked at several sites but none do what I want.
    Thanks

  • Calling web service from oracle forms fails with ORA_JAVA.JAVA_ERROR

    Problem Description:
    I'm following the steps as per the doc:
    http://www.oracle.com/technology/products/forms/htdocs/10gr2/howto/webservicefromforms/ws_10_1_3_from_forms.html
    to create a java stub to call external web service and then use java importer in oracle forms to call this web service from oracle forms.
    WSDL for external web service used is http://www.webservicex.net/CurrencyConverter.asmx?wsdl
    Calling the web service using JDeveloper works fine but from Oracle Forms returns ORA_JAVA.JAVA_ERROR; Unable to call out to Java, Invalid object type for argument 1
    The code from oracle form to call web service is as below:
    DECLARE
    jo ora_java.jobject;
    rv ora_java.jobject;
    ex ora_java.jobject;
    outString varchar2(2000);
    BEGIN
    jo:= CurrencyConvertorStub.new;
    --This will get the exchange rate from US Dollars to UK Sterling.
    rv:= CurrencyConvertorStub.ConversionRate(jo,'CAD','USD');
    message (float_.floatValue(RV));
    EXCEPTION
    WHEN ORA_JAVA.JAVA_ERROR then
    message('Unable to call out to Java, ' ||ORA_JAVA.LAST_ERROR);
    WHEN ORA_JAVA.EXCEPTION_THROWN then
    ex := ORA_JAVA.LAST_EXCEPTION;
    outString := Exception_.toString(ex);
    message(outString);
    END;
    Any help/ideas on this is greatly appreciated. Thanks.

    Yes, it is the message line - so basically this call fails => rv:= CurrencyConvertorStub.ConversionRate(jo,'CAD','USD'); and control goes in the exception block
    WHEN ORA_JAVA.JAVA_ERROR then
    message('Unable to call out to Java, ' ||ORA_JAVA.LAST_ERROR);
    Below is the code from java stub that was generated using JDeveloper by using web services stub/skeleton and associating the WSDL
    public Double ConversionRate(String FromCurrency, String ToCurrency) throws Exception
    URL endpointURL = new URL(endpoint);
    Envelope requestEnv = new Envelope();
    Body requestBody = new Body();
    Vector requestBodyEntries = new Vector();
    String wrappingName = "ConversionRate";
    String targetNamespace = "http://www.webserviceX.NET/";
    Vector requestData = new Vector();
    requestData.add(new Object[] {"FromCurrency", FromCurrency});
    requestData.add(new Object[] {"ToCurrency", ToCurrency});
    requestBodyEntries.addElement(toElement(wrappingName, targetNamespace, requestData));
    requestBody.setBodyEntries(requestBodyEntries);
    requestEnv.setBody(requestBody);
    Message msg = new Message();
    msg.setSOAPTransport(m_httpConnection);
    msg.send(endpointURL, "http://www.webserviceX.NET/ConversionRate", requestEnv);
    Envelope responseEnv = msg.receiveEnvelope();
    Body responseBody = responseEnv.getBody();
    Vector responseData = responseBody.getBodyEntries();
    return (Double)fromElement((Element)responseData.elementAt(0), java.lang.Double.class);
    }

  • Is there a way to call web service from 2 servers??

    Hi,
    I need to know if its possible to call web service from 2 different servers without having load balancer??? I mean, if one of the server has heavy work on, then it should call web service from the other server.
    Thanks in advance.
    Best Regards.

    Hi,
    WebLogic Cluster has this feature ( Load Balancing & Failover ). If you will deploy your WebService to a WebLogic Cluster and then If you will put a Proxy in front of it like (Apache)...Then it is Possible.
    <h3><font color=maroon>What All You Need To Do ? ...... as following</font></h3>
    <b><font color=maroon>Step1).</font></b> Create a WebLogic Cluster (minimum two ManagedServers)
    http://weblogic-wonders.com/weblogic/2010/04/28/weblogic-clustering-in-remote-boxes/
    <b><font color=maroon>Step2).</font></b> Install a Proxy like Apache in frot of them like following:
    http://weblogic-wonders.com/weblogic/2010/05/13/apache-proxy-as-static-content-repository/
    Or
    http://weblogic-wonders.com/weblogic/2010/08/01/weblogic-httpclusterservlet-proxyserver/
    <b><font color=maroon>Step3).</font></b> Now Configure a FrontEnd Host for your Cluster by providing the ProxyServer Host name as the FrontEnd of your Cluster. This step is required to Generate the Dynamic WSDL with the Address of the Frontend.(Not of a perticular WebLogic Server)
    http://weblogic-wonders.com/weblogic/2010/06/21/configuring-frontend-host-and-port/
    <b><font color=maroon>Step4).</font></b> Deploy your WebService on the Cluster
    <b><font color=maroon>Step5).</font></b> Now Hit the WebService using the Proxy URL:
    Example:
    http://ProxyHostname:proxyPort/ServiceContextRoot/ServiceURI?WSDL
    Thanks
    Jay SenSharma

Maybe you are looking for

  • How to have multiple windows of same app under JSF 1.1

    I know this has been addressed in JSF 1.2, but does anyone have a good solution in JSF 1.1 concerning how to allow multiple application instances to be opened in different browser windows at the same time? I work for a large financial services compan

  • Configuring Reporting services for SCCM 2012

    Hi, I just finish create SQL reporting services ( configure Database, report manager URL) in SQL 2008 R2 for SCCM 2012. When I open the Report option in SCCM console (Monitoring --> Report), no report listed there and then I try to add in Reporting s

  • Two master machine after reconnection

    We are using the Berkeley DB 5.1.19 with the standard replication manager. We test the given sample "excxx_repquote" in a two machine configuration ( one master and one slave) with the following configuration - ACK quoroum - nsite=1 - priority =100 -

  • Font size in outgoing bbms and texts

    How can I make the font on my outgoing bbms and texts bigger? Since updating the software I'm having difficulty reading what I'm typing. I have my font set on 14 but this only works on incoming messages. I had no problems with this prior to 2 updates

  • Please Help me with Oracle Reports (10G)

    Hi , I have created a report in Oracle 10G and save it as .JSP file, while i tried to open that .jsp file through edit plus i observed that reportbuilder have generated a code for what i have done in Layout but all the code is commented, why was it h