Calling a PL/SQL web service from a procedure

Does someone can help me , I have to call a PL//SQL web service_ but it's on a https server. It uses Oracle Wallet.
I want to know the step ( and/or the code) to be able to do so
Here's what I have :
I want to call that :
http://207.253.66.69/frsq_dev/FRSQ_NIP_EXISTS?pNOM_NAISS=Bouchard&pPRENOM=Disane&pNOM_MERE=Thibault&pSEXE=F&pDATE_NAISS_YYYY=1960&pDATE_NAISS_MM=04&pDATE_NAISS_DD=24
It's suppose to return me a string.
I have the code to do it without the https part (easy!), but I want to have the way to do it https! :
vURL := 'http://207.253.66.69/frsq_dev/FRSQ_NIP_EXISTS?pNOM_NAISS=' || pNOM_NAISS || '&pPRENOM=' || pPRENOM || '&pNOM_MERE=' || pNOM_MERE || '&pSEXE=' || pSEXE || '&pDATE_NAISS_YYYY=' || pAn_naissance
|| '&pDATE_NAISS_MM=' || pMois_naissance || '&pDATE_NAISS_DD=' || pJour_naissance;
vURL := utl_url.escape(vURL);
select UTL_HTTP.REQUEST(vURL) into resultat from dual;
-- Result should have the string I want
Thanks
Jp
Edited by: Jpmill on Jul 15, 2009 9:40 AM

Oracle Link
http://www.oracle.com/technology/products/jdev/howtos/10g/WS_DBCallout/DBCalloutWS_HowTo.htm
HTH
SS

Similar Messages

  • 401 Unauthorized Error When calling a SharePoint REST web service from SharePoint 2013 Workflow

    We have our Workflow Manger installed on the same server as our SharePoint 2013 WFE development environment. When creating a SharePoint 2013 Workflow all Calls to a SharePoint 2013 REST web service results in a 401 Unauthorized error.
    As an example I created a simple workflow that should return a JSON result. The REST Url returns the results in the browser without error.
    Set Variable:webServiceUrl to https://<hostnamedsitecollection>/_vti_bin/client.svc/web/lists/getbytitle('ISR%20Approvers')/Items?$select=Title&$filter=Title%20eq%20%27General%27
    then Build{...} Dictionary (Output to Variable:requestHeaders)
    then Call [%Variable:webServiceUrl%] HTTP web service with request (ResponseContent to Variable:responseContent |ResponseHeaders to responseHeaders | ResponseStatusCode to Variable:responseCode)
    The RequestHeader is set to the requestHeaders variable though the web service call properties
    then Log Variable:responseCode to the workflow history list
    After manually running the workflow in SharePoint on a list item in the ISR Approvers list it Logs "Unauthorized" in the Workflow History Log. It does this with every SharePoint REST web service call that I have tried through the workflow.
    It doesn't have anything to do with the Workflow Manger being installed on the same machine as the SharePoint WFE does it?
    Thank You for any insight

    Hi,
    According to your post, my understanding is that you had 401 Unauthorized Error when calling a SharePoint REST web service from SharePoint 2013 Workflow.
    Please make sure you use the ‘Call HTTP Web Service’ correctly.
    You can enter the URL into the brower to check whether it is correctly.
    You need to
    create the Request header requestHeaders
    using a Dictionary:
    Accept : application/json;odata=verbose
    Content-Type : application/json;odata=verbose
    To associate the
    requestHeaders variable, select the Call action
    property, set the RequestHeaders property to
    requestHeaders.
    Please refer to the following articles:
    Working with Web Services in SharePoint 2013 Workflows using SharePoint Designer 2013
    Calling the SharePoint 2013 Rest API from a SharePoint Designer
    Workflow
    In addtion, you need to make sure you install the workflow manager correctly.
    More information:
    Install and configure workflow for SharePoint Server 2013
    Known Issues in Workflow Manager 1.0
    Troubleshooting Workflow Manager 1.0 Management and Execution
    Best Regards,
    Linda Li
    Linda Li
    TechNet Community Support

  • PL/SQL web services from Office

    I have created a basic PL/SQL web service using jdeveloper 10.1.2 and deployed it to an application server. Everything works. I would like to access it from visual studio. I was able to connect to an amazon web service from visual studio. I tried connecting to my oracle web service and got errors. I think it is having trouble finding the schema and wsdl (in http://hrconn. hrconn is also the name of my database connection in jdeveloper URL: jdbc:oracle:thin:@lisdev5db:1521:dev5db10)).
    The error message is
    "custom tool error: unable to import webservice/schema. Unable to import binding TestWebServiceBinding from namespace 'http://hrconn/TestWebService.wsdl'. Unable to import operation 'getEmp2'. The datatype 'http://hrconn/TestWebService.xsd:hrconn_EmpRec2User' is missing."
    Any suggestions?
    Thank you in advance.
    Carmen.

    Hi Carmen,
    No, Web services are not limited to a specific platform. In general, you can call a Web service hosted on any system from any other system, as long as you are carefull to keep your design within the known interoperable patterns.
    Here, you are most likely missing the hostname/port of the server on which you have deployed your PL-SQL Web service.
    The service endpoint URL should looks like http://host.domain:port/hrconn/TestWebService.wsdl (assuming that hrconn is the name of your project). The JDBC connection information is only used by the java process running on the middletier (oc4j) to access the database backend -lisdev5db in your case).
    Hope it helps,
    -Eric

  • Call bpel process as Web service from database

    Hi!
    i'm trying tocall bpel process as web service from Oracle database. When i try the same pl sql function, i can successfully call regular j2ee web service without any problem. When i instantiate process from bpel console - everything is ok .. but when i call process from plsql function, i get this error:
    ORA-20000: soapenv:Server.generalException - Missing BPEL archive file.
    The process domain cannot locate the BPEL archive for process
    &quot;AuthorizeKeyCode&quot;, revision &quot;AuthorizeKeyCode&quot;.
    If you have deployed the process please check that it is located in the
    directory &quot;/ora/bpelpm/integration/orabpel/domains/vinves/deploy&quot;.
    ; nested exception is:
    ORABPEL-05205
    Missing BPEL archive file.
    The process domain cannot locate the BPEL archive for process
    &quot;AuthorizeKeyCode&quot;, revision &quot;AuthorizeKeyCode&quot;.
    If you have deployed the process please check that it is located in the
    directory &quot;/ora/bpelpm/integration/orabpel/domains/vinves/deploy&quot;.
    i tried undeploy and deploy the process again, i tried to restart the server - still the same problem...
    anyone can help, please?
    thanks ...
    Tomas

    Hi,
    I am trying to invoke the HelloWorld BPEL process from Oracle DB using the demo_soap package downloaded from oracle.com.
    Find the PL/SQL block below:
    DECLARE
    req Demo_Soap.request;
    resp Demo_Soap.response;
         zipcode VARCHAR2(100) := 'Suresh';
    BEGIN
    req := Demo_Soap.new_request('initiate',
    'xmlns="http://xmlns.oracle.com/HelloWorld"');
    Demo_Soap.add_parameter(req, 'HelloWorldProcessRequest', 'xsd:string', zipcode);
    resp := Demo_Soap.invoke(req,
    'http://nooslux037t.gl.2wglobal.com:7777/BPELConsole/Dev/displayProcess.jsp?processId=HelloWorld',
    'http://xmlns.oracle.com/HelloWorld');
    END;
    Please help me in knowing what value i should pass for the
    1. New_request procedure
    2. Add_parameter procedure
    3. Invoke procedure.
    The HelloWorld is same as the example in the BPEL Tutorial Session 1.
    Thanks for your time.

  • Error when invoking pl/sql web service from bpel

    Hi!
    I have a simple 'Hello World' pl/sql web service. When i invoke it in asynchronous BPEL process, a local WSDL file is automatically generated for the parterlink used. The process even gets successfully deployed without any warning or error. But in the BPEL console when I create an instance, its alwaya being faulted and the audit give the following error at invoke:
    "{http://schemas.oracle.com/bpel/extension}remoteFault" has been thrown. less
    <remoteFault>
    <part name="code" >
    <code>Server.userException</code>
    </part>
    <part name="summary" >
    <summary>when invoking endpointAddress 'null', java.net.UnknownHostException: www.proxy.us.oracle.com</summary>
    </part>
    <part name="detail" >
    <detail>AxisFault faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException faultSubcode: faultString: java.net.UnknownHostException: www.proxy.us.oracle.com faultActor: faultNode: faultDetail: {http://xml.apache.org/axis/}stackTrace:java.net.UnknownHostException: www.proxy.us.oracle.com at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:153) at java.net.Socket.connect(Socket.java:452) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.collaxa.thirdparty.apache.axis.components.net.DefaultSocketFactory.create(DefaultSocketFactory.java:155) at org.collaxa.thirdparty.apache.axis.components.net.DefaultSocketFactory.create(DefaultSocketFactory.java:117) at org.collaxa.thirdparty.apache.axis.transport.http.HTTPSender.getSocket(HTTPSender.java:158) at org.collaxa.thirdparty.apache.axis.transport.http.HTTPSender.writeToSocket(HTTPSender.java:450) at org.collaxa.thirdparty.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:94) at org.collaxa.thirdparty.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32) at org.collaxa.thirdparty.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118) at org.collaxa.thirdparty.apache.axis.SimpleChain.invoke(SimpleChain.java:83) at org.collaxa.thirdparty.apache.axis.client.AxisClient.invoke(AxisClient.java:147) at org.collaxa.thirdparty.apache.axis.client.Call.invokeEngine(Call.java:2732) at org.collaxa.thirdparty.apache.axis.client.Call.invoke(Call.java:2715) at org.collaxa.thirdparty.apache.axis.client.Call.invoke(Call.java:1737) at com.collaxa.cube.ws.wsif.providers.axis.WSIFOperation_ApacheAxis.invokeAXISMessaging(WSIFOperation_ApacheAxis.java:2113) at com.collaxa.cube.ws.wsif.providers.axis.WSIFOperation_ApacheAxis.invokeRequestResponseOperation(WSIFOperation_ApacheAxis.java:1611) at com.collaxa.cube.ws.wsif.providers.axis.WSIFOperation_ApacheAxis.executeRequestResponseOperation(WSIFOperation_ApacheAxis.java:1083) at com.collaxa.cube.ws.WSIFInvocationHandler.invoke(WSIFInvocationHandler.java:452) at com.collaxa.cube.ws.WSInvocationManager.invoke2(WSInvocationManager.java:327) at com.collaxa.cube.ws.WSInvocationManager.invoke(WSInvocationManager.java:189) at com.collaxa.cube.engine.ext.wmp.BPELInvokeWMP.__invoke(BPELInvokeWMP.java:601) at com.collaxa.cube.engine.ext.wmp.BPELInvokeWMP.__executeStatements(BPELInvokeWMP.java:317) at com.collaxa.cube.engine.ext.wmp.BPELActivityWMP.perform(BPELActivityWMP.java:188) at com.collaxa.cube.engine.CubeEngine.performActivity(CubeEngine.java:3408) at com.collaxa.cube.engine.CubeEngine.handleWorkItem(CubeEngine.java:1836) at com.collaxa.cube.engine.dispatch.message.instance.PerformMessageHandler.handleLocal(PerformMessageHandler.java:75) at com.collaxa.cube.engine.dispatch.DispatchHelper.handleLocalMessage(DispatchHelper.java:166) at com.collaxa.cube.engine.dispatch.DispatchHelper.sendMemory(DispatchHelper.java:252) at com.collaxa.cube.engine.CubeEngine.endRequest(CubeEngine.java:5438) at com.collaxa.cube.engine.CubeEngine.createAndInvoke(CubeEngine.java:1217) at com.collaxa.cube.engine.delivery.DeliveryService.handleInvoke(DeliveryService.java:511) at com.collaxa.cube.engine.ejb.impl.CubeDeliveryBean.handleInvoke(CubeDeliveryBean.java:335) at ICubeDeliveryLocalBean_StatelessSessionBeanWrapper16.handleInvoke(ICubeDeliveryLocalBean_StatelessSessionBeanWrapper16.java:1796) at com.collaxa.cube.engine.dispatch.message.invoke.InvokeInstanceMessageHandler.handle(InvokeInstanceMessageHandler.java:37) at com.collaxa.cube.engine.dispatch.DispatchHelper.handleMessage(DispatchHelper.java:125) at com.collaxa.cube.engine.dispatch.BaseScheduledWorker.process(BaseScheduledWorker.java:70) at com.collaxa.cube.engine.ejb.impl.WorkerBean.onMessage(WorkerBean.java:86) at com.evermind.server.ejb.MessageDrivenBeanInvocation.run(MessageDrivenBeanInvocation.java:123) at com.evermind.server.ejb.MessageDrivenHome.onMessage(MessageDrivenHome.java:755) at com.evermind.server.ejb.MessageDrivenHome.run(MessageDrivenHome.java:928) at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186) at java.lang.Thread.run(Thread.java:534) {http://xml.apache.org/axis/}hostname:NewUser-lap </detail>
    </part>
    </remoteFault>
    Can anybody please tell what could be the problem,
    Thanking in advance,
    Deepika.

    www.proxy.us.oracle.com -> www-proxy.us.oracle.com - looks like set in the obsetenv.bat file

  • Creating PL/SQL web services from PL/SQL records

    Hello
    Jdeveloper does not allow to create web services from pl/sql packages that use PL/SQL records.to do this,we have to use the jpublisher ?without using the jpublisher,if we create a webservice then the following error is displayed in the web service xml output file.
    <faultstring>Internal Server Error (Caught exception while handling request: java.rmi.RemoteException: java.sql.SQLException: ORA-06550: line 1, column 49: PLS-00181: unsupported preprocessor directive '$WS_SP_EVEN' )</faultstring>
    </env:Fault>
    Could any one suggest me, how to solve the above issue..?
    Regards
    Malathi

    Thank you, with db adapter it was working and also
    pl/sql web-services working successfully with object types.If we want to send the web-services to the client, do we need to send the entire folder that is created in the web-services folder of the external oc4j..?
    Creating the client process:
    we are using the wsdl file that is generated in the web-services and adding to the partner link to Invoke the operations of web-services. Is there any other way to invoke the webservices?Could any one please suggest me?
    Thanking you
    Malathi

  • Creating PL/SQL web services from object types

    Hello
    Jdeveloper, pl/sql web-services working successfully with object types.If we want to send the web-services to the client, do we need to send the entire folder that is created in the web-services folder of the external oc4j..?
    Creating the client process:
    we are using the wsdl file that is generated in the web-services and adding to the partner link to Invoke the operations of web-services. Is there any other way to invoke the webservices?Could any one please suggest me?
    Thanking you
    Malathi

    Hello
    Accessing the pl/sql webservices from the application server:
    I have created pl/sql webservice using the nested tables. This will insert the object data into database tables.after deplying the webservice into external oc4j, when I test the webservice locally with url: http://localmachine:8888/PL_SQL_WS-Nest_Obj_Webservice-context-root/ObjWebserviceSoapHttpPort
    The above web-services working and I am able to insert into the database tables.
    Same when I want to access through the application server, I have changed the wsdl file soap address as
    <soap:address location="http://10.91.20.7:8888/PL_SQL_WS-Nest_Obj_Webservice-context-root/ObjWebserviceSoapHttpPort"/>
    When I access this url, I am able to give the input data
    http://10.91.20.7:8888/PL_SQL_WS-Nest_Obj_Webservice-context-root/ObjWebserviceSoapHttpPort
    but the out from the web-service is:
    <env:Envelope
    xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
    <env:Header/>
    <env:Body>
    <env:Fault
    xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
    <faultcode>env:Server</faultcode>
    <faultstring>Error creating target: DBConnImpMftest.ObjWebserviceUser</faultstring>
    <faultactor/>
    </env:Fault>
    </env:Body>
    </env:Envelope>
    Err from the OC4j log:<PAYLOAD>
    <MSG_TEXT>An error occurred for port: {http://dbconnimpmftest/Nested_Webserv.wsdl}Nested_WebservSoapHttpPort: javax.xml.rpc.JAXRPCException: Error creating target: dbconnimpmftest.Nested_WebservUser.</MSG_TEXT>
    </PAYLOAD>
    Could any one help me to solve the above issue?
    Kind regards
    Malathi

  • Calling TaskQueryService as a Web Service from c#

    I am currently trying to call the Task Query Service as a web service from a c# application.
    Within Visual Studio, I have set up the web reference QueryTasks to the WSDL, and have the following piece of code:
    QueryTasks.task[] GetTasks()
    QueryTasks.task[] tasks = null;
    try
    // Authenticate
    QueryTasks.credentialType credential = new QueryTasks.credentialType();
    credential.login = m_username;
    credential.password = m_password;
    credential.identityContext = m_context;
    QueryTasks.TaskQueryService tqs = new QueryTasks.TaskQueryService();
    QueryTasks.workflowContextType taskContext = tqs.authenticate(credential);
    // create predicate for all tasks assigned to this authenticated user
    QueryTasks.taskPredicateQueryType taskPredicateQuery = new QueryTasks.taskPredicateQueryType();
    QueryTasks.taskPredicateType predicate = new QueryTasks.taskPredicateType();
    predicate.assignmentFilter = QueryTasks.assignmentFilterEnum.My;
    predicate.assignmentFilterSpecified = true;
    QueryTasks.predicateClauseType clause = new QueryTasks.predicateClauseType();
    clause.column = "STATE";
    clause.@operator = QueryTasks.predicateOperationEnum.EQ;
    clause.Item = "ASSIGNED";
    QueryTasks.predicateClauseType[] clauses = new QueryTasks.predicateClauseType[1];
    clauses[0] = clause;
    predicate.clause = clauses;
    taskPredicateQuery.predicate = predicate;
    // Specify the fields we will want populated for subsequent retrieval
    taskPredicateQuery.displayColumnList = new string[] { "TITLE", "STATE", "EXPIRATIONDATE", "TASKNUMBER" };
    taskPredicateQuery.optionalInfoList = new QueryTasks.taskOptionalInfoEnum[] { QueryTasks.taskOptionalInfoEnum.Actions,
    QueryTasks.taskOptionalInfoEnum.Attachments,
    QueryTasks.taskOptionalInfoEnum.Comments,
    QueryTasks.taskOptionalInfoEnum.CustomActions,
    QueryTasks.taskOptionalInfoEnum.GroupActions};
    // Build the request
    QueryTasks.taskListRequestType taskListRequest = new QueryTasks.taskListRequestType();
    taskListRequest.workflowContext = taskContext;
    taskListRequest.taskPredicateQuery = taskPredicateQuery;
    // query for the tasks
    tasks = tqs.queryTasks(taskListRequest);
    catch (Exception e)
    throw e;
    return tasks;
    When this code is run, it returns the correct number of records for the query in the tasks array, but each individual task record in the array contains nothing but null's in all it's fields.
    I have found a number of references when calling this web service in Java regarding switching on serialization for the Predicate object, however as far as I am aware this is already switched on in the automatically generated code within Visual Studio (unless anyone knows different?)
    Does anybody have any other ideas / suggestions as to where to go next?
    Thanks
    Dave

    Hi Dave,
    I am attempting a similar operation from C# and having exactly the same problems. Apparently the xml parser on the bpel engine is really odd. I found someone experiencing a similar issue in this thread Re: TaskQueryService fault ORA-30010
    Did you manage to get around this problem at all?
    Cheers
    Steven

  • Error while calling MII transaction as web service from ABAP

    Hello Experts,
    I want to call a MII transaction from ABAP program, as a web service.
    Following is output of http://<<server>>:50000/XMII/SOAPRunner/TAG_TRX  (TAG_TRX is name of my transaction).
      <?xml version="1.0" encoding="UTF-8" ?>
    - <definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://www.sap.com/xMII" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://www.sap.com/xMII">
    - <!--  Types
      -->
    - <types>
    - <s:schema elementFormDefault="qualified" targetNamespace="http://www.sap.com/xMII">
    - <s:complexType name="InputParams">
    - <s:sequence id="InputSequence">
      <s:element maxOccurs="1" minOccurs="0" name="WEIGHT" type="s:string" />
      <s:element maxOccurs="1" minOccurs="0" name="BATCHID" type="s:string" />
      </s:sequence>
      </s:complexType>
    - <s:element name="XacuteRequest">
    - <s:complexType>
    - <s:sequence>
      <s:element maxOccurs="1" minOccurs="0" name="LoginName" type="s:string" />
      <s:element maxOccurs="1" minOccurs="0" name="LoginPassword" type="s:string" />
      <s:element maxOccurs="1" minOccurs="0" name="InputParams" type="s0:InputParams" />
      </s:sequence>
      </s:complexType>
      </s:element>
    - <s:complexType name="Rowset">
    - <s:sequence>
      <s:element maxOccurs="unbounded" minOccurs="0" name="Row" type="s0:Row" />
      </s:sequence>
      <s:attribute name="Message" type="s:string" />
      </s:complexType>
    - <s:complexType name="Row">
      <s:sequence id="RowSequence" />
      </s:complexType>
    - <s:element name="XacuteResponse">
    - <s:complexType>
    - <s:sequence>
      <s:element maxOccurs="1" minOccurs="0" name="Rowset" type="s0:Rowset" />
      </s:sequence>
      </s:complexType>
      </s:element>
      </s:schema>
      </types>
    - <!--  Messages
      -->
    - <message name="XacuteSoapIn">
      <part element="s0:XacuteRequest" name="parameters" />
      </message>
    - <message name="XacuteSoapOut">
      <part element="s0:XacuteResponse" name="parameters" />
      </message>
    - <!--  Ports
      -->
    - <portType name="XacuteWSSoap">
    - <operation name="Xacute">
      <input message="s0:XacuteSoapIn" />
      <output message="s0:XacuteSoapOut" />
      </operation>
      </portType>
    - <!--  Bindings
      -->
    - <binding name="XacuteWSSoap" type="s0:XacuteWSSoap">
      <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
    - <operation name="Xacute">
      <soap:operation soapAction="http://www.sap.com/xMII" style="document" />
    - <input>
      <soap:body use="literal" />
      </input>
    - <output>
      <soap:body use="literal" />
      </output>
      </operation>
      </binding>
    - <!--  Service mapping
      -->
    - <service name="XacuteWS">
    - <port binding="s0:XacuteWSSoap" name="XacuteWSSoap">
      <soap:address location="http://<<server>>:50000/XMII/SOAPRunner/TAG_TRX" />
      </port>
      </service>
      </definitions>
    Now, when I am using http://<<server>>:50000/XMII/SOAPRunner/TAG_TRX to create a Enterprise Service in SAP (i.e. SE80 transaction-> Create Enterprise Service-> Service Consumer-> URL/HTTP Destination-> URL ... I am getting following error.
    Incorrect value: Entity "<<document>>"(5 /93 ). unexpected symbol: '<'     
    But, whenever I am using the same URL in MII BLS, it does not give any error. It correctly shows all input and output parameters.
    Please help me to resolve this issue.
    Regards
    Neeta.

    Now, I am able to create the Web Service in SAP and it is now showing the respective class, attribute and methods to execute this web service (web service to call MII transaction).
    But when I am calling it from ABAP (a simple Web Dynpro for ABAP method), it is showing me the following error:
    Error (id=GET_BUSINESS_SYSTEM_ERROR): An error occurred when determining the business system (LD_ERROR)
    Thought this error is coming from ABAP program, but I am sure that this is related to some configuration at SAP level. (Let me inform you that there are two different servers for SAP Web Dynpro ABAP and SAP MII.
    Please help.
    Thanks in advance.

  • Calling Oracle BPM Process Web Service from Oracle Service Bus

    Hi
    I am using Oracle Service Bus 10gR3.
    I have developed simple BPM process through Oracle BPM studio 10.3.1.0.I then followed steps below
    1. Create a Process.
    2. Expose the Process as a Web Service.
    3. Run the project. This starts the Process Execution Engine.
    4. Create an ALSB External Resource of type Management Host.
    5. Create a second ALSB External Resource for registration.
    6. Register the End Point
    Until this point everything is fine. Then I created one project through Oracle Service Bus console. Under that created WSDL, Proxy Service and Business Service Folders. I am using the web service created through BPM studio as teh Business Service in SB . I then created one proxy service to route the request to the Business Service.
    Finally when I try to test the Proxy Service by launching test console, I get the
    <con:fault xmlns:con="http://www.bea.com/wli/sb/context">
    <con:errorCode>BEA-380001</con:errorCode>
    <con:reason>INTERNAL SERVER ERROR</con:reason>
    <con:location>
    <con:node>RouteNode1</con:node>
    <con:path>response-pipeline</con:path>
    </con:location>
    </con:fault>
    I also tried to debug through "Oracle Workshop for WebLogic Version 10.3 " . But I am not getting enough details as to why this is failing.
    Please help me . Thanks In advance.
    Thanks
    Nilay
    Edited by: user8950019 on Feb 1, 2010 4:11 AM

    Hi,
    When im calling wsdl created when BPM exposed as webservice in SOAP-ui, i first hit the startSession
    Request is:-
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:exp="http://bea.com/albpm/ExpenseManagement/ExpenseReport">
    <soapenv:Header/>
    <soapenv:Body>
    <exp:startSession>
    <password>Employee</password>
    <user>Employee</user>
    </exp:startSession>
    </soapenv:Body>
    </soapenv:Envelope>
    Response i Get is:-
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <soapenv:Body>
    <ns1:startSessionResponse xmlns:ns1="http://bea.com/albpm/ExpenseManagement/ExpenseReport">
    <return>3782hecq1s85h</return>
    </ns1:startSessionResponse>
    </soapenv:Body>
    </soapenv:Envelope
    but when i put this sessionId in main request:-
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:exp="http://bea.com/albpm/ExpenseManagement/ExpenseReport">
    <soapenv:Header/>
    <soapenv:Body>
    <exp:expenseReport>
    <sessionId>3782hecq1s85h</sessionId>
    <reportArg>
    <!--Optional:-->
    <comments>yes</comments>
    <!--Optional:-->
    <costCenter>jaa</costCenter>
    <!--Optional:-->
    <description>aa</description>
    <!--Optional:-->
    <isApproved>y</isApproved>
    <!--Zero or more repetitions:-->
    <items>
    <!--Optional:-->
    <elements>
    <!--Optional:-->
    <amount>700</amount>
    <!--Optional:-->
    <date>?</date>
    <!--Optional:-->
    <description>?</description>
    <!--Optional:-->
    <receiptChecked>?</receiptChecked>
    </elements>
    </items>
    <!--Optional:-->
    <reviewedBy>?</reviewedBy>
    <!--Optional:-->
    <submitDate>?</submitDate>
    <!--Optional:-->
    <submittedBy>?</submittedBy>
    <!--Optional:-->
    <total>?</total>
    </reportArg>
    </exp:expenseReport>
    </soapenv:Body>
    </soapenv:Envelope>
    Response coming is :-
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <soapenv:Body>
    <soapenv:Fault>
    <faultcode>soapenv:Server.userException</faultcode>
    <faultstring>fuego.lang.ComponentExecutionException: The method 'expenseReport' from class 'xobject.ExpenseReportWebServiceImpl.ExpenseReportServiceInternalAlbpmListenerImpl' could not be successfully executed.</faultstring>
    <detail>
    <ns1:stackTrace xmlns:ns1="http://xml.apache.org/axis/">fuego.lang.ComponentExecutionException: The method 'expenseReport' from class 'xobject.ExpenseReportWebServiceImpl.ExpenseReportServiceInternalAlbpmListenerImpl' could not be successfully executed.
         at fuego.lang.Invokeable.invokeImpl(Invokeable.java:244)
         at fuego.lang.Invokeable.invokeDynamic(Invokeable.java:188)
         at fuego.lang.Invokeable.invoke(Invokeable.java:160)
         at fuego.soaptype.SoapListener.invokeDynamic(SoapListener.java:104)
         at fuego.lang.Invokeable.invoke(Invokeable.java:160)
         at fuego.fengine.FEngineWebServiceExecutor$2.execute(FEngineWebServiceExecutor.java:133)
         at fuego.server.execution.DefaultEngineExecution$AtomicExecutionTA.runTransaction(DefaultEngineExecution.java:304)
         at fuego.transaction.TransactionAction.startBaseTransaction(TransactionAction.java:470)
         at fuego.transaction.TransactionAction.startTransaction(TransactionAction.java:551)
         at fuego.transaction.TransactionAction.start(TransactionAction.java:212)
         at fuego.server.execution.DefaultEngineExecution.executeImmediate(DefaultEngineExecution.java:123)
         at fuego.server.execution.EngineExecution.executeImmediate(EngineExecution.java:66)
         at fuego.fengine.FEngineWebServiceExecutor$1.run(FEngineWebServiceExecutor.java:65)
         at fuego.component.Message.process(Message.java:576)
         at fuego.component.ExecutionThread.processMessage(ExecutionThread.java:780)
         at fuego.component.ExecutionThread.processBatch(ExecutionThread.java:755)
         at fuego.component.ExecutionThread.doProcessBatch(ExecutionThread.java:142)
         at fuego.component.ExecutionThread.doProcessBatch(ExecutionThread.java:134)
         at fuego.fengine.FEngineProcessBean.processBatch(FEngineProcessBean.java:244)
         at fuego.fengine.FEngineWebServiceExecutor$WebServiceExecutorPrincipal.processBatch(FEngineWebServiceExecutor.java:168)
         at fuego.component.ExecutionThread.work(ExecutionThread.java:839)
         at fuego.component.ExecutionThread.run(ExecutionThread.java:408)
    Caused by: java.lang.RuntimeException: java.lang.NumberFormatException: For input string: "jaa"
         at xobject.ExpenseReportWebServiceImpl.ExpenseReportServiceInternalAlbpmListenerImpl.expenseReport(ExpenseReportServiceInternalAlbpmListenerImpl.xcdl:36)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at fuego.lang.JavaClass.invokeMethod(JavaClass.java:1410)
         at fuego.lang.JavaObject.invoke(JavaObject.java:227)
         at fuego.lang.Invokeable.invokeImpl(Invokeable.java:234)
         ... 21 more
    Caused by: java.lang.NumberFormatException: For input string: "jaa"
         at java.lang.NumberFormatException.forInputString(Unknown Source)
         at java.lang.Integer.parseInt(Unknown Source)
         at java.lang.Integer.valueOf(Unknown Source)
         at fuego.util.Conversion.tojava_lang_Integer(Conversion.java:934)
         at fuego.xobject.runtime.ConversionUtilities.fromString(ConversionUtilities.java:56)
         at fuegoblock.xml.XmlElementDeserializer.deserializeElement(XmlElementDeserializer.java:175)
         at fuegoblock.xml.XmlElementDeserializer.deserialize(XmlElementDeserializer.java:81)
         at fuegoblock.xml.DynamicXml.createObjectFrom(DynamicXml.java:160)
         at fuegoblock.xml.DynamicXml.createObjectFrom(DynamicXml.java:119)
         at xobject.ExpenseReportWebServiceImpl.ExpenseReportServiceInternalAlbpmListenerImpl.expenseReport(ExpenseReportServiceInternalAlbpmListenerImpl.xcdl:17)
         ... 28 more</ns1:stackTrace>
    <ns2:hostname xmlns:ns2="http://xml.apache.org/axis/">D-113014550</ns2:hostname>
    </detail>
    </soapenv:Fault>
    </soapenv:Body>
    </soapenv:Envelope>
    can anyone explain why this error is coming.?
    Edited by: user8937128 on May 19, 2010 6:58 AM

  • Calling One Jax/rpc web service from another.

    We have a number of services residing in the same Oracle 10.1.3 app server container. These are deployed as Jax RPC Web Services
    I am trying to figure out what are the different options to have once web service invoke an operation on another (without directly linking to the Java code). The reason we want to keep separation as far as possible is that these services may later migrate to different app servers and in the spirit of SOA all we want to change when a service migrates is address and would like everything else to remain the same.
    So for example, if Web Service A needs to invoke an operation X in web service B,
    One way to do this seems to be to generate a proxy for web service B, include the proxy in Web Service A and then simply do B.X() from Web Service A.
    Is this is the best way to do it ?
    Are there other alternative approaches available ? Such as using the built in ESB features of Oracle App Server 10.1.3?
    Any pointers will be greatly appreciated.
    Thanks
    RR

    Hi all,
    I've managed to get this working by using the following property settings:
    System.getProperties().setProperty("http.proxyHost", "Proxy_Hostname");
    System.getProperties().setProperty("http.proxyPort", "8080");
    System.getProperties().setProperty("http.nonProxyHosts", "localhost,hostbox09");
    And solving the authentication problem using this property setting on the java cmd line:
    -Dweblogic.net.proxyAuthenticatorClassName=com.mycompany.MyProxyAuthenticator
    This class is an impl class of weblogic.common.ProxyAuthenticator interface.
    The other thing to note is that MyProxyAuthenticator needs to be in the server pre_classpath.
    Then I just call JAX-RPC or JAX-WS web service client calls as normal.
    Regards,
    Paul

  • Calling One Jax RPC Web Service from another in Oracle AS 10.1.3

    We have a number of services residing in the same Oracle 10.1.3 app server container. These are deployed as Jax RPC Web Services
    I am trying to figure out what are the different options to have once web service invoke an operation on another (without directly linking to the Java code). The reason we want to keep separation as far as possible is that these services may later migrate to different app servers and in the spirit of SOA all we want to change when a service migrates is address and would like everything else to remain the same.
    So for example, if Web Service A needs to invoke an operation X in web service B,
    One way to do this seems to be to generate a proxy for web service B, include the proxy in Web Service A and then simply do B.X() from Web Service A.
    Is this is the best way to do it ?
    Are there other alternative approaches available ? Such as using the built in ESB features of Oracle App Server 10.1.3?
    Any pointers will be greatly appreciated.
    Thanks
    RR

    Found document of 10.1.3.1.0 how to Creating a Custom Identity Service Plug-in
    Oracle® BPEL Process Manager Administrator's Guide
    10g (10.1.3.1.0)
    Part Number B28982-03
    http://download-west.oracle.com/docs/cd/B31017_01/integrate.1013/b28982/plugin.htm
    But may be no help.

  • How to call an ABAP based web service from a web page (form)

    Hi,
    I am trying to figure out how I can call my own developed ABAP based web service. I was able to successfully test it in the WS navigator and am now wondering what I need to do to embed the service call in a plain simply web page (form). Basically I'd like to create a web form allowing to specify the parameters and with a 'Submit' button pass the parameters to the web service and launch it.
    Is this possible or do I need some kind of SDK to accomplish this?
    Thanks for any hints and tips.
    Wolfgang

    Hi,
    refer the following link and this is for cosuming the web service form Web dynpro Java
    https://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/50d70a19-45a3-2b10-bba0-807d819daf46&overridelayout=true
    and please go throught the following link if you want to cosume it through web dynpro abap and find the answer given by the Moderator Thomas Jung
    regards
    Manohar

  • Calling a secured external web service from ABAP

    Hi,
    I've created a client proxy from a wsdl to call a secured external WS from ABAP.
    The question is: how to pass in the user/password in the client proxy?
    thanks

    Hi Rika,
      have a look to the blog: https://weblogs.sdn.sap.com/pub/wlg/1645. [original link is broken] [original link is broken] [original link is broken] [original link is broken]
      Screen shots are "old" but the concepts are already there. Serach the chapter "SAP Side - Setup".
      Basically: define your RFC destination via SM59 of type G. There you'll define the target host and the user/password.
      Then in LPCONFIG you can specify the defined RFC destination.
      Have a look also to http://help.sap.com/saphelp_nw2004s/helpdata/en/16/285d32996b25428dc2eedf2b0eadd8/content.htm
      and to
    http://help.sap.com/saphelp_nw04s/helpdata/en/da/11df3a9b10355ae10000000a11405a/content.htm
    Sergio
    PS
    Kindly close the thread and award appropriate a points to the answer given.
    Message was edited by:
            Sergio Ferrari

  • Calling BI Publisher Web Service from pl/sql

    I am trying to call the BI publisher web service from pl/sql.
    I get the following response back
    <?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <soapenv:Body>
    <soapenv:Fault>
    <faultcode xmlns:ns1="http://xml.apache.org/axis/">ns1:Client.NoSOAPAction</faultcode>
    <faultstring>no SOAPAction header!</faultstring>
    <detail>
    <ns2:hostname xmlns:ns2="http://xml.apache.org/axis/">my-obiee</ns2:hostname>
    </detail>
    </soapenv:Fault>
    </soapenv:Body>
    </soapenv:Envelope>
    The bit that concerns me is
    <faultcode xmlns:ns1="http://xml.apache.org/axis/">ns1:Client.NoSOAPAction</faultcode>
    <faultstring>no SOAPAction header!</faultstring>
    The code that I used to call this is
    DECLARE
    req utl_http.req;
    resp utl_http.resp;
    value VARCHAR2(1024);
    p_data_type varchar2(4000):= 'application/soap+xml;';
    p_data_in VARCHAR2(3000) :=
    '<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:pub="http://xmlns.oracle.com/oxp/service/PublicReportService">
    <soapenv:Body>
    <pub:scheduleReport xmlns:pub="http://xmlns.oracle.com/oxp/service/PublicReportService">
    <scheduleRequest>
    <deliveryRequest>
    <ftpOption>
    <ftpServerName>ino-ed-oel2.inoapps.com</ftpServerName>
    <ftpUserName>*******</ftpUserName>
    <ftpUserPassword>*****</ftpUserPassword>
    <remoteFile>/opt/UAT/db/tech_st/11.1.0/employees.pdf</remoteFile>
    </ftpOption>
    </deliveryRequest>
    <reportRequest>
    <attributeFormat>pdf</attributeFormat>
    <reportAbsolutePath>http://10.100.100.44:9704/xmlpserver/~administrator/XXXXXXX.xdo</reportAbsolutePath>
    <parameterNameValues>
    <item>
    <name>dname</name>
    <multiValuesAllowed>false</multiValuesAllowed>
    <values>
    <item>153002</item>
    </values>
    </item>
    </parameterNameValues>
    </reportRequest>
    <userJobName>BILL</userJobName>
    </scheduleRequest>
    <userID>******</userID>
    <password>******</password>
    </pub:scheduleReport>
    </soapenv:Body>
    </soapenv:Envelope>';
    BEGIN
    --utl_http.set_proxy('proxy.my-company.com', 'corp.my-company.com');
    req := utl_http.begin_request('http://10.100.100.44:9704/xmlpserver/services/PublicReportService?wsdl', 'POST');
    utl_http.set_header(req, 'content-type', p_data_type);
    utl_http.set_header(req, 'content-length', length(p_data_in));
    utl_http.set_header(req, 'User-Agent', 'Mozilla/4.0');
    utl_http.write_text(req, p_data_in);
    resp := utl_http.get_response(req);
    dbms_output.put_line ('status code: ' || resp .status_code);
    dbms_output.put_line ('reason phrase: ' || resp .reason_phrase);
    LOOP
    utl_http.read_line(resp, value, TRUE);
    dbms_output.put_line(value);
    END LOOP;
    utl_http.end_response(resp);
    EXCEPTION
    WHEN utl_http.end_of_body THEN
    utl_http.end_response(resp);
    END;
    Any help would be greatly received

    I had the same problem this morning. You need to add a line to the HTTP header to declare a value for SOAPAction.
    You can set this as an empty string, but for some reason it is required.
    Try adding this among your header declarations:
    utl_http.set_header(req, 'SOAPAction', '');

Maybe you are looking for