Hi Alex,

Alex Boisvert wrote:
Hi Claudio,

My guess would be that your message format doesn't match the service
description, or hasn't been properly fed into the JBI bus.  We would need to
see your incoming mesage to determine this.

Right.
I wasn't able previously to see the incoming message because I had problems with logging libraries. I solved them and discovered that the root element of that message was wrong and that caused the ODE error.

Thanks.

Claudio


alex


On Fri, Apr 11, 2008 at 7:45 AM, claudio cacciari <[EMAIL PROTECTED]>
wrote:

Hi All,

I got this error, using ODE 1.1 with ServiceMix 3.1 :

ERROR [pool-6-thread-3] (GeronimoLog.java:108) - Method "run" in class
"org.apache.ode.bpel.runtime.ASSIGN" threw an unexpected exception.
java.lang.IllegalArgumentException: null parent
  at org.apache.ode.utils.DOMUtils.findChildByName(DOMUtils.java:745)
  at org.apache.ode.utils.DOMUtils.findChildByName(DOMUtils.java:740)
  at
org.apache.ode.bpel.runtime.ScopeFrame.getPartData(ScopeFrame.java:271)
  at
org.apache.ode.bpel.runtime.ScopeFrame.fetchVariableData(ScopeFrame.java:222)
  at
org.apache.ode.bpel.runtime.ExprEvaluationContextImpl.readVariable(ExprEvaluationContextImpl.java:91)
  at
org.apache.ode.bpel.elang.xpath10.runtime.JaxenContexts.getVariableValue(JaxenContexts.java:173)
  at org.jaxen.ContextSupport.getVariableValue(ContextSupport.java:224)
  at org.jaxen.Context.getVariableValue(Context.java:185)
  at
org.jaxen.expr.DefaultVariableReferenceExpr.evaluate(DefaultVariableReferenceExpr.java:121)
  at org.jaxen.expr.DefaultPathExpr.evaluate(DefaultPathExpr.java:148)
  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.evaluate(XPath10ExpressionRuntime.java:98)
  at
org.apache.ode.bpel.runtime.ExpressionLanguageRuntimeRegistry.evaluate(ExpressionLanguageRuntimeRegistry.java:80)
  at org.apache.ode.bpel.runtime.ASSIGN.evalRValue(ASSIGN.java:194)

The related bpel assign is :

<assign name="d25_tanslated_mesh_filename">
<copy>
<from xmlns:grid="http://www.a-ware.org/jbi/xsd/grid"; xmlns:mail="
http://www.a-ware.org/grid/applications/maillatools-2_0/xsd
">$n4_maillatools_data_out.body/grid:outfiles/grid:file[1]</from>
<to xmlns:grid="http://www.a-ware.org/jbi/xsd/grid
">$n5_fileTransfer_data_in.body/grid:src</to>
</copy>
</assign>

If I understand correctly, the error means that the part of the wsdl
message associated to $n4_maillatools_data_out is null.
The variable is :

<variable name="n4_maillatools_data_out"
messageType="mai:maillatools-2_0Output"/>

and the wsdl message:

<wsdl:message name="maillatools-2_0Output">
  <wsdl:part element="ns0:maillatools-2_0.response" name="body">
  </wsdl:part>
 </wsdl:message>

The code I use to create the response message of the service, which
replies to ODE is:

  MessageExchange mex;
  ServiceMixClient client;

  org.w3c.dom.Document rep = this.handleReply(um.getTask());
  javax.jbi.messaging.NormalizedMessage out = this.mex.createMessage();
  out.setProperty(PojoMarshaler.BODY, rep);
  out.setContent(new DOMSource(rep));
  this.mex.setMessage(out, "out");
  client.sendSync(this.mex);

Do you know what is it wrong ?
Any help is appreciated.

Thanks and Regards,
Claudio Cacciari

Reply via email to