Thanks!!!...it worked...some minor hickup though...
If I stay with the default jaxb databinding, a simple call ping(String msg)
showed msg=null on the server side.
If I use aegis, then ping works with the msg passed through to the server, but
then a problem on the enum popped up...
<bean id="aegisDataBinding"
class="org.apache.cxf.aegis.databinding.AegisDatabinding"/>
<bean id="mgmtServiceClientFactory"
class="org.apache.cxf.frontend.ClientProxyFactoryBean">
<property name="serviceClass" value="xyz.services.MgmtService"/>
<property name="address"
value="http://localhost:8084/xyz-services/mgmtService"/>
<property name="dataBinding" ref="aegisDataBinding"/>
</bean>
My enum class is sync'ed between the server and client, so I have no idea why
that would happen...any idea?
Thanks again!!!
java.lang.IllegalArgumentException: No enum const class
at
org.apache.cxf.aegis.databinding.XMLStreamDataReader.read(XMLStreamDataReader.java:49)
at
org.apache.cxf.aegis.databinding.XMLStreamDataReader.read(XMLStreamDataReader.java:34)
at
org.apache.cxf.interceptor.DocLiteralInInterceptor.getPara(DocLiteralInInterceptor.java:235)
at
org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage(DocLiteralInInterceptor.java:120)
--- On Sun, 10/26/08, Willem Jiang <[EMAIL PROTECTED]> wrote:
> From: Willem Jiang <[EMAIL PROTECTED]>
> Subject: Re: CXF 2.1.3 & Simple Front End & Spring
> To: [email protected]
> Date: Sunday, October 26, 2008, 9:05 PM
> Oh, you are still using the jaxws front on the client side.
>
> Please change the clientFactory's class to be
> org.apache.cxf.frontend.ClientProxyFactoryBean
>
> > ---Client Spring Context---
> > WSDL:
> http://localhost:8084/xyz-services/mgmtService?wsdl
> >
> > <bean id="mgmtService"
> > class="xyz.services.MgmtService"
> > factory-bean="clientFactory"
> factory-method="create"/>
> >
> > <bean id="clientFactory"
> class="org.apache.cxf.jaxws.JaxWsProxyFactoryBean">
>
> *** it should be
> "org.apache.cxf.frontend.ClientProxyFactoryBean"
>
> > <property name="serviceClass"
> value="xyz.services.MgmtService"/>
> > <property name="address"
> value="http://localhost:8084/xyz-services/mgmtService"/>
> > </bean>
>
> Willem
>
> Coder One wrote:
> > javax.xml.ws.WebServiceException: Could not find
> wsdl:binding operation info for web method createRole.
> > at
> org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:113)
> >
> >
> > I got the above exceptions trying to use simple front
> end with Spring. With 2.1.1, I got the same problem, but
> the line number was 150 instead of 113.
> >
> > I have included by server-side and client-side Spring
> context files. Both projects (server/client) include cxf as
> a separate maven project. Ie. I created a common-cxf maven
> project that included all the regular CXF jars, then my
> server/client maven projects declared a dependency on
> common-cxf.
> >
> > The WSDL comes up alright with ?wsdl, so I am at a
> dead-end. I read some post about someone patching 2.1.1 to
> fix this issue, but it seems to have not been fixed ?!?
> >
> > Please help...appreciate all pointers! Thanks...
> >
> >
> > ---Server Spring Context---
> > WAR context: /xyz-services
> >
> > <import
> resource="classpath:META-INF/cxf/cxf.xml" />
> > <import
> resource="classpath:META-INF/cxf/cxf-extension-soap.xml"
> />
> > <import
> resource="classpath:META-INF/cxf/cxf-servlet.xml"
> />
> >
> > <simple:server id="roleMgmtWS"
> >
> serviceClass="xyz.services.MgmtService"
> >
> address="/mgmtService">
> > <simple:serviceBean>
> > <bean
> class="xyz.serviceimpl.MgmtServiceImpl" />
> > </simple:serviceBean>
> > <simple:dataBinding>
> > <bean
> class="org.apache.cxf.aegis.databinding.AegisDatabinding"
> />
> > </simple:dataBinding>
> > </simple:server>
> >
> > ---Client Spring Context---
> > WSDL:
> http://localhost:8084/xyz-services/mgmtService?wsdl
> >
> > <bean id="mgmtService"
> > class="xyz.services.MgmtService"
> > factory-bean="clientFactory"
> factory-method="create"/>
> >
> > <bean id="clientFactory"
> class="org.apache.cxf.jaxws.JaxWsProxyFactoryBean">
> > <property name="serviceClass"
> value="xyz.services.MgmtService"/>
> > <property name="address"
> value="http://localhost:8084/xyz-services/mgmtService"/>
> > </bean>
> >
> >
> >
> >
> >