cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Zarar Siddiqi (JIRA)" <j...@apache.org>
Subject [jira] Created: (CXF-896) Aegis binding with @WebFault causes AegisDatabinding to throw UnsupportedOperationException
Date Tue, 07 Aug 2007 19:25:59 GMT
Aegis binding with @WebFault causes AegisDatabinding to throw UnsupportedOperationException
-------------------------------------------------------------------------------------------

                 Key: CXF-896
                 URL: https://issues.apache.org/jira/browse/CXF-896
             Project: CXF
          Issue Type: Bug
          Components: JAX-WS Runtime
    Affects Versions: 2.1
         Environment: Platform independent.
            Reporter: Zarar Siddiqi


I posted about this issue on the mailing list:

http://www.nabble.com/forum/ViewPost.jtp?post=12037196&framed=y

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? I think my configuration is correct and this might
be a bug.

Thanks,
Zarar


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message