[
https://issues.apache.org/jira/browse/TUSCANY-3499?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ramanjaneyulu Malisetti updated TUSCANY-3499:
---------------------------------------------
Attachment: jms-sdodatabinding.zip
source
> serializtion error while invoking method that returns Collection<DataObject>
> ----------------------------------------------------------------------------
>
> Key: TUSCANY-3499
> URL: https://issues.apache.org/jira/browse/TUSCANY-3499
> Project: Tuscany
> Issue Type: Bug
> Components: Java SCA JMS Binding Extension
> Affects Versions: Java-SCA-2.0-M2
> Environment: Windows
> Reporter: Ramanjaneyulu Malisetti
> Fix For: Java-SCA-1.6
>
> Attachments: jms-sdodatabinding.zip
>
>
> I have SCA service bound to JMS binding and using SDO
> DataBinding. I am encountering the following exception while client is
> invoking a method that returns Collection<DataObject>. Out of curiosity, I
> have added another method that returns Collection<String>, this method is
> successfully returning, but, to my surprise, client got list only with size 1
> instead of actual size of the arraylist returned by service side
> implementation.
> Here, I attached source for your reference.
> What is the wrong with serialization, why below exception shows JAXB
> databinding instead of SDO databinding?
> Why client could not receive object as it is returned by service in case of
> Collection<String>?
> Serverside
> ===========
> Mar 16, 2010 11:52:07 PM
> org.apache.tuscany.sca.binding.jms.transport.TransportServiceInterceptor
> invoke
> SEVERE: Exception invoking service 'HelloWorldService
> java.lang.RuntimeException: Cannot serialize OM Element return
> at
> org.apache.axiom.om.impl.llom.OMSourcedElementImpl.toString(OMSourcedElementImpl.java:913)
> at
> org.apache.tuscany.sca.binding.jms.provider.DefaultMessageProcessor.insertPayloadIntoJMSBytesMessage(DefaultMessageProcessor.java:235)
> at
> org.apache.tuscany.sca.binding.jms.wireformat.jmsdefault.runtime.WireFormatJMSDefaultServiceInterceptor.invokeResponse(WireFormatJMSDefaultServiceInterceptor.java:158)
> at
> org.apache.tuscany.sca.binding.jms.wireformat.jmsdefault.runtime.WireFormatJMSDefaultServiceInterceptor.invoke(WireFormatJMSDefaultServiceInterceptor.java:87)
> at
> org.apache.tuscany.sca.binding.jms.wire.CallbackDestinationInterceptor.invoke(CallbackDestinationInterceptor.java:55)
> at
> org.apache.tuscany.sca.binding.jms.wire.OperationPropertiesInterceptor.invoke(OperationPropertiesInterceptor.java:62)
> at
> org.apache.tuscany.sca.binding.jms.operationselector.jmsdefault.runtime.OperationSelectorJMSDefaultServiceInterceptor.invoke(OperationSelectorJMSDefaultServiceInterceptor.java:88)
> at
> org.apache.tuscany.sca.binding.jms.transport.TransportServiceInterceptor.invoke(TransportServiceInterceptor.java:77)
> at
> org.apache.tuscany.sca.core.assembly.RuntimeWireImpl.invoke(RuntimeWireImpl.java:163)
> at
> org.apache.tuscany.sca.host.jms.asf.ServiceInvoker.invokeService(ServiceInvoker.java:94)
> at
> org.apache.tuscany.sca.host.jms.asf.ServiceInvoker.onMessage(ServiceInvoker.java:70)
> at
> org.apache.activemq.ActiveMQMessageConsumer.dispatch(ActiveMQMessageConsumer.java:1021)
> at
> org.apache.activemq.ActiveMQSessionExecutor.dispatch(ActiveMQSessionExecutor.java:122)
> at
> org.apache.activemq.ActiveMQSessionExecutor.iterate(ActiveMQSessionExecutor.java:192)
> at
> org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:122)
> at
> org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:43)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
> at java.lang.Thread.run(Thread.java:619)
> Caused by: javax.xml.stream.XMLStreamException:
> javax.xml.bind.MarshalException
> - with linked exception:
> [javax.xml.bind.JAXBException: class java.util.ArrayList nor any of its super
> class is known to this context.]
> at
> org.apache.tuscany.sca.databinding.jaxb.axiom.JAXBDataSource.serialize(JAXBDataSource.java:158)
> at
> org.apache.axiom.om.impl.llom.OMSourcedElementImpl.toString(OMSourcedElementImpl.java:908)
> ... 18 more
> Caused by: javax.xml.bind.MarshalException
> - with linked exception:
> [javax.xml.bind.JAXBException: class java.util.ArrayList nor any of its super
> class is known to this context.]
> at
> com.sun.xml.bind.v2.runtime.MarshallerImpl.write(MarshallerImpl.java:331)
> at
> com.sun.xml.bind.v2.runtime.MarshallerImpl.marshal(MarshallerImpl.java:257)
> at
> javax.xml.bind.helpers.AbstractMarshallerImpl.marshal(AbstractMarshallerImpl.java:96)
> at
> org.apache.tuscany.sca.databinding.jaxb.axiom.JAXBDataSource$3.run(JAXBDataSource.java:150)
> at java.security.AccessController.doPrivileged(Native Method)
> at
> org.apache.tuscany.sca.databinding.jaxb.axiom.JAXBDataSource.serialize(JAXBDataSource.java:145)
> ... 19 more
> Caused by: javax.xml.bind.JAXBException: class java.util.ArrayList nor any of
> its super class is known to this context.
> at
> com.sun.xml.bind.v2.runtime.XMLSerializer.reportError(XMLSerializer.java:242)
> at
> com.sun.xml.bind.v2.runtime.XMLSerializer.reportError(XMLSerializer.java:257)
> at
> com.sun.xml.bind.v2.runtime.XMLSerializer.childAsXsiType(XMLSerializer.java:649)
> at
> com.sun.xml.bind.v2.runtime.ElementBeanInfoImpl$1.serializeBody(ElementBeanInfoImpl.java:151)
> at
> com.sun.xml.bind.v2.runtime.ElementBeanInfoImpl$1.serializeBody(ElementBeanInfoImpl.java:185)
> at
> com.sun.xml.bind.v2.runtime.ElementBeanInfoImpl.serializeBody(ElementBeanInfoImpl.java:305)
> at
> com.sun.xml.bind.v2.runtime.ElementBeanInfoImpl.serializeRoot(ElementBeanInfoImpl.java:312)
> at
> com.sun.xml.bind.v2.runtime.ElementBeanInfoImpl.serializeRoot(ElementBeanInfoImpl.java:71)
> at
> com.sun.xml.bind.v2.runtime.XMLSerializer.childAsRoot(XMLSerializer.java:490)
> at
> com.sun.xml.bind.v2.runtime.MarshallerImpl.write(MarshallerImpl.java:328)
> ... 24 more
> Caused by: javax.xml.bind.JAXBException: class java.util.ArrayList nor any of
> its super class is known to this context.
> at
> com.sun.xml.bind.v2.runtime.JAXBContextImpl.getBeanInfo(JAXBContextImpl.java:556)
> at
> com.sun.xml.bind.v2.runtime.XMLSerializer.childAsXsiType(XMLSerializer.java:644)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.