我在MULE 3项目中配置了一个JAXB上下文:
<mulexml:jaxb-context name="JAXB_Context" packageNames="com.company.util" doc:name="JAXB Context" />
<spring:beans>
<context:component-scan base-package="com.company.package" />
</spring:beans>
运行迁移工具后,配置被缩短为如下:
<mulexml:jaxb-context name="JAXB_Context" packageNames="com.company.util" doc:name="JAXB Context" />
在全局元素部分,这个元素的类型是Unknown
。
我在迁移报告中绝对没有关于这个元素的错误、警告或信息。
我该如何解决这个问题?
在Mule 4中不再支持<mulexml:jaxb-context>
。迁移工具无法迁移它,因为它不受支持。根据文档(迁移XML模块):
不再与Java绑定:它不再使用SAX、StaX或DOM类型。Mule 4现在是强类型的,我们有mime类型信息数据是XML格式的。运行时完成其余的工作。所有XML文档可以表示为字符串或流。这意味着以下内容不再存在(也不再需要):
- dom-to-xml-transformer
- dom-to-output-handler-transformer
- xml-to-dom-transformer
- xml-prettyprinter-transformer
- jaxb-object-to-xml-transformer
- jaxb-xml-to-object-transformer
- jaxb上下文
- object-to-xml-transformer
- xml-to-object-transformer
您必须决定是否真的有理由在Mule 4应用程序中使用JAXB。我想如果你需要它,你将不得不限制它在Java类内部的使用,而不通过类边界与JAXB通信。