cxf-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Zarar Siddiqi <zar...@gmail.com>
Subject Re: UnsupportedOperationException when using @WebFault with Aegis binding
Date Wed, 08 Aug 2007 19:11:50 GMT

I've created a JIRA for this:

https://issues.apache.org/jira/browse/CXF-896

Has anyone gotten Aegis + @WebFault to work together?






Zarar Siddiqi wrote:
> 
> Hi,
> 
> I'm getting an UnsupportedOperationException using Aegis binding and
> JAX-WS frontend.  Here's my setup starting with the Spring beans:
> 
>     <bean id="aegisBean"
>           class="org.apache.cxf.aegis.databinding.AegisDatabinding"/>
> 
>     <jaxws:endpoint
>             id="sportsServiceEndpoint"
>             implementor="#sportsService"
>             address="/SportsService">
>         <jaxws:serviceFactory>
>             <bean
> class="org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean">
>                 <property name="dataBinding" ref="aegisBean"/>
>                 <property name="serviceConfigurations">
>                     <list>
>                         <bean
> class="org.apache.cxf.jaxws.support.JaxWsServiceConfiguration"/>
>                         <bean
> class="org.apache.cxf.aegis.databinding.AegisServiceConfiguration"/>
>                         <bean
> class="org.apache.cxf.service.factory.DefaultServiceConfiguration"/>
>                     </list>
>                 </property>
>             </bean>
>         </jaxws:serviceFactory>
>     </jaxws:endpoint>
> 
> 
> Here's the exception class:
> 
> @WebFault(name="WebServiceException")
> public class WebServiceException extends RuntimeException {
> 
>    // constructors hidden for brevity
> 
>     public Object getFaultInfo() { .... }
> 
> }
> 
> Here's the stacktrace:
> 
> java.lang.UnsupportedOperationException
>   at
> org.apache.cxf.aegis.databinding.AegisDatabinding.createWriter(AegisDatabinding.java:109)
>   at
> org.apache.cxf.jaxws.interceptors.WebFaultOutInterceptor.handleMessage(WebFaultOutInterceptor.java:82)
>   at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:207)
>   at
> org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:90)
>   at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:224)
>   at
> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:73)
>   at
> org.apache.cxf.transport.servlet.ServletDestination.doMessage(ServletDestination.java:78)
>   at
> org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:231)
> 
> 
> I can actually see this exception coming.  In
> WebFaultOutInterceptor.handleMessage() the line
> 
> DataWriter writer = service.getDataBinding().createWriter(Node.class) ;
> 
> invokes AegisDatabinding.createWriter() where Node.class isn't being
> looked for:
> 
>     public <T> DataWriter<T> createWriter(Class<T> cls) {
>         if (cls.equals(XMLStreamWriter.class)) {
>             return (DataWriter<T>)new XMLStreamDataWriter(this);
>         } else {
>             throw new UnsupportedOperationException();
>         }
>     }
> 
> Any ideas how to avoid this exception? Is my configuration wrong or is
> this a bug?
> 
> Thanks,
> Zarar
> 

-- 
View this message in context: http://www.nabble.com/UnsupportedOperationException-when-using-%40WebFault-with-Aegis-binding-tf4231074.html#a12060000
Sent from the cxf-user mailing list archive at Nabble.com.


Mime
View raw message