ode-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Anup Chandran <anup.chand...@3ds.com>
Subject Re: Assign Activity : Copy to message variable xxxx requires a message for the r-value
Date Mon, 13 Aug 2007 17:33:53 GMT

Alex,

Changed my BPEL to match the from and to  datatypes. Yes the deploy issue
has gone away. This is the modified BPEL file.


<?xml version="1.0" encoding="UTF-8"?>
<bpws:process
xmlns:bpws="http://schemas.xmlsoap.org/ws/2004/03/business-process/"
xmlns:ns="http://client.epm.apps.matrixone.com"
xmlns:tns="http://eclipse.org/bpel/sample" exitOnStandardFault="yes"
name="ECRProcess" suppressJoinFailure="yes"
targetNamespace="http://eclipse.org/bpel/sample">
<bpws:import importType="http://schemas.xmlsoap.org/wsdl/"
location="ECRProcess.wsdl" namespace="http://eclipse.org/bpel/sample"/>
<bpws:import importType="http://schemas.xmlsoap.org/wsdl/"
location="ComMatrixoneAppsEpmMyECR.wsdl"
namespace="http://client.epm.apps.matrixone.com"/>
<bpws:partnerLinks>
<bpws:partnerLink myRole="ECRProcessProvider" name="client"
partnerLinkType="tns:ECRProcess" partnerRole="ECRProcessRequester"/>
<bpws:partnerLink name="CreateECRPartnerLink" partnerLinkType="ns:CreateECR"
partnerRole="you"/>
</bpws:partnerLinks>
<bpws:variables>
<bpws:variable messageType="tns:ECRProcessRequestMessage" name="input"/>
<bpws:variable messageType="tns:ECRProcessResponseMessage" name="output"/>
<bpws:variable messageType="ns:createBusResponse"
name="CreateECRPartnerLinkResponse"/>
<bpws:variable messageType="ns:createBusRequest"
name="CreateECRPartnerLinkRequest"/>
</bpws:variables>
<bpws:sequence name="main">
<bpws:scope name="Design Change Proposal">
<bpws:sequence name="HiddenSequence">
<bpws:receive createInstance="yes" name="receiveCreationRequest"
operation="receiveIssue" partnerLink="client" portType="tns:ECRProcess"
variable="input"/>
<bpws:assign name="Assign" validate="no">
<bpws:copy>
<bpws:from><![CDATA[concat("Hello,*******************",
$input.payload/tns:username," ", $input.payload/tns:password
," ",$input.payload/tns:type," ",$input.payload/tns:name,"
",$input.payload/tns:revision," ",$input.payload/tns:policy)]]></bpws:from>
<bpws:to part="payload" variable="output"/>
</bpws:copy>
</bpws:assign>
<bpws:assign name="AssignUsername" validate="no">
<bpws:copy>
<bpws:from part="payload" variable="input">
<bpws:query
queryLanguage="http://www.w3.org/TR/1999/REC-xpath-19991116"><![CDATA[/tns:username]]></bpws:query>
</bpws:from>
<bpws:to part="username" variable="CreateECRPartnerLinkRequest"/>
</bpws:copy>
</bpws:assign>
<bpws:assign name="AssignPassword" validate="no">
<bpws:copy>
<bpws:from part="payload" variable="input">
<bpws:query
queryLanguage="http://www.w3.org/TR/1999/REC-xpath-19991116"><![CDATA[/tns:password]]></bpws:query>
</bpws:from>
<bpws:to part="password" variable="CreateECRPartnerLinkRequest"/>
</bpws:copy>
</bpws:assign>
<bpws:assign name="AssignType" validate="no">
<bpws:copy>
<bpws:from part="payload" variable="input">
<bpws:query
queryLanguage="http://www.w3.org/TR/1999/REC-xpath-19991116"><![CDATA[/tns:type]]></bpws:query>
</bpws:from>
<bpws:to part="type" variable="CreateECRPartnerLinkRequest"/>
</bpws:copy>
</bpws:assign>
<bpws:assign name="AssignName" validate="no">
<bpws:copy>
<bpws:from part="payload" variable="input">
<bpws:query
queryLanguage="http://www.w3.org/TR/1999/REC-xpath-19991116"><![CDATA[/tns:name]]></bpws:query>
</bpws:from>
<bpws:to part="name" variable="CreateECRPartnerLinkRequest"/>
</bpws:copy>
</bpws:assign>
<bpws:assign name="AssignRev" validate="no">
<bpws:copy>
<bpws:from part="payload" variable="input">
<bpws:query
queryLanguage="http://www.w3.org/TR/1999/REC-xpath-19991116"><![CDATA[/tns:revision]]></bpws:query>
</bpws:from>
<bpws:to part="rev" variable="CreateECRPartnerLinkRequest"/>
</bpws:copy>
</bpws:assign>
<bpws:assign name="AssignVault" validate="no">
<bpws:copy>
<bpws:from part="payload" variable="input">
<bpws:query
queryLanguage="http://www.w3.org/TR/1999/REC-xpath-19991116"><![CDATA[/tns:vault]]></bpws:query>
</bpws:from>
<bpws:to part="vault" variable="CreateECRPartnerLinkRequest"/>
</bpws:copy>
</bpws:assign>
<bpws:assign name="AssignPolicy" validate="no">
<bpws:copy>
<bpws:from part="payload" variable="input">
<bpws:query
queryLanguage="http://www.w3.org/TR/1999/REC-xpath-19991116"><![CDATA[/tns:policy]]></bpws:query>
</bpws:from>
<bpws:to part="policy" variable="CreateECRPartnerLinkRequest"/>
</bpws:copy>
</bpws:assign>
<bpws:assign name="SystemOut" validate="no">
<bpws:copy>
<bpws:from><![CDATA[concat("CreateECRPartnerLinkRequest ...",
$CreateECRPartnerLinkRequest.username," ",
$CreateECRPartnerLinkRequest.password
," ",$CreateECRPartnerLinkRequest.type,"
",$CreateECRPartnerLinkRequest.name,"
",$CreateECRPartnerLinkRequest.revision,"
",$CreateECRPartnerLinkRequest.policy)]]></bpws:from>
<bpws:to part="payload" variable="output"/>
</bpws:copy>
</bpws:assign>
<bpws:invoke inputVariable="CreateECRPartnerLinkRequest" name="CreateECR"
operation="createBus" outputVariable="CreateECRPartnerLinkResponse"
partnerLink="CreateECRPartnerLink" portType="ns:CreateECR"/>
<bpws:invoke inputVariable="output" name="callbackClient"
operation="onResult" partnerLink="client"
portType="tns:ECRProcessCallback"/>
</bpws:sequence>
</bpws:scope>
</bpws:sequence>
</bpws:process>



Now when i instantiate the process i get these ERRORS:

DEBUG - GeronimoLog.debug(66) | SELECT: PickResponseChannel#9: FOUND match
for N
EW instance mexRef={MyRoleMex#hqejbhcnphr2ht99iw467p [Client
hqejbhcnphr2ht99iw4
67o] calling
{http://eclipse.org/bpel/sample}ECRProcessInvokeService.receiveIssu
e(...)}
00:47:19,677 DEBUG [BpelProcess] SELECT: PickResponseChannel#9: FOUND match
for
NEW instance mexRef={MyRoleMex#hqejbhcnphr2ht99iw467p [Client
hqejbhcnphr2ht99iw
467o] calling
{http://eclipse.org/bpel/sample}ECRProcessInvokeService.receiveIss
ue(...)}
ERROR - GeronimoLog.error(108) | Method "run" in class
"org.apache.ode.bpel.runt
ime.ASSIGN" threw an unexpected exception.
java.lang.NullPointerException
        at
org.apache.ode.bpel.elang.xpath10.runtime.JaxenContexts.getVariableVa
lue(JaxenContexts.java:175)
        at
org.jaxen.ContextSupport.getVariableValue(ContextSupport.java:224)
        at org.jaxen.Context.getVariableValue(Context.java:185)
        at
org.jaxen.expr.DefaultVariableReferenceExpr.evaluate(DefaultVariableR
eferenceExpr.java:121)
        at
org.jaxen.expr.DefaultFunctionCallExpr.evaluateParams(DefaultFunction
CallExpr.java:200)
        at
org.jaxen.expr.DefaultFunctionCallExpr.evaluate(DefaultFunctionCallEx
pr.java:184)
        at org.jaxen.expr.DefaultXPathExpr.asList(DefaultXPathExpr.java:112)
        at org.jaxen.BaseXPath.selectNodesForContext(BaseXPath.java:688)
        at org.jaxen.BaseXPath.selectNodes(BaseXPath.java:227)
        at
org.apache.ode.bpel.elang.xpath10.runtime.XPath10ExpressionRuntime.ev
aluate(XPath10ExpressionRuntime.java:94)
        at
org.apache.ode.bpel.runtime.ExpressionLanguageRuntimeRegistry.evaluat
e(ExpressionLanguageRuntimeRegistry.java:80)
        at org.apache.ode.bpel.runtime.ASSIGN.evalRValue(ASSIGN.java:192)
        at org.apache.ode.bpel.runtime.ASSIGN.copy(ASSIGN.java:356)
        at org.apache.ode.bpel.runtime.ASSIGN.run(ASSIGN.java:79)
        at sun.reflect.GeneratedMethodAccessor49.invoke(Unknown Source)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at
org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:4
51)
        at org.apache.ode.jacob.vpu.JacobVPU.execute(JacobVPU.java:139)
        at
org.apache.ode.bpel.engine.BpelRuntimeContextImpl.execute(BpelRuntime
ContextImpl.java:817)
        at
org.apache.ode.bpel.engine.PartnerLinkMyRoleImpl.invokeMyRole(Partner
LinkMyRoleImpl.java:193)
        at
org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java
:153)








Alex Boisvert wrote:
> 
> On 8/10/07, Anup Chandran <anup.chandran@3ds.com> wrote:
>>
>> <bpws:assign name="AssignForInvoke" validate="no">
>>   <bpws:copy>
>>     <bpws:from part="payload" variable="input"/>
>>     <bpws:to variable="CreateECRPartnerLinkRequest"/>
>>   </bpws:copy>
>> </bpws:assign>
>>
>> I get the following error on deploy:
>>
>> ERROR [BpelC]
>> file:/C:/apache-tomcat-5.5.20/webapps/ode/WEB-INF/processes/ECRProcess/ECRProcess.bpel:25:
>> error: [CopyToMessageFromNonMessage]
>> Copy to message variable CreateECRPartnerLinkRequest requires a message
>> for the
>> r-value.
> 
> 
> The <to> and <from> must be type-compatible.    In this case your <from>
> is
> a message part (I'm guessing an element of complexType) whereas the <to>
> is
> a message type.   So you're missing a the "part" attribute on the <to> in
> order to resolve a compatible message part.
> 
> alex
> 
> 

-- 
View this message in context: http://www.nabble.com/Assign-Activity-%3A-Copy-to-message-variable-xxxx-requires-a-message-for-the-r-value-tf4252542.html#a12130585
Sent from the Apache Ode User mailing list archive at Nabble.com.


Mime
View raw message