You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@camel.apache.org by camelraj <ra...@gmail.com> on 2012/08/15 01:26:30 UTC

Multiple paramater with cxf:end point

Hi,

I am developing some camel , here is my camel context. Pls let me know how
can I configure the parameter if I want to call 'complexParameters' which
has two parameter.

<cxf:cxfEndpoint id="routerEndpoint"
address="http://localhost:8080/test-service/TestService"
serviceClass="service.TestService"/>
  
  <camelContext id="test_context"
xmlns="http://camel.apache.org/schema/spring">
      <dataFormats>
			<jaxb id="jaxb" contextPath="pojo"/>
		</dataFormats>
	  <route>
      	<from uri="activemq:queue:inchannel"/>
      	<to uri="bean:camelListener" />
      	<unmarshal ref="jaxb"/>
      	<process ref="processorBean"/>
      	<setHeader headerName="operationName">
    		<constant>echo</constant>
		</setHeader>
		<to uri="cxf:bean:routerEndpoint"/>
		<log message="sending response : ${body}"/>
      </route>      
  </camelContext>

also my web service is as follows:

package service;

import java.util.List;

import javax.jws.WebParam;
import javax.jws.WebService;

import pojo.TestPojo;


@WebService
public interface TestService {

	String sayHi(String text);

	String sayHello();

	void ping();

	int getInvocationCount();

	String echo(@WebParam(name = "hello")  TestPojo pojo) throws Exception;

	Boolean echoBoolean(Boolean bool);

	String complexParameters(List<String> par1, List<String> par2);
}



--
View this message in context: http://camel.465427.n5.nabble.com/Multiple-paramater-with-cxf-end-point-tp5717352.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Re: Multiple paramater with cxf:end point

Posted by Willem jiang <wi...@gmail.com>.
If you want camel-cxf producer invoke the service with this two parameter, you can put the parameter into a list like this

List<Object> parameterList = new ArrayList();
parameterList.add(part1);
parameterList.add(part2);

Then you just need to put the parameterList into the message body. 

-- 
Willem Jiang

FuseSource
Web: http://www.fusesource.com (http://www.fusesource.com/)
Blog: http://willemjiang.blogspot.com (http://willemjiang.blogspot.com/) (English)
          http://jnn.javaeye.com (http://jnn.javaeye.com/) (Chinese)
Twitter: willemjiang 
Weibo: willemjiang





On Wednesday, August 15, 2012 at 7:26 AM, camelraj wrote:

> Hi,
> 
> I am developing some camel , here is my camel context. Pls let me know how
> can I configure the parameter if I want to call 'complexParameters' which
> has two parameter.
> 
> <cxf:cxfEndpoint id="routerEndpoint"
> address="http://localhost:8080/test-service/TestService"
> serviceClass="service.TestService"/>
> 
> <camelContext id="test_context"
> xmlns="http://camel.apache.org/schema/spring">
> <dataFormats>
> <jaxb id="jaxb" contextPath="pojo"/>
> </dataFormats>
> <route>
> <from uri="activemq:queue:inchannel"/>
> <to uri="bean:camelListener" />
> <unmarshal ref="jaxb"/>
> <process ref="processorBean"/>
> <setHeader headerName="operationName">
> <constant>echo</constant>
> </setHeader>
> <to uri="cxf:bean:routerEndpoint"/>
> <log message="sending response : ${body}"/>
> </route> 
> </camelContext>
> 
> also my web service is as follows:
> 
> package service;
> 
> import java.util.List;
> 
> import javax.jws.WebParam;
> import javax.jws.WebService;
> 
> import pojo.TestPojo;
> 
> 
> @WebService
> public interface TestService {
> 
> String sayHi(String text);
> 
> String sayHello();
> 
> void ping();
> 
> int getInvocationCount();
> 
> String echo(@WebParam(name = "hello") TestPojo pojo) throws Exception;
> 
> Boolean echoBoolean(Boolean bool);
> 
> String complexParameters(List<String> par1, List<String> par2);
> }
> 
> 
> 
> --
> View this message in context: http://camel.465427.n5.nabble.com/Multiple-paramater-with-cxf-end-point-tp5717352.html
> Sent from the Camel - Users mailing list archive at Nabble.com (http://Nabble.com).