Combine Annotation Driven EJB Web Services with BPEL

Hi friends,
We developed two Annotation Driven EJB Web Service and deployed successfully .
webservice 1 accepts username and password as input and returns true if ldap authentication is successful.
webservice 2 accepts username and password,and groupname as input and returns true if user is part of ldap group.
How can we combine these two services in SOA with input (username,password,group) and output (isAuthenticated ,isGroupMember) using BPEL process...
Regards,
jdev

I will create a schema with input as (username,password,group) and Output as (isAuthenticated ,isGroupMember).
Then based on your requirement you have to create either Sync or Async service.
From the BPEL process i will call the 2 webservices using webservice call.
On receiving the result, populate the output variable(isAuthenticated ,isGroupMember) and send as response.
Thanks,
Vijay

Similar Messages

  • Anyone Tried Using Sharepoint Web Services with BPEL?

    I've tried using SharePoint Web Services with BPEL, I'm able set it to use the sharepoint web service as a partner link in orchestration, but when I try to compile the bpel file, I get a "error: null" on the compiler log for the *.bpel file.
    Anyone have any success with using Sharepoint Web Services with BPEL?

    Hi,
    Please refer the below article and browse code.
    http://code.msdn.microsoft.com/Remote-Authentication-in-b7b6f43c
    Thanks,
    Srikanth

  • Calling Web Service with SOAP header from BPEL

    Hi,
    I am calling a web service (with header information) from BPEL. In the Invoke activity, i created a header variable to pass the header information.
    But, when i test the BPEL service, invoke activity fails because the header information is not being passed.
    Below is the error message (copied from clipboard).
    +<messages><input><Invoke_1_getsubinfo_InputVariable><part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="parameters"><getsubinfoElement xmlns="http://ws/its/tabs/webservices/SingleRowWS/SingleRowWS.wsdl">+
    +<pSubnoin>+
    +<insubno>12345678</insubno>+
    +</pSubnoin>+
    +</getsubinfoElement>+
    +</part></Invoke_1_getsubinfo_InputVariable></input><fault><bindingFault xmlns="http://schemas.oracle.com/bpel/extension"><part name="summary"><summary>exception on JaxRpc invoke:+
    start fault message:+
    Internal Server Error (Caught exception while handling request: javax.xml.rpc.JAXRPCException: Not authenticated user)+
    *:end fault message*</summary>
    +</part></bindingFault></fault></messages>+
    As said, no header information is visible in the Invoke activity.
    Please provide help for the above issue.
    -MJ

    Hello Patrick,
    Thanks for the response. I am using normal assign activity to assign values to the header variable as shown below. HeadMT is the header variable which is passed in the invoke activity.
    +<assign name="Assign_Header">+
    +<copy>+
    +<from expression="'tkl12'"/>+
    +<to query="/ns1:LOGIN_INFO/ns1:USER_NAME" variable="*HeadMT*"+
    part="payload"/>
    +</copy>+
    +<copy>+
    +<from expression="'tkl123'"/>+
    +<to query="/ns1:LOGIN_INFO/ns1:PASSWORD" variable="*HeadMT*"+
    part="payload"/>
    +</copy>+
    +<copy>+
    +<from expression="'TKL'"/>+
    +<to query="/ns1:LOGIN_INFO/ns1:CHANNEL_ID" variable="*HeadMT*"+
    part="payload"/>
    +</copy>+
    +</assign>+
    The expected input by the web service is as below with the header information highlighted.
    +<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://ws/webservices/RowWS/RowWS.wsdl">+
    +*<soap:Header>*+
    +*<ns1:LOGIN_INFO>*+
    +*<ns1:USERNAME>tkl12</ns1:USERNAME>*+
    +*<ns1:PASSWORD>tkl123</ns1:PASSWORD>*+
    +*<ns1:CHANNEL_ID>TKL</ns1:CHANNEL_ID>*+
    +*</ns1:LOGIN_INFO>*+
    +*</soap:Header>*+
    +<soap:Body>+
    +<ns1:substatusElement>+
    +<ns1:pInparam>+
    +<ns1:insubno>7674988</ns1:insubno>+
    +</ns1:pInparam>+
    +</ns1:substatusElement>+
    +</soap:Body>+
    +</soap:Envelope>+

  • Help Needed compile, deploy Web Service with Annotations on Web Logic 9.2

    Hi,
    I am new web logic and need some help in compiling, creating deployment file i.e. war, ear on Web Logic 9.2. I have the following sample web service with annotations code code but need help in compiling, creating deployment file (war,ear), creating proxy for testing etc. How to compile and create deployment files in WebLogic 9.2. Any help is really appreciated.
    package sample_ws;
    import java.rmi.RemoteException;
    import javax.jws.*;
    import javax.jws.soap.SOAPBinding;
    import org.w3c.dom.Document;
    @WebService
    @SOAPBinding(style = SOAPBinding.Style.DOCUMENT, use = SOAPBinding.Use.LITERAL,
                 parameterStyle = SOAPBinding.ParameterStyle.BARE)
    public class EchoService {
        public EchoService() {
        @WebMethod(action="echo")
        @WebResult(targetNamespace="http://exa.org", name="echoResult")
        public Document echo(@WebParam(targetNamespace = "http://exa.org",
                                       name = "echoMsg")
            Document doc) throws RemoteException{
            return doc;
    }Thanks

    I am using Oracle Jdeveloper as an IDE and created a war file and deployed on Oracle App. Server it works fine. Now if I deploy the same war on Web Logic it gives me the following error:
    java.lang.IllegalStateException: could not find schema type named {{http}//exa.org}>>echoResult
    Errors were encountered while performing this operation. Here is the code I have:
    package webservice2 ;
    import java.rmi.RemoteException;
    import javax.jws.*;
    import javax.jws.soap.SOAPBinding;
    import org.w3c.dom.Document;
    @WebService
    @SOAPBinding(style = SOAPBinding.Style.DOCUMENT,
                 use = SOAPBinding.Use.LITERAL,
                 parameterStyle = SOAPBinding.ParameterStyle.BARE)
    public class EchoService {
        public EchoService() {
        @WebMethod(action="echo")
        @WebResult(targetNamespace="http://exa.org", name="echoResult")
        public Document echo(@WebParam(targetNamespace = "http://exa.org",
                                       name = "echoMsg")
            Document doc) throws RemoteException{
            return doc;
    }And here is the wsdl file I have:
    <definitions
         name="EchoServiceService"
         targetNamespace="http://webservice2/"
         xmlns="http://schemas.xmlsoap.org/wsdl/"
         xmlns:tns="http://webservice2/"
         xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"
         xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
         xmlns:ns1="http://exa.org"
         xmlns:xsd="http://www.w3.org/2001/XMLSchema"
         xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
        >
        <types>
            <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://exa.org" elementFormDefault="qualified"
                 xmlns:tns="http://exa.org" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                 xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/">
                <element name="echoMsg" nillable="true">
                    <complexType>
                        <sequence>
                            <any/>
                        </sequence>
                    </complexType>
                </element>
                <element name="echoResult" nillable="true">
                    <complexType>
                        <sequence>
                            <any/>
                        </sequence>
                    </complexType>
                </element>
            </schema>
        </types>
        <message name="EchoServicePortType_echo">
            <part name="echoMsg" element="ns1:echoMsg"/>
        </message>
        <message name="EchoServicePortType_echoResponse">
            <part name="echoResult" element="ns1:echoResult"/>
        </message>
        <portType name="EchoService">
            <operation name="echo">
                <input message="tns:EchoServicePortType_echo"/>
                <output message="tns:EchoServicePortType_echoResponse"/>
            </operation>
        </portType>
        <binding name="EchoServiceSoapHttp" type="tns:EchoService">
            <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
            <operation name="echo">
                <soap:operation soapAction="echo"/>
                <input>
                    <soap:body use="literal" parts="echoMsg"/>
                </input>
                <output>
                    <soap:body use="literal" parts="echoResult"/>
                </output>
            </operation>
        </binding>
        <service name="EchoServiceService">
            <port name="EchoServiceSoapHttpPort" binding="tns:EchoServiceSoapHttp">
                <soap:address location="http://localhost:8888/EnableSrc-WebService2-context-root/EchoServiceSoapHttpPort"/>
            </port>
        </service>
    </definitions>Any ideas what might be wrong.

  • Compile build.xml with Ant for web service with annotations

    Hi Friends,
    I have a web service with annotations, using javax.annotation.PostConstruct, and javax.annotation.PreDestroy.
    I have a build.xml to create a EAR for this web service.
    When I run the ant task, the build complete successfully but the .war file cannot be deployed on the WLS server. Taking a closer look, I see that the required files such as, webservices.xml, weblogic.xml, weblogic-webservices.xml, Provision.wsdl files are not generated.
    Following is the build.xml file:
    <?xml version="1.0" encoding="windows-1252" ?>
    <project default="jwsc">
    <property file="build.properties"/>
    <property name="weblogic.jar.classpath"
    value="C:/bea_jDev/wlserver_10.3/server/lib"/>
    <property name="oimclient.jar.classpath"
              value="C:/_data/Project_Dc/OIM_jars" />
         <property name="com.jar.classpath" value="C:/JDeveloper/mywork/Service_Test/lib" />
    <taskdef name="jwsc" classname="weblogic.wsee.tools.anttasks.JwscTask">
    <classpath>
    <path id="weblogic.classpath">
    <pathelement path="WEBLOGIC_HOME"/>
    <fileset dir="${weblogic.jar.classpath}">
    <include name="**/*.jar"/>
    </fileset>
    </path>
    </classpath>
    </taskdef>
    <target name="all" depends="clean,build-service,deploy"></target>
    <target name="build-service">
         <jwsc srcdir="${src.home}" destdir="ear_directory" >
    <classpath>
    <path id="oim.classpath">
    <pathelement path="OIM_HOME"/>
    <fileset dir="${oimclient.jar.classpath}">
    <include name="**/*.jar"/>
    </fileset>
    <fileset dir="${com.jar.classpath}">
    <include name="**/*.jar"/>
    </fileset>
    </path>
    </classpath>
    <jws file="${jws.home}" type="JAXWS" />
    </jwsc>
    </target>
    <target name="deploy">
    <!--add wldeploy task here -->
    </target>
    <target name="clean">
    <delete dir="output" />
    </target>
    </project>
    Can you please point out what else is to be done and where exactly am I going wrong in writing the build.xml file.
    Let me know if some else information is required.

    This is what I get when I run the ant task:
    Buildfile: C:\JDeveloper\mywork\ProvisioningService_Test2\Provision\resource\build.xml
    build-service:
    [jwsc] JWS: processing module /com/fox/provision/webservice/endpoint/impl/ProvisionEndPointImpl
    [jwsc] Parsing source files
    [jwsc] Parsing source files
    [jwsc] 1 JWS files being processed for module /com/.../provision/webservice/endpoint/impl/ProvisionEndPointImpl
    [jwsc] [JAM] Warning: failed to resolve class org.apache.xmlbeans.XmlObject
    [jwsc] [JAM] Warning: failed to resolve class com.bea.xml.XmlObject
    [jwsc] [JAM] Warning: failed to resolve class javax.xml.rpc.holders.Holder
    [jwsc] JWS: C:\..\...\..\...\code\ProvisioningService\src\com\...\provision\webservice\endpoint\impl\..EndPointImpl.java Validated.
    [jwsc] Processing 1 JAX-WS web services...
    [jwsc] warning: Specified AnnotationProcessorFactory, 'com.sun.istack.ws.AnnotationProcessorFactoryImpl', not found on search path.
    warning: No annotation processors found but annotations present.
    2 warnings
    [jwsc] Compiling 2 source files to C:\DOCUME~1\....\LOCALS~1\Temp\_lsgijm
    [jwsc] Building jar: C:\..\...\..\...\code\ProvisioningService\src\com\...\provision\webservice\deploy\ear_directory\com\fox\provision\webservice\endpoint\impl\...EndPointImpl.war
    [jwsc] Created JWS deployment outputFile: C:\..\...\..\...\code\ProvisioningService\src\com\...\provision\webservice\deploy\ear_directory\....\...\provision\webservice\endpoint\impl\..EndPointImpl.war
    [jwsc] [EarFile] Application File : C:\..\...\..\...\code\ProvisioningService\src\com\.....\provision\webservice\deploy\ear_directory\META-INF\application.xml
    [AntUtil.deleteDir] Deleting directory C:\DOCUME~1\....\LOCALS~1\Temp\_lsgijm
    BUILD SUCCESSFUL
    Total time: 7 seconds
    Due to some limitations, I edited the path in the build.xml files.
    Please let me know what can be done. Thanks.
    Edited by: user9112073 on Nov 22, 2011 9:52 PM

  • Maintaing state with ejb web services

    Hello,
    I understand there are no straight way to maintain state with ejb web services. Basically I have a stateful session bean and I would like to maintain state across requests. What is the best/cleanest architecture I can use in order to maintain state with web services?
    Any reply appreciated,
    Julien.

    Here's how BEA suggests you do it:
    http://e-docs.bea.com/wls/docs81/webserv/design.html#1058330

  • Implementing Web Service with Stateless Session Bean

    I have a web service that I've built using the WorkSpace Studio tools (create a WSDL, generate the Java code from the WSDL, fill in the skeleton methods in the service implementation class). This service is deployed as a web module within an EAR to WebLogic Server 10.0 and is working great as a web service.
    I'd like to be able to also call the operations on this service via an EJB interface (from a different application on the same server). I followed the guidelines for adding EJB annotations to the web service implementation class (from [http://edocs.bea.com/wls/docs100/webserv/jws.html#wp215790]). I added the @Session annotation to the class, implemented javax.ejb.SessionBean, and added the ejbXXX() methods. This all makes perfect sense, and looked like it was going to work. However, WorkSpace Studio now gives me a compile error on the class that says "EJB backed WebServices are not supported."
    A few internet searches for that error didn't return anything relevant.
    It seems like I followed the instructions correctly. Is there a better way to build a service like this that is both a web service endpoint and a stateless session bean?
    Thanks!
    -Eric

    Having separate EJB and web modules certainly makes things easier, but I have non-trivial (i.e. not feasible to copy) application logic that I'd like to expose with both a bean interface (for intra-application usage) and a web service interface (for public consumption).
    I've tried starting with a "web application" WorkSpace Studio project and adding bean annotations. This produces the error I originally described. I also tried starting with an "EJB" WorkSpace Studio project and adding web service annotations. This fails at deployment time with errors about missing web service descriptors (the error is correct - the web-service-related descriptor elements are missing from the deployment descriptors).
    The documentation explicitly presents this as an option (annotating a class with both web service and session bean annotations), but how does one actually make this work?

  • How to create secure EJB web service in Oc4J using JDeveloper?

    We are going to develop a EJB web service running in OC4J using JDeveloper 10.1.3.3.
    By using the JDeveloper feature, we can simply create the web service by using the "Web Service Endpoint Interface" in the session bean.
    However, unlike the web service created from Java class, I can't find any option to change the security setting of this web service. We tried adding annotation like @DenyAll for testing, but there has no effect and related method can still be called without WS-Security header.
    Now, we can only change the security setting via the web console after deployment (select the web service, then enable security in administration page, and then edit security configuration to change the inbound policies for authentication). It works in our local machine, but it may not work in the production environment as we cannot touch the em console.
    May I know if there has any way to include the security setting inside the project?
    Thanks in advance.

    If I am not wrong, you might be probably talking about this :
    http://docs.oracle.com/cd/B40099_02/books/EAI2/EAI2_WebServices33.html#wp179056
    In order to implement the SOAP header, you would have to :
    (1) Define SOAP header in the wsdl of the service.
    (2) Add a new soap binding in the wsdl, which contains soap header and soap body.
    I think, this should get you going..

  • Basic http authentication not working when consuming Web Service in BPEL.

    Hi,
    I am consuming an AXIS Web Service from BPEL 10.1.3. The Web Service uses basic http
    authentication so we need a way to get username and password into the http
    header. In the Oracle BPEL Process Manager Administrator's Guide 10g
    (10.1.3.1.0) section 1.3.4.1 HTTP Basic Authentication (10.1.2.0.2) is stated
    that this can be done using the properties httpUsername and httpPassword. I
    have set the 2 for the partner link in bpel.xml but username and password does
    not get in to the http header. Has anybody got an idea?
    Regards Pete

    I'm having the same sorts of problems with 10.1.3.1.0. I've got a deployed BPEL suitcase that's trying to hit a BASIC AUTH-secured web service running on a WebLogic 8.1 server. I've set up my partner link according to the documentation, and the BPEL console Descriptor tab even shows the parameters correctly:
    partnerLinkBindings      
    client      
         wsdlLocation      awardService.wsdl
    spsAwardSubmitPartnerLink      
         basicHeaders      credentials
         basicUsername      ko1
         basicPassword      xxxxx
         wsdlLocation      IAwardDraftServiceRef1.wsdl
    However, when I funnel the resultant call to the endpoint specified in IAwardDraftServiceRef1.wsdl, none of the fields I would expect show up in the HTTP header:
    POST /pd2WebServices/service/IAwardDraftService HTTP/1.1
    Host: vm-orcl-app-srv:4444
    Connection: Keep-Alive, TE
    TE: trailers, deflate, gzip, compress
    User-Agent: Oracle HTTPClient Version 10h
    SOAPAction: ""
    Accept-Encoding: gzip, x-gzip, compress, x-compress
    Content-type: text/xml; charset=UTF-8
    Content-length: 3800
    <?xml version="1.0" encoding="UTF-8"?>
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><env:Body><IAwardDraftSubmitNew xmlns="http://www.caci.com/pd2/pub">
    <IAwardDraft>
    <accessController/>
    <agreementEndDate/>
    Is there some other configuration piece I'm missing?? I've tried the other variation using httpBasicHeaders, with the same results. I even noted that the "Oracle® BPEL Process Manager Administrator's Guide" says that "Starting with Oracle BPEL Process Manager release 10.1.3, all partner link properties are automatically propagated into the HTTP header." I've tried putting "extra" parms in the partner link bindings, but they don't show up either.
    What am I missing??
    Thanks,
    Mike

  • Invoking Imaging Web Service from BPEL is failing

    Hi,
    My Env is on latest 11g 11.1.1.8.
    I am trying to invoke the Imaging Web Services (http://host:port/imaging/ws/ApplicationService?wsdl)deployed in another Weblogic Server from Bpel. When I tried to invoke this web service with out security credentials it was failing due to access issue.
    I tried invoking  the imaging web service by following below steps.
    Added oracle/wss_http_token_client_policy for Imaging Web service Reference.
    Added these properties in Composite for the reference binding as below.
    <wsp:PolicyReference URI="oracle/wss_http_token_client_policy"
                               orawsp:category="security" orawsp:status="enabled"/>
          <property name="weblogic.wsee.wsat.transaction.flowOption"
                    type="xs:string" many="false">SUPPORTS</property>
          <property name="weblogic.wsee.wsat.transaction.version" type="xs:string"
                    many="false">DEFAULT</property>
         <property name="oracle.webservices.auth.username" type="xs:string"
                    many="false" override="may">weblogicxz</property>
          <property name="oracle.webservices.auth.password" type="xs:string"
                    many="false" override="may">welcome111</property>
          <property name="httpBasicUsername">weblogicxz</property>
          <property name="httpBasicPassword">welcome111</property>
    But now While testing my Bpel Flow my reference is failing with below erro. Can you please help me resolving this issue. 
    <messages>
    <input>
    <Invoke1_getApplication_InputVariable>
    <part  name="parameters">
    <getApplication>
    <appNameId>
    <id>2</id>
    <name>CaptureImageApplication</name>
    </appNameId>
    <sectionFlags/>
    </getApplication>
    </part>
    </Invoke1_getApplication_InputVariable>
    </input>
    <fault>
    <bpelFault>
    <faultType>0</faultType>
    <remoteFault>
    <part  name="summary">
    <summary>MustUnderstand headers:[{http://schemas.xmlsoap.org/ws/2004/10/wscoor}CoordinationContext] are not understood</summary>  
    </part>
    <part  name="detail">
    <detail>oracle.j2ee.ws.client.jaxws.JRFSOAPFaultException: Client received SOAP Fault from server : MustUnderstand headers:[{http://schemas.xmlsoap.org/ws/2004/10/wscoor}CoordinationContext] are not understood</detail>  
    </part>
    <part  name="code">
    <code>{http://schemas.xmlsoap.org/soap/envelope/}MustUnderstand</code>  
    </part>
    </remoteFault>
    </bpelFault>

    Hi,
    I don't think it is failing due to access issue, I think it is failing because one of the parts is NOT configured to use WS-AT (WS-Atomic Transactions)...
    MustUnderstand headers:[{http://schemas.xmlsoap.org/ws/2004/10/wscoor}CoordinationContext] are not understood
    Why did you add this?
          <property name="weblogic.wsee.wsat.transaction.flowOption"
                    type="xs:string" many="false">SUPPORTS</property>
          <property name="weblogic.wsee.wsat.transaction.version" type="xs:string"
                    many="false">DEFAULT</property>
    Cheers,
    Vlad

  • Calling SAP Web Service from BPEL

    Hi
    I am trying to call a SAP Web Service friom BPEL using the SAP WSDL.It requires a basic authentication (Username/Password) which i am providing as partnerlink properties in bpel.xml.
    While testing the BPEL Process from the console, it is giving me an error
    "<summary>exception on JaxRpc invoke: HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Bad response: 401 Unauthorized</summary>"
    But when i am testing it from SOAP UI tool it is giving me the desired response.
    Does anyone has any idea why it is failing from BPEL?Is there any configuration which i am missing?
    Regards
    Ayush

    HI Ayush / Suryaveer..
    I am stuck at the same situation, trying to invoke a secured SAP webservice. The invoke fails with a security previlege exception.
    Am using the basicHeaders property to propagate the credentials to the SAP system.
    Can you please suggest on the same.
    credential propagation in bpel.xml :
    <property name="basicHeaders">propagate</property>
    <property name="basicUsername">ABC</property>
    <property name="basicPassword">DEF</property>

  • Calling Siebel web service from BPEL flow

    Hi,
    I am using Jdeveloper 10.1.3 to build BPEL.
    Does anyone have a sample to call Siebel web service from BPEL flow?
    I cannot make web service call success by adding partner link from BPEL flow.
    Error:
    Error Code: 10944642 Error Message: Error: Inbound SOAP Message - Session Token is missing or invalid or has expired
    My understanding is Siebel needs special soap header.
    I can build webservice proxy to call siebel web service, it works fine by overwrite the soap header function. However, I cannot make it work from BPEL flow.
    Does anyone have this experience?
    Thanks

    Anyone has insight on this? Is it possible to call a WCF service with NTLM authentication from SOA.
    Thanks!
    Sandeep

  • Calling WCF web service from BPEL

    We are getting ‘oracle.fabric.common.FabricInvocationException: Unable to invoke endpoint URI "http://<host>:<port>/services/<servicename>.svc" successfully due to: javax.xml.soap.SOAPException: javax.xml.soap.SOAPException: Bad response: 400 Bad Request’ error while calling a WCF web service from BPEL.
    1.     Is it possible to call a WCF webservice from BPEL.
    2.     The WCF service is having ‘BasicHttpBinding’  and ‘<http:NegotiateAuthentication xmlns:http="http://schemas.microsoft.com/ws/06/2004/policy/http" />’
    3.     Do we need to configure the SOA WS Policy in the composite xml? If yes what properties have to be set?
    Thanks!
    Sandeep

    Anyone has insight on this? Is it possible to call a WCF service with NTLM authentication from SOA.
    Thanks!
    Sandeep

  • Netbeans calls MS Web Service through BPEL

    I get the followng error when trying to invoke a microsoft web service through bpel:
    Pattern for exchange Id 206195522970609-30893-134221047015560007 is http://www.w3.org/2004/08/wsdl/in-out
    This is from the exception block.
    com.sun.bpel.model.meta.impl.RInvokeImpl@538425={<?xml version="1.0" encoding="utf-8" ?>
    <invoke name="Invoke2"
    partnerLink="PartnerLink9"
    portType="ns1:Service1Soap"
    operation="HelloWorld"
    inputVariable="HelloWorldIn4"
    outputVariable="HelloWorldOut4"></invoke>}
    [Fatal Error] :1:1: Content is not allowed in prolog.
    Fault Processing Error. Fault Name is {http://sun.com/wsbpel/2.0/process/executable/fault}systemFault and Fault Value is {http://sun.com/wsbpel/2.0/process/executable/fault}systemFault is not handled in the current scope. Sending faults for the pending requests in the current scope before propagating the fault to the enclosing scope.
    Setting MessageEx id 206195522970609-30893-134221047013250005 with error: Processing Error. Fault Name is {http://sun.com/wsbpel/2.0/process/executable/fault}systemFault and Fault Value is {http://sun.com/wsbpel/2.0/process/executable/fault}systemFault
    System exception occured while executing a business process instance.
    java.lang.NullPointerException
    at com.sun.jbi.engine.bpel.core.bpel.debug.BPELProcessRefImpl.removeProcessInstance(BPELProcessRefImpl.java:109)
    at com.sun.jbi.engine.bpel.core.bpel.debug.VirtualBPELEngineImpl.removeProcessInstance(VirtualBPELEngineImpl.java:134)
    at com.sun.jbi.engine.bpel.core.bpel.debug.DefaultDebugger.processInstanceDied(DefaultDebugger.java:502)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELProcessManagerImpl.instanceComplete(BPELProcessManagerImpl.java:852)
    at com.sun.jbi.engine.bpel.core.bpel.model.runtime.impl.BPELProcessInstanceImpl.doResumeAction(BPELProcessInstanceImpl.java:704)
    at com.sun.jbi.engine.bpel.core.bpel.model.runtime.impl.BPELProcessInstanceImpl.handleFault(BPELProcessInstanceImpl.java:432)
    at com.sun.jbi.engine.bpel.core.bpel.model.runtime.impl.InvokeUnitImpl.handleFault(InvokeUnitImpl.java:662)
    at com.sun.jbi.engine.bpel.core.bpel.model.runtime.impl.SyntheticThrowUnitImpl.doAction(SyntheticThrowUnitImpl.java:92)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELInterpreter.execute(BPELInterpreter.java:145)
    at com.sun.jbi.engine.bpel.core.bpel.engine.BusinessProcessInstanceThread.execute(BusinessProcessInstanceThread.java:76)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELProcessManagerImpl.process(BPELProcessManagerImpl.java:818)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.EngineImpl.process(EngineImpl.java:261)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.EngineImpl.process(EngineImpl.java:742)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.processStatus(BPELSEInOutThread.java:376)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.processMsgEx(BPELSEInOutThread.java:204)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.run(BPELSEInOutThread.java:158)
    Failed to process status of InOut - M Ex 206195522970609-30893-134221047015560007
    java.lang.NullPointerException
    at com.sun.jbi.engine.bpel.core.bpel.debug.BPELProcessRefImpl.removeProcessInstance(BPELProcessRefImpl.java:109)
    at com.sun.jbi.engine.bpel.core.bpel.debug.VirtualBPELEngineImpl.removeProcessInstance(VirtualBPELEngineImpl.java:134)
    at com.sun.jbi.engine.bpel.core.bpel.debug.DefaultDebugger.processInstanceDied(DefaultDebugger.java:502)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELProcessManagerImpl.instanceComplete(BPELProcessManagerImpl.java:852)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELProcessManagerImpl.terminate(BPELProcessManagerImpl.java:655)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELInterpreter.execute(BPELInterpreter.java:231)
    at com.sun.jbi.engine.bpel.core.bpel.engine.BusinessProcessInstanceThread.execute(BusinessProcessInstanceThread.java:76)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELProcessManagerImpl.process(BPELProcessManagerImpl.java:818)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.EngineImpl.process(EngineImpl.java:261)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.EngineImpl.process(EngineImpl.java:742)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.processStatus(BPELSEInOutThread.java:376)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.processMsgEx(BPELSEInOutThread.java:204)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.run(BPELSEInOutThread.java:158)
    Invoking a java web service is fine. Is there something I'm missing?

    I get the followng error when trying to invoke a microsoft web service through bpel:
    Pattern for exchange Id 206195522970609-30893-134221047015560007 is http://www.w3.org/2004/08/wsdl/in-out
    This is from the exception block.
    com.sun.bpel.model.meta.impl.RInvokeImpl@538425={<?xml version="1.0" encoding="utf-8" ?>
    <invoke name="Invoke2"
    partnerLink="PartnerLink9"
    portType="ns1:Service1Soap"
    operation="HelloWorld"
    inputVariable="HelloWorldIn4"
    outputVariable="HelloWorldOut4"></invoke>}
    [Fatal Error] :1:1: Content is not allowed in prolog.
    Fault Processing Error. Fault Name is {http://sun.com/wsbpel/2.0/process/executable/fault}systemFault and Fault Value is {http://sun.com/wsbpel/2.0/process/executable/fault}systemFault is not handled in the current scope. Sending faults for the pending requests in the current scope before propagating the fault to the enclosing scope.
    Setting MessageEx id 206195522970609-30893-134221047013250005 with error: Processing Error. Fault Name is {http://sun.com/wsbpel/2.0/process/executable/fault}systemFault and Fault Value is {http://sun.com/wsbpel/2.0/process/executable/fault}systemFault
    System exception occured while executing a business process instance.
    java.lang.NullPointerException
    at com.sun.jbi.engine.bpel.core.bpel.debug.BPELProcessRefImpl.removeProcessInstance(BPELProcessRefImpl.java:109)
    at com.sun.jbi.engine.bpel.core.bpel.debug.VirtualBPELEngineImpl.removeProcessInstance(VirtualBPELEngineImpl.java:134)
    at com.sun.jbi.engine.bpel.core.bpel.debug.DefaultDebugger.processInstanceDied(DefaultDebugger.java:502)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELProcessManagerImpl.instanceComplete(BPELProcessManagerImpl.java:852)
    at com.sun.jbi.engine.bpel.core.bpel.model.runtime.impl.BPELProcessInstanceImpl.doResumeAction(BPELProcessInstanceImpl.java:704)
    at com.sun.jbi.engine.bpel.core.bpel.model.runtime.impl.BPELProcessInstanceImpl.handleFault(BPELProcessInstanceImpl.java:432)
    at com.sun.jbi.engine.bpel.core.bpel.model.runtime.impl.InvokeUnitImpl.handleFault(InvokeUnitImpl.java:662)
    at com.sun.jbi.engine.bpel.core.bpel.model.runtime.impl.SyntheticThrowUnitImpl.doAction(SyntheticThrowUnitImpl.java:92)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELInterpreter.execute(BPELInterpreter.java:145)
    at com.sun.jbi.engine.bpel.core.bpel.engine.BusinessProcessInstanceThread.execute(BusinessProcessInstanceThread.java:76)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELProcessManagerImpl.process(BPELProcessManagerImpl.java:818)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.EngineImpl.process(EngineImpl.java:261)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.EngineImpl.process(EngineImpl.java:742)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.processStatus(BPELSEInOutThread.java:376)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.processMsgEx(BPELSEInOutThread.java:204)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.run(BPELSEInOutThread.java:158)
    Failed to process status of InOut - M Ex 206195522970609-30893-134221047015560007
    java.lang.NullPointerException
    at com.sun.jbi.engine.bpel.core.bpel.debug.BPELProcessRefImpl.removeProcessInstance(BPELProcessRefImpl.java:109)
    at com.sun.jbi.engine.bpel.core.bpel.debug.VirtualBPELEngineImpl.removeProcessInstance(VirtualBPELEngineImpl.java:134)
    at com.sun.jbi.engine.bpel.core.bpel.debug.DefaultDebugger.processInstanceDied(DefaultDebugger.java:502)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELProcessManagerImpl.instanceComplete(BPELProcessManagerImpl.java:852)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELProcessManagerImpl.terminate(BPELProcessManagerImpl.java:655)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELInterpreter.execute(BPELInterpreter.java:231)
    at com.sun.jbi.engine.bpel.core.bpel.engine.BusinessProcessInstanceThread.execute(BusinessProcessInstanceThread.java:76)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELProcessManagerImpl.process(BPELProcessManagerImpl.java:818)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.EngineImpl.process(EngineImpl.java:261)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.EngineImpl.process(EngineImpl.java:742)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.processStatus(BPELSEInOutThread.java:376)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.processMsgEx(BPELSEInOutThread.java:204)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.run(BPELSEInOutThread.java:158)
    Invoking a java web service is fine. Is there something I'm missing?

  • Invoking Siebel CRM OnDemand Web Service via BPEL

    I'm trying to invoke a Siebel CRM OnDemand Web Service via BPEL. Basically, the Siebel guide says to post to a url with user/pwd to get a session ID returned from a cookie. I did that using embedded java and have the session ID as a variable in my BPEL process. My problem is with now calling the Web Service to perform the action. I have a WSDL from Siebel, but the guide says to use an HTTP post with the session ID in the url and the XML in the body. How do I do that? Shouldn't the WSDL handle that when I create the Partner Link? Do I need to use more embedded Java for this or can I set up a Partner Link? I created a Partner Link and it shows the methods I want to use, but I get the following error when I try to call it because I don't know where to add the session ID:
    <ErrorCode xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">SBL-ODU-01006</ErrorCode>
    <ErrorMessage xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">Internal Error: Session is not available. Aborting.</ErrorMessage>
    Any help would be GREATLY appreciated. Please let me know if you need more information.
    THANKS!

    The Siebel OnDemand web services can accept the siebel session token in the URL. Append ';jessionid={%sessionIdFromCookie%}' to the end point. Obviously this has to be done dynamically. Refer to the article called 'Making BPEL Processes Dynamic' (http://www.oracle.com/technology/pub/articles/bpel_cookbook/carey.html) pay particular attention to the 'Eliminating address dependency at run time' section.
    Peter

Maybe you are looking for