Mule 3.3 可以使用 JAXB 自动将 XML 字符串解组为对象,前提是:
1. 您首先使用 spring 注册您的 jaxb 注释类。2. 有一个组件需要输入这样的类型
所以我设法进行了转换,但我必须创建一个什么都不做的“DumbTransformer”。它有一个方法可以返回它接收到的相同对象。我需要它来触发 XML 到对象的转换,以便我可以进一步处理消息。
流程示例:
<spring:beans>
<spring:bean id="dumbTransformer" class="foo.bar.DumbTransformer"/>
</spring:beans>
<flow name="main" doc:name="main">
<vm:inbound-endpoint path="in" doc:name="VM" />
<component doc:name="Java">
<spring-object bean="dumbTransformer"/>
</component>
<splitter expression="#[payload.items]" doc:name="Split Items"/>
<logger message="#[payload]" level="INFO" doc:name="Log Item"/>
<vm:outbound-endpoint path="out" doc:name="VM" />
</flow>
DumbTransformer.java
package foo.bar;
@ContainsTransformerMethods
public class InvoiceUnmarshaller extends AbstractTransformer {
@Transformer
public MyJaxbAnnotatedClass foo(@Payload MyJaxbAnnotatedClass i) {
return i;
}
}
有没有办法在不必创建这样的 DumbTransformers 的情况下实现这一点?
谢谢。