Thanks Andrew,,
But i didnt bundle any of the CXF jars in my WAR file to start with,,,,

comments?


On 10/17/07, Andrew Dinn <[EMAIL PROTECTED]> wrote:
>
> Oops, one more slip of the pasting finger! Here is the correct version
> of those last three mappings
>
>   META-INF/services/javax.xml.soap.MetaFactory
>   META-INF/services/javax.xml.soap.SOAPFactory
>   META-INF/services/javax.xml.ws.spi.Provider
>
> should each contain a single line, respectively,
>
>   com.sun.xml.messaging.saaj.soap.SAAJMetaFactoryImpl
>   com.sun.xml.messaging.saaj.soap.SOAPFactoryImpl
>   org.apache.cxf.jaxws.spi.ProviderImpl
>
> regards,
>
>
> Andrew Dinn
> -----------
>
> Andrew Dinn wrote:
> > Hi shaminda,
> >
> > Actually, I believe I have misled you slightly. The required mapping is
> > for MessageFactory, not SOAPMessage. The mapping is provided by jboss in
> > file jboss-saaj.jar which provides a file called
> >
> >   META-INF/services/javax.xml.soap.MessageFactory
> >
> > You need to remap this by installing a corresponding file in your .war
> > file. It needs to contain the following single line of text
> >
> >   com.sun.xml.messaging.saaj.soap.DynamicMessageFactoryImpl
> >
> > I also added the following resource map files to my .war file in order
> > to get the bundled cxf libs to operate correctly
> >
> >   META-INF/services/javax.xml.soap.MetaFactory
> >   META-INF/services/javax.xml.soap.SOAPFactory
> >   META-INF/services/javax.xml.ws.spi.Provider
> >
> > The appropriate mapping targets were, respectively,
> >
> >   com.sun.xml.messaging.saaj.soap.SAAJMetaFactoryImpl
> >   com.sun.xml.messaging.saaj.soap.SAAJMetaFactoryImpl
> >   com.sun.xml.messaging.saaj.soap.SAAJMetaFactoryImpl
> >
> > regards,
> >
> >
> > Andrew Dinn
> > -----------
> >
> > shaminda perera wrote:
> >> Thanks Andrew and Jeff for the quick reply..
> >>
> >> See below for some a more detailed stacktrace,,, if that helps..
> >>
> >> ....
> >>
> >> 12:18:05,101 FATAL [application]
> >> javax.ejb.EJBTransactionRolledbackException:
> >> java.lang.UnsupportedOperationException: s
> >>
> >> etProperty must be overridden by all subclasses of SOAPMessage
> >>
> >> javax.faces.el.EvaluationException:
> >> javax.ejb.EJBTransactionRolledbackException:
> >> java.lang.UnsupportedOperationException
> >>
> >> : setProperty must be overridden by all subclasses of SOAPMessage
> >>
> >>         at
> >> javax.faces.component.MethodBindingMethodExpressionAdapter.invoke
> >> (MethodBindingMethodExpressionAdapter.java:9
> >>
> >> 1)
> >>
> >>         at com.sun.faces.application.ActionListenerImpl.processAction(
> >> ActionListenerImpl.java:91)
> >>
> >>         at javax.faces.component.UICommand.broadcast(UICommand.java
> :383)
> >>
> >>         at org.ajax4jsf.component.AjaxViewRoot.processEvents(
> >> AjaxViewRoot.java:186)
> >>
> >>         at org.ajax4jsf.component.AjaxViewRoot.broadcastEvents(
> >> AjaxViewRoot.java:164)
> >>
> >>         at org.ajax4jsf.component.AjaxViewRoot.processApplication(
> >> AjaxViewRoot.java:352)
> >>
> >>         at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(
> >> InvokeApplicationPhase.java:97)
> >>
> >>         at com.sun.faces.lifecycle.LifecycleImpl.phase(
> LifecycleImpl.java
> >> :251)
> >>
> >>         at
> >> com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java
> >> :117)
> >>
> >>         at javax.faces.webapp.FacesServlet.service(FacesServlet.java
> :244)
> >>
> >>         at
> >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> >> ApplicationFilterChain.java:290)
> >>
> >>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(
> >> ApplicationFilterChain.java:206)
> >>
> >>         at com.company.filter.doFilter(CompanyFilter.java:26)
> >>
> >>         at
> >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> >> ApplicationFilterChain.java:235)
> >>
> >>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(
> >> ApplicationFilterChain.java:206)
> >>
> >>         at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(
> >> SeamFilter.java:63)
> >>
> >>         at
> >> org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java
> >> :57)
> >>
> >>         at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(
> >> SeamFilter.java:49)
> >>
> >>         at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(
> >> HotDeployFilter.java:60)
> >>
> >>         at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(
> >> SeamFilter.java:49)
> >>
> >>         at org.jboss.seam.web.RedirectFilter.doFilter(
> RedirectFilter.java
> >> :45)
> >>
> >>         at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(
> >> SeamFilter.java:49)
> >>
> >>         at
> >> org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java
> >> :79)
> >>
> >>         at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(
> >> SeamFilter.java:49)
> >>
> >>         at org.jboss.seam.web.SeamFilter.doFilter(SeamFilter.java:84)
> >>
> >>         at
> >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> >> ApplicationFilterChain.java:235)
> >>
> >>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(
> >> ApplicationFilterChain.java:206)
> >>
> >>         at
> >> org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java
> >> :141)
> >>
> >>         at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281)
> >>
> >>         at
> >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> >> ApplicationFilterChain.java:235)
> >>
> >>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(
> >> ApplicationFilterChain.java:206)
> >>
> >>         at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(
> >> ReplyHeaderFilter.java:96)
> >>
> >>         at
> >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> >> ApplicationFilterChain.java:235)
> >>
> >>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(
> >> ApplicationFilterChain.java:206)
> >>
> >>         at org.apache.catalina.core.StandardWrapperValve.invoke(
> >> StandardWrapperValve.java:230)
> >>
> >>         at org.apache.catalina.core.StandardContextValve.invoke(
> >> StandardContextValve.java:175)
> >>
> >>         at
> org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(
> >> SecurityAssociationValve.java:179)
> >>
> >>         at org.apache.catalina.authenticator.AuthenticatorBase.invoke(
> >> AuthenticatorBase.java:433)
> >>
> >>         at org.jboss.web.tomcat.security.JaccContextValve.invoke(
> >> JaccContextValve.java:84)
> >>
> >>         at org.apache.catalina.core.StandardHostValve.invoke(
> >> StandardHostValve.java:128)
> >>
> >>         at org.apache.catalina.valves.ErrorReportValve.invoke(
> >> ErrorReportValve.java:104)
> >>
> >>         at
> org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(
> >> CachedConnectionValve.java:157)
> >>
> >>         at org.apache.catalina.core.StandardEngineValve.invoke(
> >> StandardEngineValve.java:109)
> >>
> >>         at org.apache.catalina.connector.CoyoteAdapter.service(
> >> CoyoteAdapter.java:241)
> >>
> >>         at org.apache.coyote.http11.Http11Processor.process(
> >> Http11Processor.java:844)
> >>
> >>         at
> >> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process
> (
> >> Http11Protocol.java:580)
> >>
> >>         at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(
> >> JIoEndpoint.java:447)
> >>
> >>         at java.lang.Thread.run(Thread.java:619)
> >>
> >> Caused by: javax.ejb.EJBTransactionRolledbackException:
> >> java.lang.UnsupportedOperationException: setProperty must be ove
> >>
> >> rridden by all subclasses of SOAPMessage
> >>
> >>         at
> >> org.jboss.ejb3.tx.Ejb3TxPolicy.handleInCallerTx(Ejb3TxPolicy.java
> >> :87)
> >>
> >>         at
> >> org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:130)
> >>
> >>         at org.jboss.aspects.tx.TxInterceptor$Required.invoke(
> >> TxInterceptor.java:195)
> >>
> >>         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(
> >> MethodInvocation.java:101)
> >>
> >>         at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(
> >> TxPropagationInterceptor.java:76)
> >>
> >>         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(
> >> MethodInvocation.java:101)
> >>
> >>         at org.jboss.ejb3.stateful.StatefulInstanceInterceptor.invoke(
> >> StatefulInstanceInterceptor.java:83)
> >>
> >>         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(
> >> MethodInvocation.java:101)
> >>
> >>         at org.jboss.aspects.security.AuthenticationInterceptor.invoke(
> >> AuthenticationInterceptor.java:77)
> >>
> >>         at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke
> (
> >> Ejb3AuthenticationInterceptor.java:106)
> >>
> >>         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(
> >> MethodInvocation.java:101)
> >>
> >>         at org.jboss.ejb3.ENCPropagationInterceptor.invoke(
> >> ENCPropagationInterceptor.java:46)
> >>
> >>         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(
> >> MethodInvocation.java:101)
> >>
> >>         at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(
> >> AsynchronousInterceptor.java:106)
> >>
> >>         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(
> >> MethodInvocation.java:101)
> >>
> >>         at org.jboss.ejb3.stateful.StatefulContainer.localInvoke(
> >> StatefulContainer.java:204)
> >>
> >>         at org.jboss.ejb3.stateful.StatefulLocalProxy.invoke(
> >> StatefulLocalProxy.java:100)
> >>
> >>         at $Proxy232.getXXX(Unknown Source)
> >>
> >>         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:597)
> >>
> >>         at org.jboss.seam.util.Reflections.invoke(Reflections.java:20)
> >>
> >>         at org.jboss.seam.intercept.RootInvocationContext.proceed(
> >> RootInvocationContext.java:31)
> >>
> >>         at org.jboss.seam.intercept.ClientSideInterceptor$1.proceed(
> >> ClientSideInterceptor.java:72)
> >>
> >>         at org.jboss.seam.intercept.SeamInvocationContext.proceed(
> >> SeamInvocationContext.java:57)
> >>
> >>         at org.jboss.seam.interceptors.RemoveInterceptor.aroundInvoke(
> >> RemoveInterceptor.java:40)
> >>
> >>         at org.jboss.seam.intercept.SeamInvocationContext.proceed(
> >> SeamInvocationContext.java:69)
> >>
> >>         at org.jboss.seam.intercept.RootInterceptor.invoke(
> >> RootInterceptor.java:103)
> >>
> >>         at org.jboss.seam.intercept.ClientSideInterceptor.invoke(
> >> ClientSideInterceptor.java:50)
> >>
> >>         at org.javassist.tmp.java.lang.Object_$$_javassist_25.getTracks
> >> (Object_$$_javassist_25.java)
> >>
> >>         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:597)
> >>
> >>         at org.apache.el.parser.AstValue.invoke(AstValue.java:131)
> >>
> >>         at org.apache.el.MethodExpressionImpl.invoke(
> >> MethodExpressionImpl.java:276)
> >>
> >>         at com.sun.facelets.el.TagMethodExpression.invoke(
> >> TagMethodExpression.java:68)
> >>
> >>         at
> >> javax.faces.component.MethodBindingMethodExpressionAdapter.invoke
> >> (MethodBindingMethodExpressionAdapter.java:7
> >>
> >> 7)
> >>
> >>         ... 47 more
> >>
> >> Caused by: javax.xml.ws.WebServiceException:
> >> java.lang.UnsupportedOperationException: setProperty must be
> >> overridden by
> >>
> >> all subclasses of SOAPMessage
> >>
> >>         at
> >> org.jboss.ws.core.jaxws.client.ClientImpl.handleRemoteException(
> >> ClientImpl.java:304)
> >>
> >>         at
> >> org.jboss.ws.core.jaxws.client.ClientImpl.invoke(ClientImpl.java
> >> :242)
> >>
> >>         at org.jboss.ws.core.jaxws.client.ClientProxy.invoke(
> >> ClientProxy.java:164)
> >>
> >>         at org.jboss.ws.core.jaxws.client.ClientProxy.invoke(
> >> ClientProxy.java:150)
> >>
> >>         at $Proxy335.findXXX(Unknown Source)
> >>
> >>         at com.company.WebServiceAbstractPagedRepository.findByPage
> >> (WebServiceAbstractPagedReposito
> >>
> >> ry.java:57)
> >>
> >>         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:597)
> >>
> >>         at org.jboss.seam.util.Reflections.invoke(Reflections.java:20)
> >>
> >>         at org.jboss.seam.intercept.RootInvocationContext.proceed(
> >> RootInvocationContext.java:31)
> >>
> >>         at org.jboss.seam.intercept.SeamInvocationContext.proceed(
> >> SeamInvocationContext.java:57)
> >>
> >>         at org.jboss.seam.interceptors.RollbackInterceptor.aroundInvoke
> (
> >> RollbackInterceptor.java:34)
> >>
> >>         at org.jboss.seam.intercept.SeamInvocationContext.proceed(
> >> SeamInvocationContext.java:69)
> >>
> >>         at
> org.jboss.seam.interceptors.BijectionInterceptor.aroundInvoke(
> >> BijectionInterceptor.java:47)
> >>
> >>         at org.jboss.seam.intercept.SeamInvocationContext.proceed(
> >> SeamInvocationContext.java:69)
> >>
> >>
> >>
> >> On 10/17/07, Andrew Dinn <[EMAIL PROTECTED]> wrote:
> >>> Hi,
> >>>
> >>> This looks to me as if it is a library problem. If you have bundled up
> >>> the CXF classes in a war file then this will probably be what is
> >>> happening.
> >>>
> >>> Explanation as follows:
> >>>
> >>> The JBoss implementation of SOAPMessage is an abstract class which
> >>> provides default implementations of get/setProperty. The
> implementation
> >>> is in a jar in $JBOSS_HOME/server/<servername>/deploy/jbossws.sar. The
> >>> saaj jar which implements this abstract type also provides a
> >>> META-INF/services file to define the SOAPMessage --> SOAPMessageImpl
> >>> mapping. The file name is the fully qualified name of the SOAPMessage
> >>> class and the contents of the file is a single line containing the
> fully
> >>> qualified name of the implementation class. The mapped version of
> >>> SOAPMessageImpl in the saaj implementation jar provided by JBoss
> relies
> >>> upon inheriting these methods.
> >>>
> >>> Now, if your app bundles the cxf libs into a war file under WEBINF/lib
> >>> then it will be picking up its implementation of SOAPMessage from a
> CXF
> >>> lib which does not provide the get/setProperty methods. However, the
> >>> SOAFPFactory finder will still be trying to instantiate the JBoss
> >>> SOAPMessageImpl.class because the resource lookup it employs to
> identify
> >>> which class to use will find the META-INF/services mapping file. You
> >>> need to add META-INF/services files to your war which establish the
> >>> correct mapping from the CXF saaj SOAPMessage class to the appropriate
> >>> SOAPMessageImpl class in the CXF libs -- actually, I am not sure that
> >>> the target for the map in CXF is called SOAPMessageImpl, perhaps Dan,
> >>> Willem et al could advise.
> >>>
> >>> You may also find that jboswws.sar remaps several other classes which
> >>> are looked up by a factory finder. You will probably need to add remap
> >>> files in your war for these as well.
> >>>
> >>> regards,
> >>>
> >>> Andrew Dinn
> >>> -----------
> >>> (JBoss Transactions developer)
> >>>
> >>> Jeff Yu wrote:
> >>>> Hi,
> >>>>
> >>>> It seems error from your web app code, since it says: "
> >>>>
> >>>> java.lang.UnsupportedOperationException: s
> >>>> etProperty must be overridden by all subclasses of SOAPMessage
> >>>>
> >>>> "
> >>>> can you show more codes...
> >>>>
> >>>> Thanks
> >>>> Jeff
> >>>>
> >>>>
> >>>>
> >>>> shaminda perera wrote:
> >>>>> Hi all,
> >>>>>
> >>>>> This is the scenario.
> >>>>> I created a WSDL and the generated the server side and client side
> >>>>> code
> >>>>> using the WSDL2Java tool. After that i published the Web service in
> >>>>> Jetty,,
> >>>>> as done by the generated server code.
> >>>>> The web service is working fine when i tested it using a standalone
> >>>>> client.
> >>>>>
> >>>>> I am having a web application which is deployed in JBoss. Now i
> >>>>> need to
> >>>>> access the Web service thru a client which sits in this web
> >>> application.
> >>>>> However, now i am now getting the following error:
> >>>>> 11:05:26,030 FATAL [application]
> >>>>> javax.ejb.EJBTransactionRolledbackException:
> >>>>> java.lang.UnsupportedOperationException: s
> >>>>> etProperty must be overridden by all subclasses of SOAPMessage
> >>>>> javax.faces.el.EvaluationException:
> >>>>> javax.ejb.EJBTransactionRolledbackException:
> >>>>> java.lang.UnsupportedOperationException
> >>>>> : setProperty must be overridden by all subclasses of SOAPMessage
> >>>>>         at
> >>>>> javax.faces.component.MethodBindingMethodExpressionAdapter.invoke
> >>>>> (MethodBindingMethodExpressionAdapter.java:9
> >>>>> 1)
> >>>>>         at
> com.sun.faces.application.ActionListenerImpl.processAction(
> >>>>> ActionListenerImpl.java:91)
> >>>>>         at javax.faces.component.UICommand.broadcast(UICommand.java
> >>> :383)
> >>>>> This comes up when i am calling the Webservice methods using the
> >>>>> generated
> >>>>> client side stub.
> >>>>>
> >>>>> This does not come when i run the Web service client in standalone.
> >>>>>
> >>>>> Appreciate if someone can help or give any feedback.
> >>>>>
> >>>>> Thanks in advance.
> >>>>>
> >>>>>
> >>> --
> >>> JBoss, a Division of Red Hat
> >>> Registered Address: Red Hat UK Ltd, Amberley Place, 107-111 Peascod
> >>> Street, Windsor, Berkshire,
> >>> SI4 1TE, United Kingdom.
> >>> Registered in UK and Wales under Company Registration No. 3798903
> >>> Directors: Michael Cunningham (USA), Charlie Peters (USA) and David
> >>> Owens (Ireland)
> >>>
> >>>
> >>>
> >>
> >
>
> --
> JBoss, a Division of Red Hat
> Registered Address: Red Hat UK Ltd, Amberley Place, 107-111 Peascod
> Street, Windsor, Berkshire,
> SI4 1TE, United Kingdom.
> Registered in UK and Wales under Company Registration No. 3798903
> Directors: Michael Cunningham (USA), Charlie Peters (USA) and David
> Owens (Ireland)
>
>
>

Reply via email to