This is the line producing the NPE:

result = method.invoke(instance, parameterValues.toArray()).toString();

If you are saying that the method is in fact called, this seems to mean that it returns null and that the call of toString() on null causes the NPE.

Mabe Alex can comment on this.

-Erik

Avinder Bahra wrote:
Hi,

Thanks (Erik) for the answer to my previous question. I am however
getting an NPE when using the Delegation Processor. The processor
successfully calls the Stateless session EJB method (which prints to the
console), but then immediately throws a NPE. I have tested the EJB
method successfully with a Java client. Perhaps the XPL is incorrect?
The EJB method signature is:

   public void saveXForm( java.lang.String theform )
      throws java.rmi.RemoteException;

XPL and stack trace listings are below:

Any help appreciated.

Regards, Avinder

<p:config xmlns:p="http://www.orbeon.com/oxf/pipeline";
          xmlns:oxf="http://www.orbeon.com/oxf/processors";
          xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
          xmlns:delegation="http://orbeon.org/oxf/xml/delegation";
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>

<p:param name="data" type="output"/>

<p:processor name="oxf:delegation"> <p:input name="interface"> <config> <service id="save-xform" type="stateless-ejb"
uri="ejb/MyBeanHome"/>
</config>
</p:input>
<p:input name="call"> <delegation:execute service="save-xform" operation="saveXForm"> <theform xsi:type="xs:string">MyXformToSave</theform>
</delegation:execute>
</p:input>
<p:output name="data" ref="data"/>
</p:processor>


</p:config>

The stack trace is:

2005-02-02 16:12:26,018 INFO  org.orbeon.oxf.pipeline.InitUtils null -
/tutorial
-hello3 - Received request
Saving XForm='MyXformToSave'
2005-02-02 16:12:26,393 ERROR org.orbeon.oxf.pipeline.InitUtils null -
Exception
 with no location data
java.lang.NullPointerException
        at
org.orbeon.oxf.processor.DelegationProcessor.callMethod(DelegationPro
cessor.java:389)
        at
org.orbeon.oxf.processor.DelegationProcessor.access$400(DelegationPro
cessor.java:55)
        at
org.orbeon.oxf.processor.DelegationProcessor$2.endElement(DelegationP
rocessor.java:334)
        at org.orbeon.oxf.xml.SAXStore.replay(SAXStore.java:168)
        at
org.orbeon.oxf.processor.generator.DOMGenerator$1.readImpl(DOMGenerat
or.java:137)
        at
org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:945)

        at
org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(Proce
ssorImpl.java:1106)
        at
org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.j
ava:340)
        at
org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.j
ava:345)
        at
org.orbeon.oxf.processor.DelegationProcessor$1.readImpl(DelegationPro
cessor.java:83)
        at
org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:945)

        at
org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(Proce
ssorImpl.java:1106)
        at
org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.j
ava:340)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(Pipeli
neProcessor.java:61)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelinePro
cessor.java:97)
        at
org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.
java:505)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(Pipeli
neProcessor.java:61)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(Pipeli
neProcessor.java:95)
        at
org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:945)

        at
org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(Proce
ssorImpl.java:1106)
        at
org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.j
ava:340)
        at
org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.j
ava:345)
        at
org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcess
or.java:30)

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Erik
Bruchez
Sent: 02 February 2005 14:11
To: [email protected]
Subject: Re: [orbeon-user] Using Delegation Processor

If you want to pass a string, you should first convert the XML instance into a string. You can do this with the XML converter, for example.

http://www.orbeon.com/ois/doc/processors-converters#xml-converter

Then, with XSLT, build your "call" input document and embed the resulting string.

-Erik

Avinder Bahra wrote:

Hi,



I am using the Delegation Processor to call a stateless session EJB method. What I wan't to do is pass an Xforms instance as a string parameter to the EJB method. However the documentation example (listed


below) only shows how to pass in literal values. Is there a way to accomplish passing in an Xforms instance?



<p:config xmlns:p="http://www.orbeon.com/oxf/pipeline";

         xmlns:oxf="http://www.orbeon.com/oxf/processors";

         xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>



   <p:param name="data" type="output"/>



<p:processor name="oxf:delegation">

 <p:input name="interface">

     <config>

<service id="save-xform" type="stateless-ejb" uri="ejb/MyBeanHome"/>

     </config>

 </p:input>

 <p:input name="call">

     <delegation:execute service="save-xform" operation="saveXForm">

<theform xsi:type="xs:string">I WOULD LIKE TO SAVE XFORMS INSTANCE</theform>

     </delegation:execute>

 </p:input>

 <p:output name="data" ref="data"/>

</p:processor>





</p:config>





Any help appreciated.



Regards



Avinder







-------------------------------------------------------
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
Tool for open source databases. Create drag-&-drop reports. Save time
by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
Download a FREE copy at http://www.intelliview.com/go/osdn_nl
_______________________________________________
orbeon-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/orbeon-user



-------------------------------------------------------
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
Tool for open source databases. Create drag-&-drop reports. Save time
by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
Download a FREE copy at http://www.intelliview.com/go/osdn_nl
_______________________________________________
orbeon-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/orbeon-user



------------------------------------------------------- This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting Tool for open source databases. Create drag-&-drop reports. Save time by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. Download a FREE copy at http://www.intelliview.com/go/osdn_nl _______________________________________________ orbeon-user mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/orbeon-user

Reply via email to