简体   繁体   中英

WebLogic 10.3.6 Upgrade to 12c, Migration from JSF 1.1 to 1.2 results in errors specifically when trying to find the JSF 1.2 library

As the title states we recently upgraded from WebLogic 10.3.6 to 12c. Our application was using JSF 1.1 but with 12c you have to use 1.2 or 2.0. The issue I'm running into is when updating the application to 1.2, deploying 1.2 in WebLogic, and then also updating the weblogic.xml the errors do not go away and a 500 error is returned on the front end.

Updating the application and weblogic.xml: First removed jsf-api.jar and jsf-impl.jar from WEB-INF/lib.

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 Deployed to server

Errors received:

Unresolved Webapp Library references for "WebAppModule(ExampleDeployment)", defined in weblogic.xml [Extension-Name: jsf, Specification-Version: 1.2, Implementation-Version: 1.2.9.0, exact-match: false]

The TagExtraInfo class: "com.sun.faces.taglib.FacesTagExtraInfo" specified by this tag could not be instantiated.

This may or may not be a unique scenario but the weblogic.xml is only located in one of my ear files and is not used in the others. The first error came from the ear with the weblogic.xml in it and the second came from one without. I'm assuming this was due to the jsf jars being used in the WEB-INF/lib prior to me taking over.

Thank you for any responses!

Edit 2/3: Commented out com.sun.faces.taglib.FacesTagExtraInfo in html_basic.tld and jsf_core.tld. This removed the com.sun.faces.taglib.FacesTagExtraInfo error I was receiving. Now I'm getting:

java.lang.ClassCastException: Unable to convert "display: inline;" to type "javax.el.ValueExpression" for attribute "style"

Edit 2/4:

Found that even though my libraries are deployed my J2EE applications are not popping up in the "Applications that reference this library" section under any of the libraries.

This issue ended up being fixed by adding a weblogic.xml to each of the projects that did not have them and add in filtering into them to use project local libraries instead of what is provided by the server. This is not best practice probably but is also what was advised by Oracle. The project that did already have the weblogic.xml was just updated to include the filtering.

     <?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

> 

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM