camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Claus Ibsen <claus.ib...@gmail.com>
Subject Re: Multiple parameters in CXF service method
Date Wed, 11 May 2011 04:53:58 GMT
On Wed, May 11, 2011 at 4:12 PM, Chris Richmond
<crichmond@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: cibsen@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/

Mime
View raw message