java - 使用CXF的wsdl2java,是否有更简单的方法从xml namespace 生成没有版本号的包名称?

标签 java namespaces cxf wsdl2java

我正在使用 Apache CXF 的 wsdl2java 实用程序来创建一些 JAXB 对象和一些 Web 服务代码。我的 WSDL 中的模式有很多 namespace ,末尾带有版本号。例如:

http://example.org/sample/namespace/1.0

当 CXF 生成我的 JAXB 对象时,包最终的包名称如下:

org.example.sample.namespace.1_0

由于这是一个包含许多不同命名空间的大型架构,我必须花费大量时间重构代码,或使用 -p 选项手动将命名空间映射到包名称。这两个过程都非常耗时。

所以,我想知道是否有人知道是否有更简单的路线。还是我太挑剔了,我应该按原样接受包名称?

最佳答案

看起来一堆 -p 标志可能是将 namespace 映射到包名称的最快方法。在我的研究中,我还发现您可以通过使用 -b 选项传入 JAXB 绑定(bind)文件来实现此目的(我对 JAXB 有点陌生)。这也是一个很好的解决方案,但比使用一堆 -p 标志需要更多的努力。此外,从长远来看,JAXB 绑定(bind)文件可能更好,因此您可以根据需要重复该过程。

关于java - 使用CXF的wsdl2java,是否有更简单的方法从xml namespace 生成没有版本号的包名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3248364/

相关文章:

java - 是否可以在 spring-data-elasticsearch 中将 Completion 字段与 Context Suggester 映射?

java - write (byte[] b) 大字节数组的优化用法

java - CloseableHttpClient 连接池关闭

java - 如何在 Apache CXF jax-rs (REST) 中提交 JSON 数据作为请求主体

jms - Camel - CXF 端点 - JMS 请求-回复模型

java - 无法从 Activity 访问 fragment 方法

c++ - 命名空间与类模板名称冲突 : different compiler behavior

c++ - 没有命名空间标准的 friend 重载运算符

node.js - 如何将参数传递给 jake 任务,例如命名空间 :task parameter?

java - TomEE 嵌入式和自定义 JAX-RS 应用程序部署