JBoss ESB XML MEP Behviour

JBoss ESB XML MEP Behviour,jboss,soa,jboss5.x,jboss-esb,Jboss,Soa,Jboss5.x,Jboss Esb,我正在使用JBossAS5.1.0和JBossESB4.10 我试图调用一个只有一个操作的服务。我已为服务设置了MEP=单向 当我使用下面的方法调用服务时,我不会得到回复,而是得到一个异常 new ServiceInvoker("Chapter3Sample", "Chapter3Service").deliverSync(esbMessage, 10000); 当我更改mep=RequestResponse时:我能够得到回复 据我所知,ESB消息有一个ReplyTo字段(因为我正在invko

我正在使用JBossAS5.1.0和JBossESB4.10 我试图调用一个只有一个操作的服务。我已为服务设置了MEP=单向

当我使用下面的方法调用服务时,我不会得到回复,而是得到一个异常

new ServiceInvoker("Chapter3Sample", "Chapter3Service").deliverSync(esbMessage, 10000);
当我更改mep=RequestResponse时:我能够得到回复

据我所知,ESB消息有一个ReplyTo字段(因为我正在invkoing一个同步请求),该消息应该由最后一个操作返回,这在我的情况下是不会发生的。请在下面找到ESB XML:

<?xml version="1.0"?>
<jbossesb parameterReloadSecs="5"
 xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd http://anonsvn.jboss.org/repos/labs/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd">
 <providers>
  <jms-provider connection-factory="ConnectionFactory" name="JBossMQ">
   <jms-bus busid="chapter3GwChannel">
    <jms-message-filter dest-name="queue/chapter3_Request_gw" dest-type="QUEUE"/>
   </jms-bus>
   <jms-bus busid="chapter3EsbChannel">
    <jms-message-filter dest-name="queue/chapter3_Request_esb" dest-type="QUEUE"/>
   </jms-bus>
  </jms-provider>
 </providers>
 <services>
  <service category="Chapter3Sample"
   description="A template for Chapter3" name="Chapter3Service">
   <listeners>
    <jms-listener busidref="chapter3GwChannel" is-gateway="true" name="Chapter3GwListener"/>
    <jms-listener busidref="chapter3EsbChannel" name="Chapter3Listener"/>
   </listeners>
   <actions mep="OneWay">
    <action class="org.jboss.soa.esb.samples.chapter3.MyAction"
     name="BodyPrinter">
     <property name="process" value="displayMessage"/>
     <property name="symbol" value="*"/>
     <property name="count" value="50"/>
     <property name="propertyName">
      <hierarchicalProperty attr="value">
       <inner name="myName" random="randomValue"/>
      </hierarchicalProperty>
     </property>
     <property name="exceptionMethod" value="processException"/>
     <property name="okMethod" value="processSuccess"/>
    </action>
   </actions>
  </service>
 </services>
</jbossesb>

当您作为synchronus调用调用时。

新的ServiceInvoker(“Chapter3Sample”、“Chapter3Service”).deliverSync(esbMessage,10000)。 设置mep=RequestResponse

当您调用调用异步调用时。

新的ServiceInvoker(“Chapter3Sample”、“Chapter3Service”).deliverASync(esbMessage,10000)。
将mep设置为单向。

当您作为synchronus调用调用时。

新的ServiceInvoker(“Chapter3Sample”、“Chapter3Service”).deliverSync(esbMessage,10000)。 设置mep=RequestResponse

当您调用调用异步调用时。

新的ServiceInvoker(“Chapter3Sample”、“Chapter3Service”).deliverASync(esbMessage,10000)。 将mep设置为单向