How backwards compatible are EJB containers?

为君一笑 提交于 2019-12-08 07:17:34

问题


I have inherited an application that is running on JBoss 2.4.3 (which I believe is EJB spec 2.0 compatible), and I'm running into quite a few issues (like being able to use modern log4j "Logger" apis [JBoss 2.4 specific issues pushing me to upgrade]).

I understand that I should be able to use a EJB 2.1 container (Jboss 4) without issue, but should I expect to be able to go further?

What are the backwards compatibility requirements for EJB?

Are they meant to be backwards compatible through major versions?

Do application vendors make them fully backwards compatible?

What modifications are necessary to make an older application conform? (small or large? application configuration or re-compilation? etc)


回答1:


log4j and EJB 2.0 are not related. If you have problems with log4j, then most likely it is a class path issue and not EJB 2.0 compatbility issue. Probably your old application assumes that log4j is somewhere on system class path.




回答2:


http://what-when-how.com/enterprise-javabeans-3/backward-compatibility-and-interoperability-with-ejb-2/ states that

The EJB 3 specification requires that all complying containers support EJB 2

Which is a good sign. It goes on further to talk about mixing EJB 2 and 3 functionality. So there may be some exceptions, but it really shouldn't be any where near impossible.

Reality may be different; I'll update if I find problems with my jboss upgrade.




回答3:


See this compatibility report for the EJB library:



来源:https://stackoverflow.com/questions/6921562/how-backwards-compatible-are-ejb-containers

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!