我在java1.7上构建的EJB3应用程序完全部署在weblogic 12.1.2.0服务器中。但是,在使用java1.8构建的EAR迁移到weblogic 12.1.3.0之后,它会抛出各种错误,例如依赖注入问题。我是否需要更改当前代码中的注释,例如@ EJB,@ Inject和@Local?
我不会走得这么远。我认为新的应用服务器上确实缺少一个jar。
如果你的应用程序从12.1.2.0移到12.1.3.0,那么weblogic 12.1.2.0的lib文件夹是否可能包含你没有进入新应用程序服务器的commons jar(适用于所有应用程序)?
不要使用较新版本复制已存在的jar,而是搜索曾为应用程序添加的自定义内容。什么样的课程被告知失踪?
如果Weblogic可以使用在版本12.1.2.0上设置的统一类加载器(我不知道)并且从lib服务器文件夹和ear内容更改为类,那么它也可以是一个技巧,现在在12.1.3.0中这个自定义未设置,并且只从耳朵开始上课。
可能你有捆绑jar和那些规范的实现,比如@EJB,@ Inject(等)。
如果检查两个版本之间的差异,它们对于这些规范完全相同(至少):
https://docs.oracle.com/middleware/1212/wls/NOTES/whatsnew.htm#BGGGHCJD
https://docs.oracle.com/middleware/1213/wls/NOTES/whatsnew.htm#BGGGHCJD
也许如果您发布堆栈跟踪,我们可以确定问题