[ 
https://issues.apache.org/jira/browse/TUSCANY-3681?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12913595#action_12913595
 ] 

Simon Nash commented on TUSCANY-3681:
-------------------------------------

As this is a Tuscany API in 1.x, it may well have limitations such as not being 
able to support bindings other than binding.sca.

When I have used this API in 1.x (for example, in the travel sample) I have 
worked around this problem by using an extra component as described by Scott.  
This also has the advantage that the extra component can be local to the client 
even though the service being invoked is remote.

> NullPointerException in WireFormatJMSDefaultReferenceInterceptor
> ----------------------------------------------------------------
>
>                 Key: TUSCANY-3681
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-3681
>             Project: Tuscany
>          Issue Type: Bug
>    Affects Versions: Java-SCA-1.6
>         Environment: JDK 1.6.0_21, Windows XP
>            Reporter: Sebastian Millies
>         Attachments: test.zip
>
>
> I call a service method exposed by a JMS binding. However, at the time when 
> the constructor of 
> org.apache.tuscany.sca.binding.jms.wireformat.jmsdefault.runtim.WireFormatJMSDefaultReferenceInterceptor
> is executed, the inputWrapperMap argument is empty (size 0), which leads to a 
> NullPointerException later on when the requestMsg is constructed in method 
> invokeRequest.
> The stack trace is this:
> java.lang.NullPointerException
>       at 
> org.apache.tuscany.sca.binding.jms.wireformat.jmsdefault.runtime.WireFormatJMSDefaultReferenceInterceptor.invokeRequest(WireFormatJMSDefaultReferenceInterceptor.java:99)
>       at 
> org.apache.tuscany.sca.binding.jms.wireformat.jmsdefault.runtime.WireFormatJMSDefaultReferenceInterceptor.invoke(WireFormatJMSDefaultReferenceInterceptor.java:78)
>       at 
> org.apache.tuscany.sca.binding.jms.provider.RRBJMSBindingInvoker.invoke(RRBJMSBindingInvoker.java:203)
>       at 
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke(PassByValueInterceptor.java:55)
>       at 
> org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:349)
>       at 
> org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:193)
>       at $Proxy10.log_lmt(Unknown Source)
>       at logtester.LogServiceTester.main(LogServiceTester.java:49)
> strangely, the Exception goes away when I specify a wire format of 
> "jmsTextXML"
> on the binding (as shown below), but not if I specify "jmsdefault". I don't 
> expect to be passing text messages. 
> <service name="LogService">
>       <interface.java interface="com.softwareag.ps.platform.log.LogService"/>
>       <binding.jms 
> initialContextFactory="org.apache.activemq.jndi.ActiveMQInitialContextFactory"
>  jndiURL="tcp://localhost:61619">
>         <destination create="ifnotexist" name="RequestQueue" type="queue"/>
>         <ts:wireFormat.jmsTextXML/>
>       </binding.jms>
>     </service>
> I attach a very bare bones Eclipse project with one interface, one impl 
> class, one composite file and one testdriver. The project uses a user library 
> called TUSCANY for the Tuscany classes.
> -- Sebastian

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to