If you search back you'll see I worked through some similar discussions in this area...
I wanted to write one endpoint that could handle SOAP, POX and REST. With some help I was able to get the SOAP and POX stuff working great, REST however never seemed to set the properties, I haven't spent much time looking at that part though... Basically we have a very heavily annotated endpoint interface and impl declared in our ApplicationContext like this... <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jaxws="http://cxf.apache.org/jaxws" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd"> <jaxws:endpoint id="soapCurrencyExchange" implementor="#currencyExchangeImpl" bindingUri="http://schemas.xmlsoap.org/soap/" address="/CurrencyExchange.soap"/> <jaxws:endpoint id="xmlCurrencyExchange" implementor="#currencyExchangeImpl" bindingUri="http://cxf.apache.org/bindings/xformat" address="/CurrencyExchange.xml"/> <jaxws:endpoint id="restCurrencyExchange" implementor="#currencyExchangeImpl" bindingUri="http://apache.org/cxf/binding/http" address="/CurrencyExchange"> <jaxws:serviceFactory> <bean class="org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean"> <property name="wrapped" value="true"/> </bean> </jaxws:serviceFactory> </jaxws:endpoint> </beans> My endpoint interface defines one method "getExchangeRate(ExchangeRateRequest)". As I said, the SOAP and POX mappings worked fine, but I never got REST to work. The method would be invoked by the properties I had defined in the @HttpResource annotation would never be set on the ExchangeRateRequest object. So when I'd annotated it as... @HttpResource(location="/rates/{fromCurrency},{toCurrency}") getExchangeRate(ExchangeRateRequest request) ...I'd end up with nulls when I called request.getFromCurrency and getToCurrency. Again, the method was invoked, the ExchangeRateRequest object was instantiated, but the properties never got set. Maybe it can't be a JAXB generated class or something... On 9/21/07, mattmadhavan <[EMAIL PROTECTED]> wrote: > > Hello, > I am currently working on a project for my current client for all external > notifications. My requirements are as follows: > * Some of my client's partners communicate via Straight HTTP Post - Data > can be HTTP (I guess I can use REST for this - but not all of them send > XML!) > * Some do via SOAP. > > This is for a premiums and thats how my client makes his money and I would > like to give them a robust solution. > > I would like to use CXF Servlet (Or straight Spring Dispatcher Servelt)and > also add Spring MVC controller so that I can add some actions for non-soap > based communications - be it a XML - or any other data format. > > How can I combine these two! XFire had a solution where you use Straight > Spring Dispatcher Servlet and use a class called XFireExporter bean and have > a url mapping on the MVC side! (XFireExporter implements a spring > controller). > > > The CXF migration says I do not need this as the *ServerFactoryBean takes > care of this! I am little confused! Any idead where I can map the urls in > the MVC to controllers including CXF Webservices as XFire did? > > Any help will be appreciated. > > Thanks > Matt > -- > View this message in context: > http://www.nabble.com/CXFServlet-%2B-WebServices-%2B-Spring-MVC-tf4498268.html#a12828806 > Sent from the cxf-user mailing list archive at Nabble.com. > >
