我被分配到使用 Mule 2 的遗留系统上工作,我发现一些旧配置有一些怪癖。最初编写文档的开发人员已经换了工作,因此从那以后没有人敢于更改任何内容。
<service name="taskCompleted">
<inbound>
<jms:inbound-endpoint topic="namespace.transporttask.completed">
<jms:jmsmessage-to-object-transformer />
<!-- This section does not comply with Mule's XML schema
(Element message-properties-transformer is not allowed here) -->
<message-properties-transformer>
<add-message-property key="MULE_ENCODING" value="windows-1252" />
</message-properties-transformer>
</jms:inbound-endpoint>
</inbound>
<bridge-component />
<outbound>
...
</outbound>
</service>
这只是我发现的示例之一,我的假设是 Mule 只是忽略这样的配置,并且删除它是安全的,因为它可能不会执行任何操作。这个假设正确吗?
最佳答案
Mule 严格验证其加载的配置:如果元素放错位置或根本不允许,Mule 将不会加载配置并拒绝启动此应用程序。
如果 Mule 使用此配置正常启动,则意味着它是有效的并且注释是在撒谎。
关于java - Mule 如何处理不符合其 XML 模式的 XML 配置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9598979/