【发布时间】:2018-06-08 08:32:09
【问题描述】:
我有一些现有的web应用程序通过前辈开发,现在我正在支持和研究它。我试图从互联网上阅读许多关于 Apache Camel 的文章,但仍然无法理解。
让我展示一些扩展 RouteBuilder 的类代码:
这是来自FserviceRouteBuilder类:
@Override
public void configure() throws Exception {
log.debug( "FServiceRouteBuilder configure" );
errorHandler( deadLetterChannel( ).maximumRedeliveries( 0 ) );
from( this.from ).process( requestProcessor ).process(
transformProcessor );
log.debug( "FServiceRouteBuilder configure end" );
}
这是来自MyBillRouteBuilder:
@Override
public void configure() throws Exception {
log.debug( ">>MybillRouteBuilder configure" );
errorHandler( deadLetterChannel( ).maximumRedeliveries( 0 ) );
from( this.from ).process( requestProcessor ).to(
"direct:_mybill-process-response" );
if ( transformProcessor != null ) {
from( "direct:_mybill-process-response" ).process(
transformProcessor );
}
log.debug( ">>MybillRouteBuilder configure end" );
}
我看到的不同的是,MyBillRouteBuilder使用了to()方法,也就是to( "direct:_myebill-process-response" ),但是FServiceRouteBuilder没有那样做。
但它们都有效。我尝试更改 FServiceRouteBuilder 以使用 to() 方法,并且它的工作也是如此。
它们都使用 SOAP 方法调用和处理特定的 Web 服务。
我可以知道to() 实际在做什么吗?使用它和不使用它有什么不同?
对不起,我对此非常陌生。
【问题讨论】:
标签: java spring web-services soap apache-camel