今天仍然在解决was5.1+JAAS+iPlanet LDAP的授权问题。自从接受这个J2EE应用移植任务,真的没想到从JBOSS将应用移植到Websphere会如此麻烦,XDoclet生成的j2ee配置没能很好的适应Websphere,前段时间找到一个XDoclet为支持Websphere的插件,使得EntityBean能够实现CMP的配置(仅仅是Top to Down,而无法做到Meet in Middle,据发布这个插件的站点说Websphere实现Meet in Middle的配置非常复杂,不太容易用XDoclet方式做到,如果希望这样做的最好使用WSAD,问了IBM的技术支持,他们也说不清楚到底在Meet in Middle方式时WSAD导出的ear中有什么特殊的配置),JAAS框架在Websphere中的应用又不是很顺利。搞得人心情很坏。
根结可能在于XDoclet对Websphere支持不够。IBM的技术支持建议使用WSAD来处理这个问题。可项目编码基本完成,XDoclet生成的ear又不能顺利的导入WSAD,如果用WSAD重新配置,基本上等于将代码重新写一次。faint...
项目告诉我的教训是,ANT+XDoclet的开发方式最好不要应用在Websphere作为AppServer的项目中。除非Websphere后面的版本透明自己的部署文件或者某位高人开发出一个jar包或者eclipse的插件来支持生成Websphere的部署文件。
ps. xdoclet那个支持Websphere 5.x and 6.0的插件地址
http://www.callista.se/enterprise/downloads/XDoclet/modules/ibm/
NOTE: The module still lacks support for managing OR mapping for CMP Entity Beans.
This is quite a complex thing to support for WebSphere so for now you need to either to use the default (TOP-DOWN) mapping that happens at deployment time in WebSphere or use WebSphere Studio Application Developer for a more sophisticated OR mapping.