我是骆驼的新手。
我想将以下代理路由添加到soap服务作为运行时。
from("cxf://http://localhost:8081/CentrelServer/NewWebService?" +
"serviceClass=com.vnitt.webservice.axis.NewWebService" +
"&serviceName={http://axis.webservice.vnitt.com/}NewWebService" +
"&portName={http://axis.webservice.vnitt.com/}NewWebServicePort" +
"&wsdlURL=src/conf/NewWebService.wsdl").
process(new Processor() {
public void process(Exchange arg0) throws Exception {
System.out.println("code run here");
}
}).to(clientService);
在上面的代码中,我希望clientService指向地址为http://localhost:9091/Client/NewWebService
我不知道如何创建EndPoint客户端服务。
请帮帮我。
感谢。
答案 0 :(得分:2)
official docs中有一些不错的例子。
这个例子(取自上面的文档)(假设您可以在春季配置)。
<cxf:cxfEndpoint id="serviceEndpoint" address="http://localhost:9000/SoapContext/SoapPort"
wsdlURL="testutils/hello_world.wsdl"
serviceClass="org.apache.hello_world_soap_http.Greeter"
endpointName="s:SoapPort"
serviceName="s:SOAPService"
xmlns:s="http://apache.org/hello_world_soap_http" />
或直接在DSL路线:
to("cxf://http://localhost:9000/SoapContext/SoapPort?" +
"serviceClass=org.apache.hello_world_soap_http.Greeter" +
"&serviceName={http://apache.org/hello_world_soap_http/}SOAPService" +
"&endpointName={http://apache.org/hello_world_soap_http/}SoapPort" +
"&wsdlURL=testutils/hello_world.wsdl")
在此配置中替换目标Web服务设置应该非常简单。您需要为此代码生成Java类等。