Thank you, I discovered exactly what you said and did not use the
dataformat and it starts fine, but now when I try to call my same
initial webmethod(not the new multiparameter method) I get the following.
org.apache.camel.component.bean.AmbiguousMethodCallException: Ambiguous
method invocations possible: [public com.referentia.cameltest.TestData
com.referentia.cameltest.TestServiceImpl.getTestData(java.lang.String,int,java.util.Date),
public com.referentia.cameltest.TestData
com.referentia.cameltest.TestServiceImpl.getTestData(java.lang.String,int,java.util.Date)].
Thanks very much,
Chris
On 5/10/2011 4:41 PM, Willem Jiang wrote:
Hi,
You are using camel-cxf and soap dataformat at the same time.
Either of them can do the job for you.
Please check the document of camel-cxf[1] and came-soap[2]
[1]http://camel.apache.org/cxf.html#CXF-HowtoconsumeamessagefromacamelcxfendpointinPOJOdataformat
[2]http://camel.apache.org/soap.html
On 5/11/11 10:12 PM, Chris Richmond 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???
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)