假设我有一个标准的EAR文件(以及用于生成它的源文件),需要进行哪些额外的处理才能将其转换为IBM WebSphere“Enhanced EAR”?
提出这个问题的另一种方法是问:“增强型EAR和标准EAR之间有什么区别?”
我非常清楚Rational开发工具(RAD和RSA)中有工具。但是,出于这个问题的目的,我需要在自动构建中完成相同的任务(通过Ant或Maven)。 )
答案 0 :(得分:8)
提出这个问题的另一种方法是问:“增强型EAR和标准EAR之间有什么区别?”
增强型EAR是一个EAR,其中一些XML文件添加到META-INF目录,以在应用程序,服务器或单元级别配置特定资源(有关此内容的更多详细信息,请参阅IBM红皮书WebSphere Application Server V7: Packaging Applications for Deployment)。
J2EE Packaging, Enhanced EARs, and the Application Server Toolkit(pdf)的表23-1列出了这些文件:
alt text http://img46.imageshack.us/img46/6751/table231.png
位于META-INF目录下的文件,将它们嵌入Ant或Maven的标准EAR中应该非常简单,只需在打包前将它们放入META-INF即可。
如果你必须从头开始生成这些文件(这对IMHO来说没有意义),那么它真的是另一个故事,我不确定这些文件的结构是否公开可用。
说真的,如果要使用该功能,请找到一种从WebSphere Enhanced EAR编辑器生成文件的方法。也许获得RAD的试用版来评估此功能> :)或者联系IBM,我相信他们会很乐意 help 向你推销一些东西,甚至是单一的许可证。
更新: IBM为WebSphere提供Ant Tasks,您也可以使用antrun插件从Maven中使用(这似乎是首选方式),但我不认为{{ 3}}正是您正在寻找的,默认的IBM WebSphere Bindings不提供与增强型EAR相同的功能 - 但它们可能是有用且足够的。以防万一,如果您决定使用wsDefaultBindings
任务而不是增强型EAR,则此处为wsadmin
。
答案 1 :(得分:1)
来自他们的文档:
您在此编辑器中指定的服务器配置数据将嵌入到应用程序本身中。
听起来他们将通常通过管理控制台添加的内容(例如,JNDI用于数据源和消息传递,JAAS用于安全性)嵌入到EAR本身中,以便在服务器之间实现更高的可移植性。
答案 2 :(得分:0)
您可以使用wsDefaultBindings
Ant任务使用所需的部署信息填充EAR。示例脚本here。