我今天在开发项目中遇到了问题。我想在TomEE 1.6.0+环境中创建webservice,就像我之前在Glassfish环境中一样。我遇到了很多麻烦所以我想我尝试用Sun Metro堆栈替换Apache CXF(版本2.3)。
我还没有找到任何教程,所以我尝试自己做点什么。我的解决方案是从TomEE lib文件夹中删除所有cxf - * .jar和openejb-cxf - * .jar,我添加了webservices - * .jar(只有以下4个库:rt,tools,extra,extra- api)来自地铁分布。我查看了安装ant脚本,并根据安装定义选择了文件。
现在看起来一切都很完美。现在我可以像以前一样使用webservices以同样的方式工作。我的项目顺利部署到TomeEE环境中。
我现在的问题很简单:
这是一个正确的解决方案还是看起来像黑客?
提前感谢您的任何反馈。
答案 0 :(得分:0)
明确的答案将来自TomEE项目的某个人,但我很惊讶这有效......但我很高兴它为你做了。
为特定目的,TomEE已将CDI绑定到CDF:它可以扫描jax-rs注释,注入字段,公开服务等(枚举太多)。只要您的应用程序不依赖于任何该功能,您就可以了。
由于您运行的是不受支持的配置,因此此处的密钥是彻底的测试。我会创建一组集成测试(SOAP-UI?),它将为您提供一个舒适的分支覆盖级别......绝对至少可以覆盖您的快乐路径。
关于TomEE的好处是你发现它非常模块化。祝你好运,并为社区回馈以后的一切。