【发布时间】:2013-06-03 18:18:24
【问题描述】:
在 CXF 的文档中,据说 2.7.x 版本要求不在 4.2.0 版本下的 Woodstox jar 在类路径中可用。
有人可以建议 Woodstox 使用 CXF 的 Maven 依赖项吗?
主要问题是当我尝试使用 cxf 的客户端时,会引发异常“无法创建安全的 XMLInputFactory”。根据不同的论坛(for example),可以使用“org.apache.cxf.stax.allowInsecureParser”系统属性来解决问题,但这似乎不是一个好方法。所以maven依赖是要走的路......
提前致谢。
【问题讨论】:
-
您为什么不想更新到 Woodstox 4.2.0?它具有与 4.0 和 4.1 相同的组和工件 ID。
-
是的,我尝试添加 woodstox-core-asl 4.2.0 maven 依赖项以及 woodstox stax2-api,但无论如何都会引发“无法创建安全的 XMLInputFactory”异常跨度>
-
是否有可能以某种方式将多个 Stax 实现作为依赖项包含在内(如 BEA 的参考实现,或明确添加的 Sun SJSXP)?
-
嗯,我认为这是可能的。您是否知道如何排除这些依赖关系,或者如何在 .pom 文件中为 cxf 设置首选(Woodstox)实现?
-
这实际上是 CXF 特定的。但是你可以明确排除在 pom 中包含其他人;首先需要看看他们是否进入(使用“mvn dependency:tree”)。问题在于,如果 CXF 使用 SPI 样式的 stax impl 检测,则未指定选择之间的优先顺序。但它可能有特定的覆盖。
标签: java web-services cxf woodstox