[英]EJB Portability
我正在和一个朋友谈论Web应用程序(.war文件)从应用程序服务器到应用程序服务器的可移植性。 具体来说,如果我有一个.war文件,其中包含我的业务逻辑,我的ejb jar和我的“网络”组件,例如html / css / js。
他似乎建议我可以像将glassfish服务器一样轻松地将战争部署到jboss服务器,而无需修改代码。
我的评论是,我认为这是不正确的,因为例如,如果在我的一个servlet中进行EJB查找,则导出的JNDI名称可能因服务器供应商而异。 因此,如果将EJB部署到jboss服务器,则用于查找它的JNDI名称可能与将其部署在glassfish服务器上时有所不同,因此JNDI查找字符串将有所不同。
那不是真的吗 是JNDI命名约定标准吗? 我还在学习。
您说得对,有时您可能会遇到类似的问题。 例如,大多数应用程序服务器将java:comp / UserTransaction用作UserTransaction接口的JNDI,但在JBoss AS7中,JNDI是java:jboss / UserTransaction。
另一方面,您可以将JNDI名称作为应用程序中的可配置参数,并且移植应该更容易。
总而言之,您的应用程序有可能无需任何更改即可移植到另一台服务器,但是您不能认为这是理所当然的。 通常,当您遇到类似问题时,这并非易事。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.