我已经开始将测试用例写入我的Mule项目了.
我已经为我的Main Flows编写了功能测试用例,如下所示.
public void testMainFlow_1() throws Exception{
MuleClient client = muleContext.getClient();
MuleMessage result = client.send(helloServiceAddress, fileAsString("SamplePayloads/input_Request.xml"), properties);
assertNotNull("Null Result", result);
assertEquals(result.getPayloadAsString(), fileAsString("SampleResponses/sampleResponse.xml"));
}
Run Code Online (Sandbox Code Playgroud)
但是我如何测试我的子流程.他们没有任何终点.那么如何将有效载荷传递给它们并进行测试呢.
以下是我的流量配置.
<flow name="main_flow" >
....
....
<flow-ref name="subflow_1" />
....
....
<flow-ref name="subflow_2" />
....
....
</flow>
<sub-flow name="subflow_1">
....
<some-transformer ... />
<out-bound call to web-service />
<some-transformer ... />
....
</sub-flow>
<sub-flow name="subflow_2">
....
<some-transformer ... />
<out-bound call to web-service />
<some-transformer ... />
....
</sub-flow>
Run Code Online (Sandbox Code Playgroud) 我想做一个流程:
我怎样才能提出第一点?
在我们的项目中,我们需要一个规则引擎组件,经过短时间的研究后我发现.NET Workflow也有它的规则引擎..NET Workflow Rule Engine和其他人之间是否有任何完整的比较列表,例如NxBRE,Drool.NET ...非常感谢.
RPC系统(如Twitter的Finagle)和企业服务总线(如Mule)之间有什么区别?他们每个人都善于解决什么样的问题?
我正在使用Mule 3.2,并且正在将文件从一个位置移动到另一位置。错误/问题是Mule一次又一次地处理相同的文件,并且不删除它们。
控制台显示:
org.mule.transport.file.FileMessageReceiver: Lock obtained on file:
Run Code Online (Sandbox Code Playgroud)
我的配置文件如下:
<flow name="File-FTP-Bridge">
<file:inbound-endpoint path="${outbound.input.path}"
moveToDirectory="${outbound.input.backup.path}">
<file:filename-wildcard-filter
pattern="*.msg" />
</file:inbound-endpoint>
<ftp:outbound-endpoint user="${outbound.ftp.user}"
password="${outbound.ftp.password}" host="${outbound.ftp.host}"
path="${outbound.ftp.path}" port="${outbound.ftp.port}"
outputPattern="#[header:originalFilename]">
</ftp:outbound-endpoint>
</flow>
Run Code Online (Sandbox Code Playgroud)
我找不到此问题的根本原因。提前致谢。
未从属性文件解析全局属性,因此mmc部署失败.任何想法为什么会出错?
<context:property-placeholder location="airports.properties" />
<global-property name="airportslist" value="${airportslist}" />
Run Code Online (Sandbox Code Playgroud)
获得以下异常 -
com.mulesoft.mmc.agent.v3.dto.DeploymentException: Unexpected exception parsing XML document from URL [file:/arprt/mule-esb-ee/mule-enterprise-standalone-3.3.0/apps/myapp-1.0.0-SNAPSHOT/myapp-config.xml]; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'airportslist' (org.mule.api.lifecycle.InitialisationException) (org.mule.api.config.ConfigurationException) at com.mulesoft.mmc.agent.service.impl.ApplicationServiceImpl.deploy(ApplicationServiceImpl.java:245) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
airports.properties包含上述属性:
airportslist={'SFO', 'YYZ', 'DFW'}
Run Code Online (Sandbox Code Playgroud) 我们需要监控HornetQ消息传递(Jboss的一部分) - 监控是根据消息到达队列,消息数量,消耗的消息,审计消息有效负载.HornetQ是否公开JMX Mbean来监控这个过程?
作为集成策略的一部分,此信息必须显示在Mule管理控制台上.Mule管理控制台只能探测mule实例mbeans.为了解决这个问题,我们可能需要在Mule中编写自定义mbean,它连接到HornetQ消息传递,同样可以在MMC上显示.我们如何在mule上编写自定义JMX Mbean,这需要部署到mbean服务器(代理)并预定?
谢谢
骡子3似乎非常酷,但是他们的企业产品的价格标签不仅仅适用于某些客户.
据我所知,Mule 3的社区版允许您创建所需数量的Mule服务器/代理,Mule允许您部署到任何一个或多个此类实例.
在企业版的Mule 3中,有一个非常灵活的基于Web的控制面板,它不仅可以处理Mule服务器/代理的监控,还可以自动或在高负载时自动拆分作业.
如果有人找到一个好的开源或廉价替代这个基于Web的管理控制台或任何基于Java的服务器,我将非常感激,这将允许进行相同类型的监视/控制,从而复制一些管理控制台功能.
任何/所有的反馈和建议非常感谢!
我在我的项目中使用了一个正在运行的Mule应用程序.我想要做的是添加一些组件,每次启动Mule服务器时清除一些数据库表.
在这个问题上使用的组件是什么?我希望它是从XML发生的,而不是我必须编写的一些Java组件(JDBC等)
谢谢!
我有很简单的从HornetQ队列中读取MULE并将Object保存到数据库的设置:
设置如下:
<jms:connector name="connector.jms" maxRedelivery="1" connectionFactory-ref="hornetQConnectionFactory" doc:name="JMS"
createMultipleTransactedReceivers="true"
numberOfConcurrentTransactedReceivers="100"
acknowledgementMode="AUTO_ACKNOWLEDGE">
<reconnect count="50" frequency="5000"/>
</jms:connector>
<flow name="jmsListenerFlow1" doc:name="jmsListenerFlow1">
<jms:inbound-endpoint queue="adsLogQueue" connector-ref="connector.jms" doc:name="JMS">
<jms:transaction action="ALWAYS_BEGIN"/>
</jms:inbound-endpoint>
<component >
<spring-object bean="logSaver"/>
</component>
</flow>
Run Code Online (Sandbox Code Playgroud)
为什么在maxRedelivery设置为1时,我会在端点上收到消息已重新传送9次的消息?它究竟意味着什么?
hornetQConnectionFactory:
<bean name="hornetQTransportConfiguration" class="org.hornetq.api.core.TransportConfiguration">
<constructor-arg value="org.hornetq.core.remoting.impl.netty.NettyConnectorFactory"/>
<constructor-arg>
<map>
<entry key="host" value="${jms.host}" />
<entry key="port" value="${jms.port}" />
</map>
</constructor-arg>
</bean>
<bean name="hornetQConnectionFactory" class="org.hornetq.jms.client.HornetQJMSConnectionFactory">
<constructor-arg index="0" value="false"/>
<constructor-arg index="1" ref="hornetQTransportConfiguration"/>
<property name="minLargeMessageSize" value="250000"/>
<property name="cacheLargeMessagesClient" value="false"/>
</bean>
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激!
下面的堆栈跟踪.
ERROR 2012-10-19 01:04:07,283 [Thread-3013 (HornetQ-client-global-threads-1442093417)]: Message : "Message with id "ID:e6a0b303-1977-11e2-96d4-810571a3fe10" has …