将ear部署到Weblogic 12c时出错



我正在使用Jdeveloper 11g和weblogic服务器12c开发简单的网页。我有一个包含ejb的ejb jar,还有一个包含实体的jar,还有另一个包含网页和托管bean的war。那个托管bean调用并使用ejb。

但当我在weblogic服务器中部署它们时,它会给我以下错误:

<Feb 28, 2012 5:20:38 PM ULAT> <Warning> <Deployer> <BEA-149078> <Stack trace for message 149004
weblogic.application.ModuleException: Error: Unresolved Webapp Library references for       
"WebAppModule(IBIForum:IBIForum-view-context-root)", defined in weblogic.xml [Extension-  Name:     
jstl, Specification-Version: 1.2, exact-match: false], [Extension-Name: jsf,     Specification-Version: 2, exact-match: false]
at   weblogic.servlet.internal.WebAppModule.mergeWebAppLibraries(WebAppModule.java:472)
at weblogic.servlet.internal.WebAppModule.processWebAppLibraries(WebAppModule.java:440)
at weblogic.servlet.internal.WebAppModule.init(WebAppModule.java:256)
at weblogic.servlet.internal.WebAppModule.init(WebAppModule.java:636)
at weblogic.application.internal.flow.ScopedModuleDriver.init(ScopedModuleDriver.java:162)
Truncated. see log file for complete stacktrace > 

您的应用程序在WebLogic12c中被标记为依赖于JSF 2,但由于WLS12c已经包含了JSF 2,因此不需要此标记。我建议您在JDev应用程序属性中查看应用程序使用的库。

从WebLogic Server 12.1.1开始,JSF 2.x和JSTL 1.2已经直接包含在服务器的类路径中。您的应用程序部署到WebLogicServer可以无缝地使用JSF2.x和JSTL 1.2,无需部署和引用单独的共享库,就像以前版本中的情况一样。

参见使用JSF和JSTL 的WebLogic 12.1.2-6文档

尽管如此,由于您正在WLS 12c上进行部署,我也强烈建议您使用JDeveloper 12c或OEPE 12c,而不是JDev 11g。先前版本的JDev未经认证可与WLS12c一起使用,这可能是您出现此异常的原因。

Weblogic同时提供jsf 1.2和2的实现。您可能需要将其中一个部署为库,并将其引用为共享库

您可能缺少JSTL 1.2库。按照以下步骤进行安装:进入服务器,单击install new Application/Library,然后选择Oracle->Middleware->wlserver->common->deployable libraries的路径,然后选择JSTL 1.2。或者JSF 2.0库。它对我有效

最新更新