You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by "Simon Laws (Updated) (JIRA)" <de...@tuscany.apache.org> on 2012/02/18 18:10:59 UTC

[jira] [Updated] (TUSCANY-3459) JSON-RPC (and other) binding fails if Interface is marked as remotable only in the composite

     [ https://issues.apache.org/jira/browse/TUSCANY-3459?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Simon Laws updated TUSCANY-3459:
--------------------------------

    Attachment: 3459.patch

General changes to make the infrastructure apply the remotable overide. 
                
> JSON-RPC (and other) binding fails if Interface is marked as remotable only in the composite 
> ---------------------------------------------------------------------------------------------
>
>                 Key: TUSCANY-3459
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-3459
>             Project: Tuscany
>          Issue Type: Bug
>          Components: Java SCA Integration Tests
>    Affects Versions: Java-SCA-2.x
>            Reporter: Luciano Resende
>            Assignee: Luciano Resende
>             Fix For: Java-SCA-2.x
>
>         Attachments: 3459.patch
>
>
> public interface Catalog {
>     Item[] get();
> }
> 	<component name="VegetablesCatalog">
> 		<implementation.java class="services.sca.FruitsCatalogImpl"/> 
> 		<service name="Catalog">
> 			<interface.java interface="services.Catalog" remotable="true"/>
> 			<tuscany:binding.jsonrpc uri="http://localhost:8085/VegetableCatalog" />
>    		</service>	
> 	</component> 
> at $Proxy7.get(Unknown Source)
> 	at services.sca.CatalogAggregatorImpl.get(CatalogAggregatorImpl.java:40)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at org.apache.tuscany.sca.implementation.java.invocation.JavaImplementationInvoker.invoke(JavaImplementationInvoker.java:115)
> 	at org.apache.tuscany.sca.binding.sca.provider.SCABindingInvoker.invoke(SCABindingInvoker.java:61)
> 	at org.apache.tuscany.sca.core.invocation.impl.JDKInvocationHandler.invoke(JDKInvocationHandler.java:236)
> 	at org.apache.tuscany.sca.core.invocation.impl.JDKInvocationHandler.invoke(JDKInvocationHandler.java:106)
> 	at $Proxy7.get(Unknown Source)
> 	at org.apache.tuscany.sca.performance.CatalogRemoteJsonRPCTest.testCatalog(CatalogRemoteJsonRPCTest.java:46)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
> 	at junit.extensions.TestDecorator.run(TestDecorator.java:32)
> 	at junit.extensions.RepeatedTest.run(RepeatedTest.java:30)
> 	at com.clarkware.junitperf.ThreadedTest$TestRunner.run(Unknown Source)
> 	at java.lang.Thread.run(Thread.java:637)
> Caused by: org.jabsorb.serializer.UnmarshallException: element 0 no serializer found that can unmarshall java.lang.String to services.Item
> 	at org.jabsorb.serializer.impl.ArraySerializer.unmarshall(ArraySerializer.java:216)
> 	at org.jabsorb.JSONSerializer.unmarshall(JSONSerializer.java:692)
> 	at org.jabsorb.client.Client.invoke(Client.java:226)
> 	at org.jabsorb.client.Client.invoke(Client.java:156)
> 	at org.apache.tuscany.sca.binding.jsonrpc.provider.JSONRPCClientInvoker.invoke(JSONRPCClientInvoker.java:60)
> 	at org.apache.tuscany.sca.core.invocation.impl.JDKInvocationHandler.invoke(JDKInvocationHandler.java:236)
> 	at org.apache.tuscany.sca.core.invocation.impl.JDKInvocationHandler.invoke(JDKInvocationHandler.java:106)
> 	... 27 more
> Caused by: org.jabsorb.serializer.UnmarshallException: no serializer found that can unmarshall java.lang.String to services.Item
> 	at org.jabsorb.JSONSerializer.unmarshall(JSONSerializer.java:705)
> 	at org.jabsorb.serializer.impl.ArraySerializer.unmarshall(ArraySerializer.java:209)
> 	... 33 more

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira