Hi Raymond,

Yeah, I do have both databinding-axiom and databinding-jaxb-axiom in my
classpath.

On Tue, Nov 4, 2008 at 10:38 PM, Raymond Feng <[EMAIL PROTECTED]> wrote:

> Hi,
>
> Axiom databinding does support copy. Do you have databinding-axiom on your
> classpath?
>
> Thanks,
> Raymond
>
> From: Ramkumar R
> Sent: Tuesday, November 04, 2008 4:10 AM
> To: [email protected]
> Subject: Databinding issue when axis2 service uses OMElement as parameter
> types.
>
>
>
> I am seeing the below shown exception, when axis2 service uses OMElement as
> parameter types
>
> @Remotable
> public interface FileUploadService {
>   public String saveFile(String filename, OMElement attachment) throws
> Exception;
> }
>
> Exception in thread "main" java.lang.IllegalArgumentException:
> Pass-by-value is not supported for the given object
>   at
> org.apache.tuscany.sca.databinding.javabeans.JavaBeansDataBinding.copy(JavaBeansDataBinding.java:106)
>   at
> org.apache.tuscany.sca.databinding.DefaultDataBindingExtensionPoint$LazyDataBinding.copy(DefaultDataBindingExtensionPoint.java:155)
>   at
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.copy(PassByValueInterceptor.java:256)
>   at
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.copyFault(PassByValueInterceptor.java:136)
>   at
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke(PassByValueInterceptor.java:119)
>   at
> org.apache.tuscany.sca.binding.sca.impl.SCABindingInvoker.invoke(SCABindingInvoker.java:61)
>   at
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke(PassByValueInterceptor.java:112)
>   at
> org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:287)
>   at
> org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:154)
>   at $Proxy14.getGreetings(Unknown Source)
>   at helloworld.HelloWorldClient.main(HelloWorldClient.java:47)
> Caused by: java.io.NotSerializableException:
> com.sun.xml.bind.v2.model.nav.ReflectionNavigator$4
>   at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1108)
>   at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:324)
>   at java.util.ArrayList.writeObject(ArrayList.java:595)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
>   at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:615)
>   at
> java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:972)
>   at
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1426)
>   at
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1377)
>   at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1106)
>   at
> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1462)
>   at
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1434)
>   at
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1377)
>   at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1106)
>   at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:324)
>   at java.util.ArrayList.writeObject(ArrayList.java:595)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
>   at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:615)
>   at
> java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:972)
>   at
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1426)
>   at
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1377)
>   at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1106)
>   at
> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1462)
>   at
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1434)
>   at
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1377)
>   at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1106)
>   at
> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1462)
>   at
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1434)
>   at
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1377)
>   at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1106)
>   at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:324)
>   at java.util.ArrayList.writeObject(ArrayList.java:595)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
>   at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:615)
>   at
> java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:972)
>   at
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1426)
>   at
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1377)
>   at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1106)
>   at
> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1462)
>   at
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1434)
>   at
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1377)
>   at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1106)
>   at
> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1462)
>   at
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1434)
>   at
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1377)
>   at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1106)
>   at
> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1462)
>   at
> java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:413)
>   at java.lang.Throwable.writeObject(Throwable.java:320)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
>   at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:615)
>   at
> java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:972)
>   at
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1426)
>   at
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1377)
>   at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1106)
>   at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:324)
>   at
> org.apache.tuscany.sca.databinding.javabeans.JavaBeansDataBinding.copy(JavaBeansDataBinding.java:75)
>   ... 10 more
>
> Looks like pass-by-value is not supported for OMElement. Can someone
> clarify, why we have it this way?
>
> --
> Thanks & Regards,
> Ramkumar Ramalingam
>



-- 
Thanks & Regards,
Ramkumar Ramalingam

Reply via email to