On Wed, May 11, 2011 at 4:12 PM, Chris Richmond <crichm...@referentia.com> wrote: > I finally successfully got CXF service being served at a Camel consumer > endpoint, where TestService has the interface annotated method which I can > call from a .NET soap client no problem: > > @WebMethod(operationName="EchoValue") > @WebResult(name = "EchoResponse", targetNamespace = > "http://component.referentia.com") > public String echoValue(@WebParam(name="value")String value); > > However, when I add a more complex method like this: > > @WebMethod(operationName="GetTestData") > @WebResult(name = "TestData", targetNamespace = > "http://liveaction.referentia.com") > public TestData getTestData(@WebParam(name="Name")String name, > @WebParam(name="MachineValue")int machineValue, > @WebParam(name="Timestamp")Date timestamp); > > when I start the application, I get the error below. Am I to believe that > Camel-CXF cannot handle multiple parameter webmethods??? >
The stacktrace is from camel-soap. Its that data format that doesn't support that yet. I think there is a JIRA ticket for that. If not feel free to create a ticket. > java.lang.IllegalArgumentException: Method getTestData has more than one > parameter and no request wrapper. This is not yet supported > at > org.apache.camel.dataformat.soap.name.ServiceInterfaceStrategy.getInInfo(ServiceInterfaceStrategy.java:106) > at > org.apache.camel.dataformat.soap.name.ServiceInterfaceStrategy.analyzeMethod(ServiceInterfaceStrategy.java:118) > at > org.apache.camel.dataformat.soap.name.ServiceInterfaceStrategy.analyzeServiceInterface(ServiceInterfaceStrategy.java:128) > at > org.apache.camel.dataformat.soap.name.ServiceInterfaceStrategy.<init>(ServiceInterfaceStrategy.java:54) > at > com.referentia.cameltest.CamelTestMain$1.configure(CamelTestMain.java:67) > at > org.apache.camel.builder.RouteBuilder.checkInitialized(RouteBuilder.java:322) > at > org.apache.camel.builder.RouteBuilder.configureRoutes(RouteBuilder.java:277) > at > org.apache.camel.builder.RouteBuilder.addRoutesToCamelContext(RouteBuilder.java:263) > at > org.apache.camel.impl.DefaultCamelContext.addRoutes(DefaultCamelContext.java:613) > at com.referentia.cameltest.CamelTestMain.main(CamelTestMain.java:52) > > > > > > -- Claus Ibsen ----------------- FuseSource Email: cib...@fusesource.com Web: http://fusesource.com CamelOne 2011: http://fusesource.com/camelone2011/ Twitter: davsclaus Blog: http://davsclaus.blogspot.com/ Author of Camel in Action: http://www.manning.com/ibsen/