当前位置: 首页 > 知识库问答 >
问题:

WebLogic 10.3.6升级到12c时,从JSF 1.1迁移到1.2会导致错误,尤其是在尝试查找JSF 1.2库时

宋臻
2023-03-14

正如标题所述,我们最近从WebLogic 10.3.6升级到了12c。我们的应用程序使用的是JSF1.1,但对于12c,您必须使用1.2或2.0。我遇到的问题是,将应用程序更新到1.2、在WebLogic中部署1.2,然后还要更新WebLogic。xml错误不会消失,前端返回500个错误。

更新应用程序和weblogic。xml:首先删除了jsf api。jar和jsf impl。来自WEB-INF/lib的jar。

weblogic。xml:

    <?xml version="1.0" encoding="UTF-8"?>
<wls:weblogic-web-app xmlns:wls="http://xmlns.oracle.com/weblogic/weblogic-web-app" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd http://xmlns.oracle.com/weblogic/weblogic-web-app http://xmlns.oracle.com/weblogic/weblogic-web-app/1.4/weblogic-web-app.xsd">
     <wls:container-descriptor>
        <wls:show-archived-real-path-enabled>true</wls:show-archived-real-path-enabled>
     </wls:container-descriptor>
     <wls:library-ref>
        <wls:library-name>jsf</wls:library-name>
        <wls:specification-version>1.2</wls:specification-version>
        <wls:implementation-version>1.2.9.0</wls:implementation-version>
        <wls:exact-match>false</wls:exact-match>
     </wls:library-ref>
</wls:weblogic-web-app>

部署到服务器的JSF

收到的错误:

weblogic中定义的“WebAppModule(ExampleDeployment)”的未解析Webapp库引用。xml[扩展名:jsf,规范版本:1.2,实现版本:1.2.9.0,精确匹配:false]

无法实例化此标记指定的TagExtraInfo类:“com.sun.faces.taglib.FaceStageExtraInfo”。

这可能是,也可能不是一个独特的场景,但weblogic。xml仅位于我的一个ear文件中,其他文件中不使用。第一个错误来自weblogic的ear。xml在其中,第二个来自一个没有。我假设这是因为在我接管之前,WEB-INF/lib中使用了jsf JAR。

感谢您的回复!

编辑2/3:注释掉com。太阳面孔。塔格利布。html_basic中的FaceStageExtraInfo。tld和jsf_核心。tld。这删除了com。太阳面孔。塔格利布。我收到的信息错误。现在我得到:

JAVAlang.ClassCastException:无法转换“显示:内联”为属性“style”键入“javax.el.ValueExpression”

编辑2/4:

发现即使部署了我的库,我的J2EE应用程序也不会出现在任何库下的“引用此库的应用程序”部分。

共有1个答案

诸葛煜
2023-03-14

此问题最终通过向每个没有它们的项目添加weblogic.xml并在其中添加过滤以使用项目本地库而不是服务器提供的内容来解决。这可能不是最佳实践,但Oracle也建议这样做。已经有weblogic.xml的项目刚刚更新以包括过滤。

     <?xml version="1.0" encoding="UTF-8"?> 
     <wls:weblogic-web-app xmlns:wls="http://xmlns.oracle.com/weblogic/weblogic-web-app" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd http://xmlns.oracle.com/weblogic/weblogic-web-app http://xmlns.oracle.com/weblogic/weblogic-web-app/1.4/weblogic-web-app.xsd"> 
    
     <wls:container-descriptor> 
     <wls:prefer-application-packages> 
     <wls:package-name>javax.faces.*</wls:package-name> 
     <wls:package-name>com.sun.faces.*</wls:package-name> 
     <wls:package-name>com.bea.faces.*</wls:package-name> 
     </wls:prefer-application-packages> 
    
     <wls:prefer-application-resources> 
     <wls:resource-name>javax.faces.*</wls:resource-name> 
     <wls:resource-name>com.sun.faces.*</wls:resource-name> 
     <wls:resource-name>com.bea.faces.*</wls:resource-name> 
     <wls:resource-name>META-INF/services/javax.servlet.ServletContainerInitializer</wls:resource-name> 
     <wls:resource-name>META-INF/services/com.sun.faces.*</wls:resource-name> 
     </wls:prefer-application-resources> 
     </wls:container-descriptor> 
     </wls:weblogic-web-app

> 
 类似资料:
  • 我正在使用QT Creator在Ubuntu上制作一个C++程序。我编写的程序编译得很好,直到我决定开始使用C++11而不是C++98(这是QT Creator中的默认值)。我使用的是自己的cmake文件,而不是qmake,为此,我在中包含了以下一行: 在转移到C++11之后,我在行得到一个错误。这是因为,据我所见,变量在任何地方都没有定义,尽管定义了变量。 因此,我有两个问题: 1)为什么变量没

  • 问题内容: 我要回答我自己的问题,这是问题描述。 因此,我有一个应用程序已在商店中发布,并且由于要发布的新版本,数据库架构已更改,因此我自然不得不进行迁移,以将其从版本3升级到最新版本。 5.这包括提供从3迁移到4以及从4迁移到5的迁移,或者一次迁移从3迁移到5的迁移。 这就是我所做的,我提供了这些迁移,并将其提供给Room databaseBuilder(),一切就绪,以模拟正在发生应用程序升级

  • 主要内容:升级到 Nexus 2.x 最新版本,升级到 Nexus 3.x 最新版本与 Nexus 2.x 相比,Nexus 3.x 为我们提供了更多实用的新特性,随着 Nexus 3.x 对 Maven 的支持越来稳定,很多公司和组织都陆续将数据从 Nexus 2.x 迁移升级到 Nexus 3.x。 SonaType 官方建议我们,使用最新版本 Nexus 2.x 升级到最新版本 Nexus 3.x,并在  Nexus 升级兼容性 一文中为我们提供了各个版本 Nexus 升级

  • 你能帮助我们哪里错了或者需要做什么吗… 提前感谢…

  • 我试图升级我目前的java项目,运行在1.6到1.8,但程序编译良好如何曾经当我去http://localhost:8080/MyProject/login.jsp-我得到错误。 我正在使用eclipse luna,我将java\u HOME更改为1.8,将eclipse项目facets更改为1.8,并更新了javax。servlet api=3.1.0。 堆栈跟踪 无布局。jsp 我用常春藤做依

  • 升级后消息声明: 升级到Android Studio到版本>=0.8.0后也会出现同样的问题