首页 > 解决方案 > 工厂“javax.faces.lifecycle.ClientWindowFactory”未正确配置

问题描述

我被要求将较旧的 JSF 应用程序部署到 WebLogic 12.2。我已经验证我可以让它出现在 Tomcat 8 中,但是在部署到 Weblogic 时出现以下错误:

####<Jul 9, 2019 4:47:17,815 PM UTC> <Error> <javax.faces> <EC2AMAZ-FD4RQDQ> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <5609e083-ed51-42a9-8deb-44ecd53a5b14-00000008> <1562690837815> <[severity-value: 8] [rid: 0] [partition-id: 0] [partition-name: DOMAIN] > <BEA-000000> <Unable to obtain InjectionProvider from init time FacesContext. Does this container implement the Mojarra Injection SPI?>

####<Jul 9, 2019 4:47:17,830 PM UTC> <Error> <javax.faces> <EC2AMAZ-FD4RQDQ> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <5609e083-ed51-42a9-8deb-44ecd53a5b14-00000008> <1562690837830> <[severity-value: 8] [rid: 0] [partition-id: 0] [partition-name: DOMAIN] > <BEA-000000> <Unable to inject org.apache.myfaces.application.ApplicationFactoryImpl@4a0c9052 because no InjectionProvider can be found. Does this container implement the Mojarra Injection SPI?>

####<Jul 9, 2019 4:47:17,830 PM UTC> <Error> <javax.faces> <EC2AMAZ-FD4RQDQ> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <5609e083-ed51-42a9-8deb-44ecd53a5b14-00000008> <1562690837830> <[severity-value: 8] [rid: 0] [partition-id: 0] [partition-name: DOMAIN] > <BEA-000000> <Unable to inject org.apache.myfaces.application.ApplicationFactoryImpl@f9f730a because no InjectionProvider can be found. Does this container implement the Mojarra Injection SPI?>

####<Jul 9, 2019 4:47:17,846 PM UTC> <Error> <javax.faces> <EC2AMAZ-FD4RQDQ> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <5609e083-ed51-42a9-8deb-44ecd53a5b14-00000008> <1562690837846> <[severity-value: 8] [rid: 0] [partition-id: 0] [partition-name: DOMAIN] > <BEA-000000> <Unable to inject org.apache.myfaces.renderkit.RenderKitFactoryImpl@5f2ce72d because no InjectionProvider can be found. Does this container implement the Mojarra Injection SPI?>

####<Jul 9, 2019 4:47:17,846 PM UTC> <Error> <javax.faces> <EC2AMAZ-FD4RQDQ> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <5609e083-ed51-42a9-8deb-44ecd53a5b14-00000008> <1562690837846> <[severity-value: 8] [rid: 0] [partition-id: 0] [partition-name: DOMAIN] > <BEA-000000> <Unable to inject org.apache.myfaces.renderkit.RenderKitFactoryImpl@7c6947b7 because no InjectionProvider can be found. Does this container implement the Mojarra Injection SPI?>

####<Jul 9, 2019 4:47:17,846 PM UTC> <Error> <javax.faces> <EC2AMAZ-FD4RQDQ> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <5609e083-ed51-42a9-8deb-44ecd53a5b14-00000008> <1562690837846> <[severity-value: 8] [rid: 0] [partition-id: 0] [partition-name: DOMAIN] > <BEA-000000> <Unable to inject org.ajax4jsf.framework.renderer.ChameleonRenderKitFactory@279d179e because no InjectionProvider can be found. Does this container implement the Mojarra Injection SPI?>

####<Jul 9, 2019 4:47:18,049 PM UTC> <Error> <javax.faces> <EC2AMAZ-FD4RQDQ> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <5609e083-ed51-42a9-8deb-44ecd53a5b14-00000008> <1562690838049> <[severity-value: 8] [rid: 0] [partition-id: 0] [partition-name: DOMAIN] > <BEA-000000> <Unable to inject org.apache.myfaces.lifecycle.LifecycleFactoryImpl@7359f3cc because no InjectionProvider can be found. Does this container implement the Mojarra Injection SPI?>

####<Jul 9, 2019 4:47:18,049 PM UTC> <Error> <javax.faces> <EC2AMAZ-FD4RQDQ> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <5609e083-ed51-42a9-8deb-44ecd53a5b14-00000008> <1562690838049> <[severity-value: 8] [rid: 0] [partition-id: 0] [partition-name: DOMAIN] > <BEA-000000> <Unable to inject org.apache.myfaces.lifecycle.LifecycleFactoryImpl@6d389657 because no InjectionProvider can be found. Does this container implement the Mojarra Injection SPI?>

####<Jul 9, 2019 4:47:18,049 PM UTC> <Error> <javax.faces> <EC2AMAZ-FD4RQDQ> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <5609e083-ed51-42a9-8deb-44ecd53a5b14-00000008> <1562690838049> <[severity-value: 8] [rid: 0] [partition-id: 0] [partition-name: DOMAIN] > <BEA-000000> <Unable to inject org.ajax4jsf.framework.DebugLifecycleFactory@58d1377b because no InjectionProvider can be found. Does this container implement the Mojarra Injection SPI?>

####<Jul 9, 2019 4:47:18,111 PM UTC> <Info> <javax.enterprise.resource.webcontainer.jsf.config> <EC2AMAZ-FD4RQDQ> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <5609e083-ed51-42a9-8deb-44ecd53a5b14-00000008> <1562690838111> <[severity-value: 64] [rid: 0] [partition-id: 0] [partition-name: DOMAIN] > <jsf.config.listener.version> <Initializing Mojarra 2.2.8-21 ( 20170411-1128 e6720eddab4eac4ae47623d55ad1dc9d11494fe0) for context '/Admin5'>

####<Jul 9, 2019 4:47:18,424 PM UTC> <Error> <javax.faces> <EC2AMAZ-FD4RQDQ> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <5609e083-ed51-42a9-8deb-44ecd53a5b14-00000008> <1562690838424> <[severity-value: 8] [rid: 0] [partition-id: 0] [partition-name: DOMAIN] > <BEA-000000> <Unable to call @PreDestroy annotated methods because no InjectionProvider can be found. Does this container implement the Mojarra Injection SPI?>

####<Jul 9, 2019 4:47:18,424 PM UTC> <Error> <javax.enterprise.resource.webcontainer.jsf.config> <EC2AMAZ-FD4RQDQ> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <5609e083-ed51-42a9-8deb-44ecd53a5b14-00000008> <1562690838424> <[severity-value: 8] [rid: 0] [partition-id: 0] [partition-name: DOMAIN] > <BEA-000000> <Critical error during deployment:

com.sun.faces.config.ConfigurationException: Factory 'javax.faces.lifecycle.ClientWindowFactory' was not configured properly.
    at com.sun.faces.config.processor.FactoryConfigProcessor.verifyFactoriesExist(FactoryConfigProcessor.java:330)

我在 WEB-INF/lib 中有以下 jar:

acegi-jsf-1.1.2.jar
acegi-security-1.0.2.jar
activation.jar
ajax4jsf-1.0.2.jar
aspectjweaver-1.5.2.jar
clickstream-1.0.2.jar
commons-beanutils.jar
commons-codec-1.3.jar
commons-collections.jar
commons-dbcp.jar
commons-digester.jar
commons-el.jar
commons-fileupload.jar
commons-io.jar
commons-lang-2.3.jar
commons-lang.jar
commons-logging-1.1.jar
commons-pool.jar
commons-validator.jar
corejsf-validator.jar
displaytag-1.1.jar
dwr.jar
ehcache-1.2.3.jar
el-ri.jar
ibatis-common-2.jar
ibatis-sqlmap-2.jar
itext-1.4.jar
jakarta-oro.jar
jsf-facelets.jar
jstl-1.2.jar
jstl.jar
jta.jar
log4j-1.2.11.jar
mail.jar
myfaces-api-1.1.5.jar
myfaces-impl-1.1.5.jar
ojdbc8.jar
orai18n.jar
oscache-2.3.2.jar
sitemesh-2.2.1.jar
spring-ldap-core-1.3.0.RELEASE.jar
spring.jar
standard.jar
struts-menu-2.4.2.jar
tomahawk-1.1.6.jar
urlrewrite-3.0-beta.jar
velocity-1.4.jar
velocity-tools-view-1.1.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/web-app_2_5.xsd http://xmlns.oracle.com/weblogic/weblogic-web-app http://xmlns.oracle.com/weblogic/weblogic-web-app/1.1/weblogic-web-app.xsd">
    <!-- <wls:weblogic-version>10.3.3</wls:weblogic-version> -->
    <wls:context-root>Admin5</wls:context-root>
    <container-descriptor>
        <prefer-web-inf-classes>true</prefer-web-inf-classes>
    </container-descriptor>
    <library-ref>
        <library-name>jstl</library-name>
        <specification-version>1.2</specification-version>
        <implementation-version>1.2</implementation-version>
        <exact-match>true</exact-match>
    </library-ref>
</wls:weblogic-web-app>

任何想法为什么我无法部署它?

标签: tomcatjsfweblogic12cmyfaces

解决方案


推荐阅读