thanks but.. i suppose that because i have another bpel process that take a 
string(receive) and return the same string taken (reply) with the same Service 
and port name (like the web service i try to call) and this bpel is under 
ode/process maybe ode call this bpel instead the webservice hellows! so i 
remove the bpel process but now give me a select fault about the Output 
variable of invoke process! I have to initialize it??? Ode when call the 
webservice with <invoke> didin't make the initialization directly before 
setting it with the result of webservice? Or i have to place the the web 
service under ode/process (like the process place now)?? mmm...this is the log 
(as you can see in the last lines, the web service give me a Hello null...why 
null and not Hello pippo?? :(), thanks:

17:22:58,484 DEBUG [ScopeFrame] Write variable: name={Variable 
__PROCESS_SCOPE:Caller.HelloIn:OMessageVarType#14} value=<?xml version="1.0" 
encoding="UTF-8"?>
<message><parameters><hello xmlns="http://hello.netbureau.it/";>
                            <myxsd:name 
xmlns:myxsd="http://hello.netbureau.it/";>pippo</myxsd:name>
                        </hello></parameters></message>
17:22:58,609 DEBUG [BpelProcess] INVOKING PARTNER: 
partnerLink={PartnerLinkInstance 
partnerLinkDecl=OPartnerLink#20,scopeInstanceId=301}, op=hello 
channel=InvokeResponseChannel#20)
17:22:58,609 DEBUG [BpelRuntimeContextImpl] INVOKE PARTNER (SEP): 
sessionId=null partnerSessionId=null
17:22:58,609 DEBUG [MessageExchangeImpl] SET MEX property activityId = 37
17:22:58,609 DEBUG [BpelEngineImpl] Routed: svcQname 
{http://wsdl.hello.netbureau.it/}HellonameService --> null
17:22:58,609 DEBUG [ProcessConfImpl] Properties for service 
{http://wsdl.hello.netbureau.it/}HellonameService, port HellonamePort: {}
17:22:58,687 DEBUG [BpelRuntimeContextImpl] Creating invocation check event in 
180000ms for mexid hqejbhcnphr4m7n8cl7ruo
17:22:58,687 DEBUG [SimpleScheduler] scheduling {mexid=hqejbhcnphr4m7n8cl7ruo, 
inmem=false, pid={http://MyTest.com/Test}Caller-1, type=INVOKE_CHECK} for Wed 
Sep 23 17:25:58 CEST 2009
....
..
17:22:58,890 DEBUG [EndpointReferenceContextImpl] Resolving endpoint reference 
<?xml version="1.0" encoding="UTF-8"?>
<service-ref 
xmlns="http://docs.oasis-open.org/wsbpel/2.0/serviceref";><EndpointReference 
xmlns="http://www.w3.org/2005/08/addressing";><Metadata><ServiceName 
xmlns="http://www.w3.org/2006/05/addressing/wsdl"; EndpointName="HellonamePort" 
xmlns:servicens="http://wsdl.hello.netbureau.it/";>servicens:HellonameService</ServiceName></Metadata><Address>http://localhost:8080/HelloWs/Helloname</Address></EndpointReference></service-ref>
17:22:58,999 DEBUG [MessageExchangeImpl] GET MEX property 
org.apache.ode.bpel.partnerRoleSessionId = null
17:22:58,999 DEBUG [MessageExchangeImpl] GET MEX property 
org.apache.ode.bpel.myRoleSessionId = null
17:22:58,999 DEBUG [ExternalService] My-Role EPR not specified, SEP will not be 
used.
17:22:58,999 DEBUG [ExternalService] Axis2 sending message to 
http://localhost:8080/HelloWs/Helloname using MEX 
{PartnerRoleMex#hqejbhcnphr4m7n8cl7ruo [PID {http://MyTest.com/Test}Caller-1] 
calling [email protected](...)}
17:22:59,109 DEBUG [ExternalService] Message: <?xml version='1.0' 
encoding='utf-8'?><soapenv:Envelope 
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";><soapenv:Body><hello 
xmlns="http://hello.netbureau.it/";>
                            <myxsd:name 
xmlns:myxsd="http://hello.netbureau.it/";>pippo</myxsd:name>
                        </hello></soapenv:Body></soapenv:Envelope>
17:22:59,124 DEBUG [PartnerRoleMessageExchangeImpl] replyAsync 
mex=hqejbhcnphr4m7n8cl7ruo
17:22:59,124 DEBUG [BpelRuntimeContextImpl] Setting execution state on instance 
251
17:22:59,218 DEBUG [ExecutionQueueImpl] ReplacmentMap: getReplacement({OScope 
'__PROCESS_SCOPE:Caller' id=3}) = 
org.apache.ode.bpel.engine.replacementmapimpl$obasereplacementi...@158d74b
17:22:59,234 DEBUG [ExecutionQueueImpl] ReplacmentMap: 
getReplacement(OSequence#22-sequence-activity-line-29) = 
org.apache.ode.bpel.engine.replacementmapimpl$obasereplacementi...@13503e5
17:22:59,234 DEBUG [ExecutionQueueImpl] ReplacmentMap: 
getReplacement(OProcess#0) = 
org.apache.ode.bpel.engine.replacementmapimpl$obasereplacementi...@c6b7ee
17:22:59,296 DEBUG [ExecutionQueueImpl] ReplacmentMap: getReplacement({OScope 
'InvokeHelloname' id=36}) = 
org.apache.ode.bpel.engine.replacementmapimpl$obasereplacementi...@1db0f40
17:22:59,296 DEBUG [ExecutionQueueImpl] ReplacmentMap: getReplacement({OAssign 
: Assign2, joinCondition=null}) = 
org.apache.ode.bpel.engine.replacementmapimpl$obasereplacementi...@1e54e00
17:22:59,296 DEBUG [ExecutionQueueImpl] ReplacmentMap: 
getReplacement(OReply#52-ReplyToClient) = 
org.apache.ode.bpel.engine.replacementmapimpl$obasereplacementi...@bbaccd
17:22:59,405 DEBUG [ExecutionQueueImpl] ReplacmentMap: 
getReplacement(OInvoke#37-InvokeHelloname) = 
org.apache.ode.bpel.engine.replacementmapimpl$obasereplacementi...@4f7b4c
17:23:03,234 DEBUG [SessionOutHandler] <?xml version='1.0' 
encoding='utf-8'?><soapenv:Envelope 
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";><soapenv:Header><addr:To
 
xmlns:addr="http://www.w3.org/2005/08/addressing";>http://localhost:8080/HelloWs/Helloname</addr:To><addr:Action
 xmlns:addr="http://www.w3.org/2005/08/addressing";></addr:Action><addr:ReplyTo 
xmlns:addr="http://www.w3.org/2005/08/addressing";><addr:Address>http://www.w3.org/2005/08/addressing/anonymous</addr:Address></addr:ReplyTo><addr:MessageID
 
xmlns:addr="http://www.w3.org/2005/08/addressing";>uuid:hqejbhcnphr4m7n8cl7rur</addr:MessageID></soapenv:Header><soapenv:Body><hello
 xmlns="http://hello.netbureau.it/";>
                            <myxsd:name 
xmlns:myxsd="http://hello.netbureau.it/";>pippo</myxsd:name>
                        </hello></soapenv:Body></soapenv:Envelope>
17:23:03,796 DEBUG [ExternalService] Service response:
<?xml version='1.0' encoding='utf-8'?><S:Envelope 
xmlns:S="http://schemas.xmlsoap.org/soap/envelope/";><S:Body><ns2:helloResponse 
xmlns:ns2="http://hello.netbureau.it/";><return>Hello 
null</return></ns2:helloResponse></S:Body></S:Envelope>


---------- Initial Header -----------

>From      : "Wenfeng ZHAO" [email protected]
To          : "[email protected]" [email protected]
Cc          :
Date      : Wed, 23 Sep 2009 22:35:02 +0800
Subject : Re: problem invoking a real java webservice







> Hello ytrewq2002\,
>
>       Are you sure what the invoked java service returned is "Hello pippo" 
> rather than "pipo"?  See the record:
>
> 14:28:42,875 DEBUG [ASSIGN] ASSIGN Writing variable 'Out' value '<?xml 
> version="1.0" encoding="UTF-8"?>
> <message><parameters><helloResponse xmlns="http://hello.netbureau.it/";>
>                             <myxsd:return 
> xmlns:myxsd="http://hello.netbureau.it/";>pippo</myxsd:return>
>                         </helloResponse></parameters></message>'
>
>
> Regards,
> Wenfeng
>
>
> =======On 2009-09-23 at 21:23:49 ytrewq2002\ wrote: =======
>
> >hi,
> >
> >i want to call a webservice HelloWs using the <invoke> bpel statment
> >I have a process Caller.bpel that receive a soap message from a client (a 
> >coplex type with string called name)
> >It copies this string to input variable and invoke the webservices passing 
> >this variable. The webservice take
> >the string "name" and return a string "Hello" + name, where name is the 
> >content of string passed.
> >The output of invoke is passed to the <reply>
> >
> >Why i passed name="pippo" and the reply give to me "pippo"?? that is wrong 
> >because The invoke has to call the
> >web service and copy the output's variable value into the reply variable and 
> >the result would be "Hello pippo"
> >(not pippo!!**)
> >why doesn't work?
> >
> >this is the bpel process (i attached as ascii text file the ode's log)
> >
> >help please, give me an advice, thank you
> >
> >here is the bpel:
> >
> >
> ><process
> >    name="Caller"
> >    targetNamespace="http://MyTest.com/Test";
> >    xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable";
> >    xmlns:xsd="http://www.w3.org/2001/XMLSchema";
> >    
> > xmlns:sxt="http://www.sun.com/wsbpel/2.0/process/executable/SUNExtension/Trace";
> >    
> > xmlns:sxed="http://www.sun.com/wsbpel/2.0/process/executable/SUNExtension/Editor";
> >    xmlns:tns="http://MyTest.com/Test";
> >    xmlns:wshello="http://wsdl.hello.netbureau.it/";
> >    xmlns:myxsd="http://hello.netbureau.it/";
> >    >
> >     <!-- wsdl Caller + partnerLink defintion-->
> >    <import namespace="http://MyTest.com/Test"; location="Caller.wsdl" 
> > importType="http://schemas.xmlsoap.org/wsdl/"/>
> >     <!-- wsdl Ws Helloname + PartenrLinkType definition-->
> >    <import namespace="http://wsdl.hello.netbureau.it/"; 
> > location="Helloname.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"/>
> >    <!-- xsd xhema for HellonameWs -->
> >    <import namespace="http://hello.netbureau.it/"; 
> > location="Helloname.xsd_1.xsd" 
> > importType="http://www.w3.org/2001/XMLSchema"/>
> >    <partnerLinks>
> >        <partnerLink name="HelloWs" partnerLinkType="wshello:Helloname" 
> > partnerRole="WriteHelloMsgRole"/>
> >        <partnerLink name="Caller" partnerLinkType="tns:Caller" 
> > myRole="CallerProvider"/>
> >    </partnerLinks>
> >    <variables>
> >        <variable name="CallerOut" messageType="tns:CallerResponseMessage"/>
> >        <variable name="HelloOut" messageType="wshello:helloResponse"/>
> >        <variable name="HelloIn" messageType="wshello:hello"/>
> >        <variable name="ProcessIn" messageType="tns:CallerRequestMessage"/>
> >    </variables>
> >    <sequence>
> >        <receive name="ReceiveFromclient"
> >        createInstance="yes"
> >        partnerLink="Caller"
> >        operation="process" xmlns:tns="http://MyTest.com/Test";
> >        portType="tns:Caller"
> >        variable="ProcessIn"/>
> >        <assign name="Assign1">
> >            <copy>
> >                <from>
> >                    <literal>
> >                        <wshello:hello>
> >                            <myxsd:name/>
> >                        </wshello:hello>
> >                    </literal>
> >                </from>
> >                <to variable="HelloIn" part="parameters"></to>
> >            </copy>
> >            <copy>
> >                <from>$ProcessIn.payload/tns:input</from>
> >                <to>$HelloIn.parameters/myxsd:name</to>
> >            </copy>
> >        </assign>
> >        <invoke name="InvokeHelloname"
> >        partnerLink="HelloWs"
> >        operation="hello"
> >        portType="wshello:Helloname"
> >        inputVariable="HelloIn"
> >        outputVariable="HelloOut"/>
> >        <assign name="Assign2">
> >        <copy>
> >                <from>
> >                    <literal>
> >                        <tns:CallerResponse>
> >                            <tns:result/>
> >                        </tns:CallerResponse>
> >                    </literal>
> >                </from>
> >                <to part="payload" variable="CallerOut"/>
> >            </copy>
> >            <copy>
> >                <from>$HelloOut.parameters/myxsd:return</from>
> >                <to>$CallerOut.payload/tns:result</to>
> >            </copy>
> >        </assign>
> >        <reply name="ReplyToClient" partnerLink="Caller" operation="process" 
> > portType="tns:Caller" variable="CallerOut"/>
> >    </sequence>
> >
> ></process>
> >
> >
> >
> >deploy.xml:
> >
> ><deploy xmlns="http://www.apache.org/ode/schemas/dd/2007/03";
> >     xmlns:pns="http://MyTest.com/Test";
> >     xmlns:wns="http://wsdl.hello.netbureau.it/";
> >    xmlns:schemaLocation = "deploySchema.xsd">
> >
> >     <process name="pns:Caller">
> >             <active>true</active>
> >             <provide partnerLink="Caller">
> >                     <service name="pns:CallerService" port="CallerPort"/>
> >             </provide>
> >        <invoke partnerLink="HelloWs">
> >            <service name="wns:HellonameService" port="HellonamePort"/>
> >        </invoke>
> >     </process>
> ></deploy>
>
> = = = = = = = = = = = = = = = = = = = =
> ZHAO Wenfeng (???)
> Ph.D. Candidate
> http://www.bupt.edu.cn
>
>

Reply via email to