[ 
https://issues.apache.org/jira/browse/CXF-3048?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]
Sébastien updated CXF-3048:
---------------------------

    Attachment: SolifeXFireServiceException.java
                OfferService.java
                stac-trace-xbean.log

> "use of JAX-WS-specific types" at runtime with an auto generated XBean client
> -----------------------------------------------------------------------------
>
>                 Key: CXF-3048
>                 URL: https://issues.apache.org/jira/browse/CXF-3048
>             Project: CXF
>          Issue Type: Bug
>          Components: OtherDatabindings
>    Affects Versions: 2.2.10
>            Reporter: Sébastien
>         Attachments: OfferService.java, SolifeXFireServiceException.java, 
> stac-trace-xbean.log
>
>
> Once my client has been generated from my WSDL by using cxf-codegen-plugin, 
> the following exception occurs:
> {code}
> Caused by: org.apache.cxf.service.factory.ServiceConstructionException: 
> Message part 
> {http://www.X.com/is/xml/core/model/util/exception}SolifeXFireServiceException
>  of Message 
> {http://www.X.com/is/core/services}SolifeXFireServiceException cannot be 
> processed. This can be caused by the use of JAX-WS-specific types without the 
> JAX-WS service factory bean.
>       at 
> org.apache.cxf.service.factory.ReflectionServiceFactoryBean.checkForElement(ReflectionServiceFactoryBean.java:1036)
>       at 
> org.apache.cxf.service.factory.ReflectionServiceFactoryBean.buildServiceFromClass(ReflectionServiceFactoryBean.java:455)
>       at 
> org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.buildServiceFromClass(JaxWsServiceFactoryBean.java:637)
>       at 
> org.apache.cxf.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:492)
> {code}
> The generated code seems to be "normal". The client is really a jax-ws client 
> declared by the CXF namespace:
> {code}
>     <jaxws:client id="offerService"
>                   serviceClass="com.bsb.is.core.services.OfferService"
>                   address="${ws.base.url}/OfferService?wsdl">
>         <jaxws:dataBinding>
>             <bean class="org.apache.cxf.xmlbeans.XmlBeansDataBinding"/>
>         </jaxws:dataBinding>
>     </jaxws:client>
> {code}
> I've tried:
> - removing @WebParam, @WebResult annotations everywhere
> - removing the @SoapBinding annotation,
> - removing the @DataBinding annotation
> Note that if I remove "throws SolifeXFireServiceException" on the service 
> interface, my client works. The exception is defined like this:
> {code}
> package com.X.is.core.services;
> import javax.xml.ws.WebFault;
> /**
>  * This class was generated by Apache CXF 2.2.10
>  * Thu Oct 07 14:18:53 CEST 2010
>  * Generated source version: 2.2.10
>  * 
>  */
> @WebFault(name = "SolifeExceptionDetail", targetNamespace = 
> "http://www.X.com/is/xml/core/model/util/exception";)
> public class SolifeXFireServiceException extends Exception {
> //    public static final long serialVersionUID = 20101007141853L;
>     
>     private com.X.is.xml.core.model.util.exception.SolifeExceptionDetail 
> solifeExceptionDetail;
>     public SolifeXFireServiceException() {
>         super();
>     }
>     
>     public SolifeXFireServiceException(String message) {
>         super(message);
>     }
>     
>     public SolifeXFireServiceException(String message, Throwable cause) {
>         super(message, cause);
>     }
>     public SolifeXFireServiceException(String message, 
> com.X.is.xml.core.model.util.exception.SolifeExceptionDetail 
> solifeExceptionDetail) {
>         super(message);
>         this.solifeExceptionDetail = solifeExceptionDetail;
>     }
>     public SolifeXFireServiceException(String message, 
> com.X.is.xml.core.model.util.exception.SolifeExceptionDetail 
> solifeExceptionDetail, Throwable cause) {
>         super(message, cause);
>         this.solifeExceptionDetail = solifeExceptionDetail;
>     }
>     public com.X.is.xml.core.model.util.exception.SolifeExceptionDetail 
> getFaultInfo() {
>         return this.solifeExceptionDetail;
>     }
> }
> {code}

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