[ 
https://issues.apache.org/jira/browse/CXF-2076?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12679860#action_12679860
 ] 

njiang edited comment on CXF-2076 at 3/7/09 1:12 AM:
-----------------------------------------------------------

Since current CXF 's WrapperClass{In|Out}Interceptor just support the JAXB 
databinding, and there a quit difference between JAXB and XMLBeans type 
Instantiation, so you got that kind of error.

To walk around this issue just has DanKulp said , I tried the method 1), if the 
SEI's method parameter is void, I still get the Wrapped method like this.
 
 {code:java}
@ResponseWrapper(localName = "pingMeResponse", targetNamespace = 
"http://apache.org/hello_world_soap_http/types";, className = 
"org.apache.helloWorldSoapHttp.types.PingMeResponseDocument")
    @RequestWrapper(localName = "pingMe", targetNamespace = 
"http://apache.org/hello_world_soap_http/types";, className = 
"org.apache.helloWorldSoapHttp.types.PingMeDocument")
    @WebMethod
    public void pingMe() throws PingMeFault;
 {code}

So we need to find other way to resolve this issue.




      was (Author: njiang):
    Since current CXF 's WrapperClass{In|Out}Interceptor just support the JAXB 
databinding, and there a quit difference between JAXB and XMLBeans type 
Instantiation, so you got that kind of error.

To walk around this issue just has DanKulp said , I tried the method 1), if the 
SEI's method parameter is void, I still get the Wrapped method like this.
 {code}
@ResponseWrapper(localName = "pingMeResponse", targetNamespace = 
"http://apache.org/hello_world_soap_http/types";, className = 
"org.apache.helloWorldSoapHttp.types.PingMeResponseDocument")
    @RequestWrapper(localName = "pingMe", targetNamespace = 
"http://apache.org/hello_world_soap_http/types";, className = 
"org.apache.helloWorldSoapHttp.types.PingMeDocument")
    @WebMethod
    public void pingMe() throws PingMeFault;
 {code}

So we need to find other way to resolve this issue.



  
> InstantiationException trying to create wrapper object when using xmlbeans 
> databinding
> --------------------------------------------------------------------------------------
>
>                 Key: CXF-2076
>                 URL: https://issues.apache.org/jira/browse/CXF-2076
>             Project: CXF
>          Issue Type: Bug
>          Components: Tooling
>    Affects Versions: 2.1.4
>         Environment: 2.1.4, trunk
>            Reporter: Dave Stanley
>         Attachments: cxf_xmlbeans.tar.gz, cxf_xmlbeans_sample.patch
>
>
> I have modified the wsdl_first sample to use the xmlbeans databinding.  
> Xmlbeans is generating both an interface and a concrete type for each of the 
> types defined in my wsdl. This is causing a problem with CXF as its using the 
> interface rather than the impl to instantiate request and response wrapper 
> classes. 
> This results in the stack below which shows the InstantiationException.  Note 
> the type is org.apache.helloWorldSoapHttp.types.SayHiDocument - I think it 
> should be .. org.apache.helloWorldSoapHttp.types.impl.SayHiDocumentImpl ?
> INFO: Interceptor has thrown exception, unwinding now
> org.apache.cxf.interceptor.Fault: 
> org.apache.helloWorldSoapHttp.types.SayHiDocument
>       at 
> org.apache.cxf.jaxws.interceptors.WrapperClassOutInterceptor.handleMessage(WrapperClassOutInterceptor.java:116)
>       at 
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
>       at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:469)
>       at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:299)
>       at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:251)
>       at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
>       at 
> org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:123)
>       at $Proxy69.sayHi(Unknown Source)
>       at demo.hw.client.Client.main(Client.java:71)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>       at java.lang.reflect.Method.invoke(Method.java:585)
>       at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:290)
>       at java.lang.Thread.run(Thread.java:595)
> Caused by: org.apache.cxf.interceptor.Fault: 
> org.apache.helloWorldSoapHttp.types.SayHiDocument
>       at 
> org.apache.cxf.jaxws.interceptors.WrapperHelper$ReflectWrapperHelper.createWrapperObject(WrapperHelper.java:312)
>       at 
> org.apache.cxf.jaxws.interceptors.WrapperClassOutInterceptor.handleMessage(WrapperClassOutInterceptor.java:102)
>       ... 14 more
> Caused by: java.lang.InstantiationException: 
> org.apache.helloWorldSoapHttp.types.SayHiDocument
>       at java.lang.Class.newInstance0(Class.java:335)
>       at java.lang.Class.newInstance(Class.java:303)
>       at 
> org.apache.cxf.jaxws.interceptors.WrapperHelper$ReflectWrapperHelper.createWrapperObject(WrapperHelper.java:277)
>       ... 15 more

-- 
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