2011-05-24 45 views
5

我目前使用CXF 2.4.0和我的代码是呼叫者的web服务。我能够使用Maven中的cxf插件生成客户端java文件。我的问题是生成的文件的最佳做法是什么?我应该编译生成的文件并将生成的类文件打包到单个jar文件中,还是应该将所有生成的java文件包含在构建路径中?CXF WSDL2JAVA最佳实践

回答

0

对于生成的代码中,我通常创建在“主”一“生成”文件夹(主/ SRC/JAVA - 主/生成/ JAVA),我有CXF生成的类那里。然后我只是将“生成”文件夹添加到编译器源路径。

+0

谢谢!什么是不生成生成的类文件的原因?是否由于您的Web服务技术上的依赖性管理问题?所生成的文件都锁定到CXF的特定版本,这是很难升级和维护 – 2011-05-24 21:11:31

+0

不,它只是一个偏好的问题。如果您的wsdl经常更改,则必须重新生成源代码并重新创建该jar。如果你的wsdl是“静态的”,你可以很好地从你生成的代码中创建一个jar。我不认为这里有一个最佳实践。 – 2011-05-24 21:52:18

1

我得到CXF下目标生成的代码,它选择目标/生成来源/默认情况下,它通过我好CXF。 (如果你使用xjc来处理一个模式,它使用类似的模式,Maven对于约定很棒!)

我有时候会把生成的代码放到它自己的maven模块中,这有时可以简化一些事情; Eclipse并不完全满意于生成的源代码(它不喜欢清理将源代码从脚下剥离出来的事实),使得看不见的东西变得更简单。毕竟,它只是碰巧从WSDL文档生成,生成的代码和包编译代码到一个jar文件库...

+0

注意:无论您是将WSDL文档放在项目中还是在编译期间从外部源下载,我最喜欢前者,因为它减少了可能出错的事情的数量(特别是对于WSDL依赖项的XSD依赖项,有时最终会导致不喜欢自动化客户端的服务器)。 – 2011-05-24 22:05:17

0

创建生成任务(蚂蚁/ Maven的)。当wsdl更改时,您只需重新运行构建任务。

如果选择生成源,使用Generated注解。大多数wsdl生成工具都有这个选项。