So I have XML schemas from a client, and I have compiled them with XMLBeans
2.2.0 into java objects.  now I want to use those objects as input and
response parameters for some CXF generated web services.  I have tried CXF
versions 2.2.7 and 2.4.0.

I am deploying this in Weblogic 10.3.3 using Spring configuration.

So in my Java class I have tried using the generated document interface, the
implemenation class and the type class but none of these make any
difference.  My interface is setup as:

@WebService(name = "NasuProcessor", targetNamespace = "http://www.test.com";)
@SOAPBinding(style=Style.DOCUMENT, use=Use.LITERAL,
parameterStyle=ParameterStyle.WRAPPED)
public interface NasuProcessor {
        @WebMethod
        public MmmfResponseImpl wsProcess(@WebParam(name = "nasu") 
MmmfAccountImpl
nasuInput);

}


Most of the details that I can find simply state that I have to add the
XmlBeansDataBinding to my service configuration:
    <jaxws:endpoint id="NasuProcessorBasicAuth"
        implementor="#nasuProcessor"
        address="/NasuProcessorBasicAuth">
        <jaxws:dataBinding>
            <bean class="org.apache.cxf.xmlbeans.XmlBeansDataBinding" />
        </jaxws:dataBinding>        
        <jaxws:inInterceptors>
            <ref bean="securityInterceptor"/>
        </jaxws:inInterceptors>
    </jaxws:endpoint>

so I've tried this but I continue to receive the following exceptions.  it
just seems that the dataBinding is not being used.


Jul 15, 2011 12:03:20 PM
org.apache.cxf.service.factory.ReflectionServiceFactoryBean
buildServiceFromClass
INFO: Creating Service {http://www.test.com}NasuProcessorImplService from
class com.test.processors.nasu.NasuProcessor
Jul 15, 2011 12:03:20 PM org.apache.cxf.endpoint.ServerImpl initDestination
INFO: Setting the server's publish address to be /NasuProcessorBasicAuth

Caused By: java.security.PrivilegedActionException:
com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 7 counts of
IllegalAnnotationExceptions
noNamespace.impl.MmmfAccountDocumentImpl$MmmfAccountImpl does not have a
no-arg default constructor.
        this problem is related to the following location:
                at noNamespace.impl.MmmfAccountDocumentImpl$MmmfAccountImpl
                at public 
noNamespace.impl.MmmfAccountDocumentImpl$MmmfAccountImpl
com.test.processors.maint.jaxws.WsProcess.maint
                at com.test.processors.maint.jaxws.WsProcess
noNamespace.MmmfAccountDocument$MmmfAccount$AddressInfo is an interface, and
JAXB can't handle interfaces.
        this problem is related to the following location:
                at noNamespace.MmmfAccountDocument$MmmfAccount$AddressInfo
                at public 
noNamespace.MmmfAccountDocument$MmmfAccount$AddressInfo[]
noNamespace.impl.MmmfAccountDocumentImpl$MmmfAccountImpl.getAddressInfoArray()
                at noNamespace.impl.MmmfAccountDocumentImpl$MmmfAccountImpl
                at public 
noNamespace.impl.MmmfAccountDocumentImpl$MmmfAccountImpl
com.test.processors.maint.jaxws.WsProcess.maint
                at com.test.processors.maint.jaxws.WsProcess
noNamespace.MmmfAccountDocument$MmmfAccount$AddressInfo does not have a
no-arg default constructor.
        this problem is related to the following location:
                at noNamespace.MmmfAccountDocument$MmmfAccount$AddressInfo
                at public 
noNamespace.MmmfAccountDocument$MmmfAccount$AddressInfo[]
noNamespace.impl.MmmfAccountDocumentImpl$MmmfAccountImpl.getAddressInfoArray()
                at noNamespace.impl.MmmfAccountDocumentImpl$MmmfAccountImpl
                at public 
noNamespace.impl.MmmfAccountDocumentImpl$MmmfAccountImpl
com.test.processors.maint.jaxws.WsProcess.maint
                at com.test.processors.maint.jaxws.WsProcess
org.apache.xmlbeans.impl.values.XmlComplexContentImpl does not have a no-arg
default constructor.
        this problem is related to the following location:
                at org.apache.xmlbeans.impl.values.XmlComplexContentImpl
                at noNamespace.impl.MmmfAccountDocumentImpl$MmmfAccountImpl
                at public 
noNamespace.impl.MmmfAccountDocumentImpl$MmmfAccountImpl
com.test.processors.maint.jaxws.WsProcess.maint
                at com.test.processors.maint.jaxws.WsProcess
org.apache.xmlbeans.StringEnumAbstractBase does not have a no-arg default
constructor.
        this problem is related to the following location:
                at org.apache.xmlbeans.StringEnumAbstractBase
                at public org.apache.xmlbeans.StringEnumAbstractBase
org.apache.xmlbeans.impl.values.XmlObjectBase.getEnumValue()
                at org.apache.xmlbeans.impl.values.XmlObjectBase
                at org.apache.xmlbeans.impl.values.XmlComplexContentImpl
                at noNamespace.impl.MmmfAccountDocumentImpl$MmmfAccountImpl
                at public 
noNamespace.impl.MmmfAccountDocumentImpl$MmmfAccountImpl
com.test.processors.maint.jaxws.WsProcess.maint
                at com.test.processors.maint.jaxws.WsProcess
org.apache.xmlbeans.GDate does not have a no-arg default constructor.
        this problem is related to the following location:
                at org.apache.xmlbeans.GDate
                at public org.apache.xmlbeans.GDate
org.apache.xmlbeans.impl.values.XmlObjectBase.getGDateValue()
                at org.apache.xmlbeans.impl.values.XmlObjectBase
                at org.apache.xmlbeans.impl.values.XmlComplexContentImpl
                at noNamespace.impl.MmmfAccountDocumentImpl$MmmfAccountImpl
                at public 
noNamespace.impl.MmmfAccountDocumentImpl$MmmfAccountImpl
com.test.processors.maint.jaxws.WsProcess.maint
                at comtest.processors.maint.jaxws.WsProcess
noNamespace.impl.MmmfResponseDocumentImpl$MmmfResponseImpl does not have a
no-arg default constructor.
        this problem is related to the following location:
                at noNamespace.impl.MmmfResponseDocumentImpl$MmmfResponseImpl
                at public 
noNamespace.impl.MmmfResponseDocumentImpl$MmmfResponseImpl
com.test.processors.maint.jaxws.WsProcessResponse._return
                at com.test.processors.maint.jaxws.WsProcessResponse

        at java.security.AccessController.doPrivileged(Native Method)
        at
com.sun.xml.ws.model.AbstractSEIModelImpl.createJAXBContext(AbstractSEIModelImpl.java:151)
        at
com.sun.xml.ws.model.AbstractSEIModelImpl.postProcess(AbstractSEIModelImpl.java:94)
        at
com.sun.xml.ws.model.RuntimeModeler.buildRuntimeModel(RuntimeModeler.java:265)
        at
com.sun.xml.ws.server.EndpointFactory.createSEIModel(EndpointFactory.java:363)
        Truncated. see log file for complete stacktrace
  
Can someone help?  

--
View this message in context: 
http://cxf.547215.n5.nabble.com/CXF-Java-first-service-using-XMLBean-generated-objects-as-the-input-and-output-parameters-tp4591548p4591548.html
Sent from the cxf-dev mailing list archive at Nabble.com.

Reply via email to