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???

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)





Reply via email to