Hi Mike, Please find the composite file, wsdl file for the bpel and the bpel process file attached her with the mail. I am using a jms message to call my java-sca-service and this in-fact calls my bpel service. That is the flow of call happening in my app. Thanks & Regards Roshan
-----Original Message----- From: Mike Edwards [mailto:[EMAIL PROTECTED] Sent: Monday, October 20, 2008 6:10 PM To: [email protected] Subject: Re: Reference a BPEL service from a Java SCA service Roshan, This error is from deep in the ODE BPEL engine that Tuscany uses to run BPEL processes. It's not an error that I've seen with any of the BPEL applications that I have run. Can you post details of your SCA application please? Like the composite file you are using, the BPEL process script, related WSDL files etc. This may give us some hint as to what is going on. Also - have you run a BPEL process component successfully with your setup (eg one of the Tuscany sample applications)? Yours, Mike. roshan joseph wrote: > Hi, > > I am trying to call a BPEL service something similar to a > helloworld-bpel from my java-sca-service using interface.wsdl. When I > start my SCA domain everything works fine, but I get a Null Pointer > Exception in my console window. The BPEL service call executes fine, but > I am not able to understand why this error is generated. > > > > Can someone help me understand why this is happening? The error in the > console is as given below. > > > > > > > > Starting BPELMotionReactorService > > - Using Embedded Derby : > jdbc:derby:D:\Prototype\java-sca-service\bin\database/jpadb > > - Using DAO Connection Factory class > org.apache.ode.dao.jpa.BPELDAOConnectionFactoryImpl. > > - Using database dialect: DERBY > > - BPEL Server Started. > > - ODE BPEL server started. > > - >>> Deploying : D:\Prototype\java-sca-service\bin\classes > > - info: [CompilingProcess] Compiling BPEL process. > > - Starting OpenJPA 0.9.7-incubating > > - OpenJPA will now connect to the database to attempt to determine what > type of database dictionary to use. To prevent this connection in the > future, set your openjpa.jdbc.DBDictionary configuration property to the > appropriate value for your database (see the documentation for available > values). > > - Using dictionary class "org.apache.openjpa.jdbc.sql.DerbyDictionary" > (Apache Derby 10.3.1.4 - (561794) ,Apache Derby Embedded JDBC Driver > 10.3.1.4 - (561794)). > > - Activated process > {http://bpel/motionreactorworkflow}MotionReactorWorkflow-1. > > Completed calling new Process deployment code... > > - SCA Domain started with motionreactorws.composite - (press any key to > shutdown) > > > > **************SCADomainReactor Server started****************** > > - Scheduled job failed; jobDetail={mexid=hqejbhcnphr3o3j2e7tn4c, > iid=4854, type=INVOKE_RESPONSE, channel=20} > > _java.lang.NullPointerException_ > > at > org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(_BpelEngineImpl.java:305_) > > > at > org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(_BpelServerImpl.java:364_) > > > at > org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(_SimpleScheduler.java:335_) > > > at > org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(_SimpleScheduler.java:334_) > > > at > org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(_SimpleScheduler.java:173_) > > > at > org.apache.ode.scheduler.simple.SimpleScheduler$4.call(_SimpleScheduler.java:333_) > > > at > org.apache.ode.scheduler.simple.SimpleScheduler$4.call(_SimpleScheduler.java:330_) > > > at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) > > at java.util.concurrent.FutureTask.run(Unknown Source) > > at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown > Source) > > at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) > > at java.lang.Thread.run(Unknown Source) > > - Error while executing transaction > > _org.apache.ode.bpel.iapi.Scheduler$JobProcessorException_: > _java.lang.NullPointerException_ > > at > org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(_BpelEngineImpl.java:328_) > > > at > org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(_BpelServerImpl.java:364_) > > > at > org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(_SimpleScheduler.java:335_) > > > at > org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(_SimpleScheduler.java:334_) > > > at > org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(_SimpleScheduler.java:173_) > > > at > org.apache.ode.scheduler.simple.SimpleScheduler$4.call(_SimpleScheduler.java:333_) > > > at > org.apache.ode.scheduler.simple.SimpleScheduler$4.call(_SimpleScheduler.java:330_) > > > at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) > > at java.util.concurrent.FutureTask.run(Unknown Source) > > at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown > Source) > > at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) > > at java.lang.Thread.run(Unknown Source) > > Caused by: _java.lang.NullPointerException_ > > at > org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(_BpelEngineImpl.java:305_) > > > ... 11 more > > > > > > > > > > Thanks and appreciate any help in advance� > > > > Regards > > Roshan Important notice:This e-mail and any attachment thereto contains corporate proprietary information. If you have received it by mistake, please notify us immediately by reply e-mail and delete this e-mail and its attachments from your system. Thank You. __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
********This is my composite file. I uses a java message to start my java-sca-service.*************** ----------------------------------------------------------------------------------------------------------------- <?xml version="1.0" encoding="UTF-8"?> <composite xmlns="http://www.osoa.org/xmlns/sca/1.0" targetNamespace="http://com.siemens.hintegration" xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.0" xmlns:dbsdo="http://tuscany.apache.org/xmlns/sca/databinding/sdo/1.0" xmlns:hw="http://com.siemens.hintegration" xmlns:hns="http://hintegration.siemens.com/bpel/motionreactorworkflow" name="motionreactorComposite"> <component name="MotionReactorServiceComponent"> <implementation.java class="com.siemens.hintegration.MotionReactorImpl" /> <service name="MotionReactorService"> <interface.wsdl interface="http://com.siemens.hintegration#wsdl.interface(MotionReactor)" /> <!--interface.java interface="com.siemens.hintegration.MotionReactorService"/--> <!--JMS Binding--> <binding.jms initialContextFactory="org.apache.activemq.jndi.ActiveMQInitialContextFactory" jndiURL="tcp://localhost:61616"> <destination name="activemq/queue/sendQueue" create="always"/> </binding.jms> <!--Webservice Binding--> <binding.ws uri="http://localhost:8088/MotionReactorService"/> </service> <!-- BPEL process in referenced in this Service --> <reference name="motionReactorWorkflowService" target="BPELMotionReactorService"> <!--interface.wsdl interface="http://hintegration.siemens.com/bpel/motionreactorworkflow.wsdl#wsdl.interface(MotionReactorPortType)" /--> </reference> </component> <component name="BPELMotionReactorService"> <implementation.bpel process="hns:MotionReactorWorkflow"/> </component> </composite> ------------------------------------------------------------------------------------------------------------------------- ****************This is my BPEL process file************** <?xml version="1.0" encoding="UTF-8"?> <process exitOnStandardFault="yes" expressionLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath2.0" name="MotionReactorWorkflow" queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath2.0" targetNamespace="http://hintegration.siemens.com/bpel/motionreactorworkflow" xmlns="http://schemas.xmlsoap.org/ws/2004/03/business-process/" xmlns:test="http://hintegration.siemens.com/bpel/motionreactorworkflow.wsdl" xmlns:tns="http://hintegration.siemens.com/bpel/motionreactorworkflow" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <import importType="http://schemas.xmlsoap.org/wsdl/" location="wsdl/motionreactorworkflow.wsdl" namespace="http://hintegration.siemens.com/implementation/bpel/motionreactorworkflow.wsdl"/> <partnerLinks> <partnerLink myRole="me" name="motionReactorPartnerLink" partnerLinkType="test:MotionReactorPartnerLinkType"/> </partnerLinks> <variables> <variable messageType="test:RequestMessage" name="input"/> <variable messageType="test:ResponseMessage" name="output"/> </variables> <sequence> <receive createInstance="yes" name="startMotionReactorWorkflow" operation="activate" partnerLink="motionReactorPartnerLink" portType="test:MotionReactorPortType" variable="input"/> <assign name="assignToShowNewViewRequest" validate="no"> <copy> <from>$input.payload</from> <to>$output.payload</to> </copy> </assign> <reply name="endMotionReactorWorkflow" operation="activate" partnerLink="motionReactorPartnerLink" portType="test:MotionReactorPortType" variable="output"/> </sequence> </process> ----------------------------------------------------------------------------------------------------------------------- ******** The WSDL file for my corresponding BPEL file is as given below******************* <?xml version="1.0" encoding="utf-8" ?> <wsdl:definitions name="motionreactorworkflow" targetNamespace="http://hintegration.siemens.com/bpel/motionreactorworkflow.wsdl" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://hintegration.siemens.com/bpel/motionreactorworkflow.wsdl" xmlns:tns1="http://com.siemens.hintegration" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:bpws="http://schemas.xmlsoap.org/ws/2004/03/business-process/" xmlns:plnk="http://schemas.xmlsoap.org/ws/2004/03/partner-link/" xmlns:zonexsd="http://hintegration.siemens.com/implementation/bpel/motionreactorworkflow.wsdl"> <wsdl:types> <schema elementFormDefault="qualified" attributeFormDefault="qualified" targetNamespace="http://hintegration.siemens.com/implementation/bpel/motionreactorworkflow.wsdl" xmlns="http://www.w3.org/2001/XMLSchema"> <complexType name="Zone"> <sequence> <element name="topX" type="xsd:int" /> <element name="topY" type="xsd:int" /> <element name="botX" type="xsd:int" /> <element name="botY" type="xsd:int" /> </sequence> </complexType> <element name="activate"> <complexType> <sequence> <element name="zone" type="tns:Zone"/> </sequence> </complexType> </element> <element name="workflowResponse"> <complexType> <sequence> <element name="result" type="xsd:string"/> </sequence> </complexType> </element> </schema> </wsdl:types> <wsdl:message name="RequestMessage"> <wsdl:part element="tns:activate" name="payload"/> </wsdl:message> <wsdl:message name="ResponseMessage"> <wsdl:part element="tns:workflowResponse" name="payload"/> </wsdl:message> <wsdl:portType name="MotionReactorPortType"> <wsdl:operation name="activate"> <wsdl:input message="tns:RequestMessage" name="TestIn"/> <wsdl:output message="tns:ResponseMessage" name="TestOut"/> </wsdl:operation> </wsdl:portType> <wsdl:binding name="MotionReactorSoapBinding" type="tns:MotionReactorPortType"> <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <wsdl:operation name="activate"> <wsdlsoap:operation soapAction=""/> <wsdl:input name="TestIn"> <wsdlsoap:body use="literal"/> </wsdl:input> <wsdl:output name="TestOut"> <wsdlsoap:body use="literal"/> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="MotionReactorWorkflowService"> <wsdl:port name="MotionReactorPort" binding="tns:MotionReactorSoapBinding"> <soap:address location="http://localhost:8085/ode/processes/motionreactorworkflow"/> </wsdl:port> </wsdl:service> <plnk:partnerLinkType name="MotionReactorPartnerLinkType"> <plnk:role name="me" portType="tns:MotionReactorPortType"/> <plnk:role name="you" portType="tns:MotionReactorPortType"/> </plnk:partnerLinkType> </wsdl:definitions>
