JSF2.3WebApp和Tomcat9

JSF2.3WebApp和Tomcat9,tomcat,jsf,cdi,Tomcat,Jsf,Cdi,我想开发一个JSFWeb应用程序 我使用JSF2.3(.xhtml)、Tomcat9.0.33和OpenJDK11.0.2(在Windows10上) Apache Netbean 11.3是我的IDE。(现在支持JSF2.3) 我通过以下帖子开始设置我的环境:对于JSF/Tomcat,这是:设置CDI(Tomcat本机不支持CDI) 这是我的web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="ht

我想开发一个JSFWeb应用程序

我使用JSF2.3(.xhtml)、Tomcat9.0.33和OpenJDK11.0.2(在Windows10上)

Apache Netbean 11.3是我的IDE。(现在支持JSF2.3)

我通过以下帖子开始设置我的环境:对于JSF/Tomcat,这是:设置CDI(Tomcat本机不支持CDI)

这是我的web.xml

<?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
             version="4.0">
      <context-param>
        <param-name>javax.faces.PROJECT_STAGE</param-name>
        <param-value>Development</param-value>
      </context-param>
      <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
      </servlet>
      <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>/faces/*</url-pattern>
        <url-pattern>*.jsf</url-pattern>
        <url-pattern>*.xhtml</url-pattern>
      </servlet-mapping>
      <session-config>
        <session-timeout>
          30
        </session-timeout>
      </session-config>
      <welcome-file-list>
        <welcome-file>faces/index.xhtml</welcome-file>
      </welcome-file-list>
    </web-app>

javax.faces.PROJECT_阶段
发展
Facesservlet
javax.faces.webapp.FacesServlet
1.
Facesservlet
/面孔/*
*.jsf
*.xhtml
30
faces/index.xhtml
和my faces-config.xml:

    <faces-config xmlns="http://xmlns.jcp.org/xml/ns/javaee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
            http://xmlns.jcp.org/xml/ns/javaee/web-facesconfig_2_3.xsd"
        version="2.3">

    </faces-config>

webapp构建时没有问题,但当我运行它时,我发现:

        Using CATALINA_BASE:   "C:\apache-tomcat-9.0.33"
    Using CATALINA_HOME:   "C:\apache-tomcat-9.0.33"
    Using CATALINA_TMPDIR: "C:\apache-tomcat-9.0.33\temp"
    Using JRE_HOME:        "C:\Program Files\Java\openjdk-11.0.2"
    Using CLASSPATH:       "C:\apache-tomcat-9.0.33\bin\bootstrap.jar;C:\apache-tomcat-9.0.33\bin\tomcat-juli.jar"
    17-Mar-2020 16:11:03.226 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version name:   Apache Tomcat/9.0.33
    17-Mar-2020 16:11:03.234 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built:          Mar 11 2020 09:31:38 UTC
    17-Mar-2020 16:11:03.234 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version number: 9.0.33.0
    17-Mar-2020 16:11:03.234 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name:               Windows 10
    17-Mar-2020 16:11:03.234 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version:            10.0
    17-Mar-2020 16:11:03.235 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture:          amd64
    17-Mar-2020 16:11:03.235 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:             C:\Program Files\Java\openjdk-11.0.2
    17-Mar-2020 16:11:03.235 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version:           11.0.2+9
    17-Mar-2020 16:11:03.235 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor:            Oracle Corporation
    17-Mar-2020 16:11:03.236 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:         C:\apache-tomcat-9.0.33
    17-Mar-2020 16:11:03.236 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:         C:\apache-tomcat-9.0.33
    17-Mar-2020 16:11:03.262 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.lang=ALL-UNNAMED
    17-Mar-2020 16:11:03.262 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.io=ALL-UNNAMED
    17-Mar-2020 16:11:03.262 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
    17-Mar-2020 16:11:03.263 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=C:\apache-tomcat-9.0.33\conf\logging.properties
    17-Mar-2020 16:11:03.263 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
    17-Mar-2020 16:11:03.264 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dhttp.nonProxyHosts=localhost|127.0.0.1|VEGAOFFICE
    17-Mar-2020 16:11:03.264 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048
    17-Mar-2020 16:11:03.264 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
    17-Mar-2020 16:11:03.264 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dignore.endorsed.dirs=
    17-Mar-2020 16:11:03.264 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=C:\apache-tomcat-9.0.33
    17-Mar-2020 16:11:03.265 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=C:\apache-tomcat-9.0.33
    17-Mar-2020 16:11:03.265 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=C:\apache-tomcat-9.0.33\temp
    17-Mar-2020 16:11:03.265 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: [C:\Program Files\Java\openjdk-11.0.2\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x86;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x64;C:\Program Files (x86)\AMD\ATI.ACE\Core-Static;C:\Program Files\OpenVPN\bin;c:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;c:\Program Files\Microsoft SQL Server\100\Tools\Binn\;c:\Program Files\Microsoft SQL Server\100\DTS\Binn\;c:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\;c:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files\Java\jdk1.8.0_66\bin;C:\apache-cxf-3.2.2\bin;C:\axis-1_4\bin;C:\Program Files\IEDriverServer_x64_2_53_1\;C:\Program Files\phantomjs-1.9.8-windows\;C:\Program Files\chromedriver_win32\;C:\Program Files\Git\cmd;C:\Program Files\MySQL\MySQL Server 5.7\bin;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\nodejs\;C:\Program Files (x86)\Microsoft SQL Server\150\DTS\Binn\;C:\Program Files (x86)\IDM Computer Solutions\UltraEdit\;C:\Users\rbott\AppData\Local\Microsoft\WindowsApps;C:\Users\rbott\AppData\Roaming\com.wildix\wildixzd-web\2.0.11\;C:\Users\rbott\AppData\Roaming\npm;.]
    17-Mar-2020 16:11:04.047 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-8080"]
    17-Mar-2020 16:11:05.021 INFO [main] org.apache.catalina.startup.Catalina.load Server initialization in [2,235] milliseconds
    17-Mar-2020 16:11:05.206 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service [Catalina]
    17-Mar-2020 16:11:05.207 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet engine: [Apache Tomcat/9.0.33]
    17-Mar-2020 16:11:05.236 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [C:\apache-tomcat-9.0.33\webapps\docs]
    17-Mar-2020 16:11:06.886 WARNING [main] org.apache.catalina.util.SessionIdGeneratorBase.createSecureRandom Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [818] milliseconds.
    17-Mar-2020 16:11:06.943 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [C:\apache-tomcat-9.0.33\webapps\docs] has finished in [1,707] ms
    17-Mar-2020 16:11:06.947 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [C:\apache-tomcat-9.0.33\webapps\examples]
    17-Mar-2020 16:11:08.183 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [C:\apache-tomcat-9.0.33\webapps\examples] has finished in [1,237] ms
    17-Mar-2020 16:11:08.185 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [C:\apache-tomcat-9.0.33\webapps\host-manager]
    17-Mar-2020 16:11:08.291 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [C:\apache-tomcat-9.0.33\webapps\host-manager] has finished in [106] ms
    17-Mar-2020 16:11:08.292 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [C:\apache-tomcat-9.0.33\webapps\manager]
    17-Mar-2020 16:11:08.397 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [C:\apache-tomcat-9.0.33\webapps\manager] has finished in [104] ms
    17-Mar-2020 16:11:08.400 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [C:\apache-tomcat-9.0.33\webapps\ROOT]
    17-Mar-2020 16:11:08.494 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [C:\apache-tomcat-9.0.33\webapps\ROOT] has finished in [94] ms
    17-Mar-2020 16:11:08.501 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
    17-Mar-2020 16:11:08.526 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in [3,503] milliseconds
    17-Mar-2020 16:11:08.923 INFO [http-nio-8080-exec-6] org.apache.catalina.startup.HostConfig.deployDescriptor Deploying deployment descriptor [C:\apache-tomcat-9.0.33\conf\Catalina\localhost\JSF23WebApp.xml]
    17-Mar-2020 16:11:08.928 WARNING [http-nio-8080-exec-6] org.apache.catalina.startup.HostConfig.deployDescriptor The path attribute with value [/JSF23WebApp] in deployment descriptor [C:\apache-tomcat-9.0.33\conf\Catalina\localhost\JSF23WebApp.xml] has been ignored
    17-Mar-2020 16:11:11.984 INFO [http-nio-8080-exec-6] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
    17-Mar-2020 16:11:12.209 INFO [http-nio-8080-exec-6] org.jboss.weld.environment.servlet.EnhancedListener.onStartup WELD-ENV-001008: Initialize Weld using ServletContainerInitializer
    17-Mar-2020 16:11:12.340 INFO [http-nio-8080-exec-6] org.jboss.weld.bootstrap.WeldStartup.<clinit> WELD-000900: 3.1.3 (Final)
    17-Mar-2020 16:11:12.851 WARN [http-nio-8080-exec-6] org.jboss.weld.environment.servlet.WeldServletLifecycle.initialize WELD-ENV-000028: Weld initialization skipped - no bean archive found
    17-Mar-2020 16:11:13.024 INFO [http-nio-8080-exec-6] com.sun.faces.config.ConfigureListener.contextInitialized Initializing Mojarra 2.3.9 ( 20190401-1936 77894020e94a338c9701619b7ef6e9871c5a9079) for context '/JSF23WebApp'
    17-Mar-2020 16:11:13.567 INFO [http-nio-8080-exec-6] com.sun.faces.spi.InjectionProviderFactory.createInstance JSF1048: PostConstruct/PreDestroy annotations present.  ManagedBeans methods marked with these annotations will have said annotations processed.
    17-Mar-2020 16:11:14.128 SEVERE [http-nio-8080-exec-6] com.sun.faces.config.ConfigureListener.contextInitialized 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:357)
            at com.sun.faces.config.processor.FactoryConfigProcessor.process(FactoryConfigProcessor.java:243)
            at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:443)
            at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:237)
            at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4688)
            at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5151)
            at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
            at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:717)
            at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:690)
            at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:705)
            at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:631)
            at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:487)
            at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1642)
            at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
            at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
            at java.base/java.lang.reflect.Method.invoke(Method.java:566)
            at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:289)
            at java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:809)
            at java.management/com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
            at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1590)
            at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:1019)
            at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:355)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:634)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
            at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
            at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:666)
            at org.apache.catalina.valves.RequestFilterValve.process(RequestFilterValve.java:348)
            at org.apache.catalina.valves.RemoteAddrValve.invoke(RemoteAddrValve.java:53)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
            at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
            at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:688)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
            at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:373)
            at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
            at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868)
            at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1594)
            at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
            at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
            at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
            at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
            at java.base/java.lang.Thread.run(Thread.java:834)
        Caused by: javax.faces.FacesException: Unable to find CDI BeanManager
            at com.sun.faces.application.ApplicationImpl.isJsf23(ApplicationImpl.java:2714)
            at com.sun.faces.application.ApplicationImpl.addELResolver(ApplicationImpl.java:549)
            at javax.faces.application.ApplicationWrapper.addELResolver(ApplicationWrapper.java:611)
            at org.jboss.weld.environment.servlet.jsf.WeldApplication.<init>(WeldApplication.java:72)
            at org.jboss.weld.environment.servlet.jsf.WeldApplicationFactory.getApplication(WeldApplicationFactory.java:46)
            at com.sun.faces.application.InjectionApplicationFactory.getApplication(InjectionApplicationFactory.java:88)
            at com.sun.faces.config.InitFacesContext.getApplication(InitFacesContext.java:153)
            at com.sun.faces.lifecycle.ClientWindowFactoryImpl.<init>(ClientWindowFactoryImpl.java:63)
            at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
            at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
            at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
            at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
            at java.base/java.lang.Class.newInstance(Class.java:584)
            at javax.faces.FactoryFinderInstance.getImplGivenPreviousImpl(FactoryFinderInstance.java:391)
            at javax.faces.FactoryFinderInstance.getImplementationInstance(FactoryFinderInstance.java:255)
            at javax.faces.FactoryFinderInstance.getFactory(FactoryFinderInstance.java:529)
            at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:292)
            at com.sun.faces.config.processor.FactoryConfigProcessor.verifyFactoriesExist(FactoryConfigProcessor.java:354)
            ... 48 more
    17-Mar-2020 16:11:14.195 SEVERE [http-nio-8080-exec-6] org.apache.catalina.core.StandardContext.startInternal One or more listeners failed to start. Full details will be found in the appropriate container log file
    17-Mar-2020 16:11:14.199 SEVERE [http-nio-8080-exec-6] org.apache.catalina.core.StandardContext.startInternal Context [/JSF23WebApp] startup failed due to previous errors
    17-Mar-2020 16:11:14.214 SEVERE [http-nio-8080-exec-6] javax.faces.FactoryFinderInstance.getFactory Application was not properly initialized at startup, could not find Factory: javax.faces.application.ApplicationFactory. Attempting to find backup.
    17-Mar-2020 16:11:14.215 SEVERE [http-nio-8080-exec-6] com.sun.faces.config.ConfigureListener.contextDestroyed Unexpected exception when attempting to tear down the Mojarra runtime
        java.lang.IllegalStateException: Could not find backup for factory javax.faces.application.ApplicationFactory. 
            at javax.faces.FactoryFinderInstance.getFactory(FactoryFinderInstance.java:541)
            at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:292)
            at com.sun.faces.config.InitFacesContext.getApplication(InitFacesContext.java:152)
            at com.sun.faces.config.ConfigureListener.contextDestroyed(ConfigureListener.java:367)
            at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4735)
            at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5401)
            at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
            at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:187)
            at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:717)
            at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:690)
            at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:705)
            at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:631)
            at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:487)
            at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1642)
            at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
            at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
            at java.base/java.lang.reflect.Method.invoke(Method.java:566)
            at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:289)
            at java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:809)
            at java.management/com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
            at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1590)
            at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:1019)
            at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:355)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:634)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
            at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
            at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:666)
            at org.apache.catalina.valves.RequestFilterValve.process(RequestFilterValve.java:348)
            at org.apache.catalina.valves.RemoteAddrValve.invoke(RemoteAddrValve.java:53)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
            at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
            at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:688)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
            at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:373)
            at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
            at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868)
            at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1594)
            at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
            at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
            at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
            at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
            at java.base/java.lang.Thread.run(Thread.java:834)
    17-Mar-2020 16:11:15.342 INFO [http-nio-8080-exec-6] org.apache.catalina.startup.HostConfig.deployDescriptor Deployment of deployment descriptor [C:\apache-tomcat-9.0.33\conf\Catalina\localhost\JSF23WebApp.xml] has finished in [6,420] ms
使用CATALINA_库:“C:\apache-tomcat-9.0.33”
使用CATALINA_主页:“C:\apache-tomcat-9.0.33”
使用CATALINA_TMPDIR:“C:\apache-tomcat-9.0.33\temp”
使用JRE_主页:“C:\Program Files\Java\openjdk-11.0.2”
使用类路径:“C:\apache-tomcat-9.0.33\bin\bootstrap.jar;C:\apache-tomcat-9.0.33\bin\tomcat juli.jar”
2020年3月17日16:11:03.226信息[main]org.apache.catalina.startup.VersionLoggerListener.log服务器版本名称:apache Tomcat/9.0.33
2020年3月17日16:11:03.234信息[main]org.apache.catalina.startup.VersionLoggerListener.log服务器构建时间:2020年3月11日09:31:38 UTC
2020年3月17日16:11:03.234信息[main]org.apache.catalina.startup.VersionLoggerListener.log服务器版本号:9.0.33.0
2020年3月17日16:11:03.234信息[main]org.apache.catalina.startup.VersionLoggerListener.log操作系统名称:Windows 10
2020年3月17日16:11:03.234信息[main]org.apache.catalina.startup.VersionLoggerListener.log操作系统版本:10.0
2020年3月17日16:11:03.235信息[main]org.apache.catalina.startup.VersionLoggerListener.log体系结构:amd64
2020年3月17日16:11:03.235信息[main]org.apache.catalina.startup.VersionLoggerListener.log Java主页:C:\Program Files\Java\openjdk-11.0.2
2020年3月17日16:11:03.235信息[main]org.apache.catalina.startup.VersionLoggerListener.log JVM版本:11.0.2+9
2020年3月17日16:11:03.235信息[main]org.apache.catalina.startup.VersionLoggerListener.log JVM供应商:Oracle公司
2020年3月17日16:11:03.236信息[main]org.apache.catalina.startup.VersionLoggerListener.log catalina_BASE:C:\apache-tomcat-9.0.33
2020年3月17日16:11:03.236信息[main]org.apache.catalina.startup.VersionLoggerListener.log catalina_主页:C:\apache-tomcat-9.0.33
2020年3月17日16:11:03.262信息[main]org.apache.catalina.startup.VersionLoggerListener.log命令行参数:--add opens=java.base/java.lang=ALL-UNNAMED
2020年3月17日16:11:03.262信息[main]org.apache.catalina.startup.VersionLoggerListener.log命令行参数:--add opens=java.base/java.io=ALL-UNNAMED
2020年3月17日16:11:03.262信息[main]org.apache.catalina.startup.VersionLoggerListener.log命令行参数:--add opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
2020年3月17日16:11:03.263 INFO[main]org.apache.catalina.startup.VersionLoggerListener.log命令行参数:-Djava.util.logging.config.file=C:\apache-tomcat-9.0.33\conf\logging.properties
2020年3月17日16:11:03.263信息[main]org.apache.catalina.startup.VersionLoggerListener.log命令行参数:-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
2020年3月17日16:11:03.264 INFO[main]org.apache.catalina.startup.VersionLoggerListener.log命令行参数:-Dhttp.nonProxyHosts=localhost | 127.0.0.1 | vegaooffice
2020年3月17日16:11:03.264 INFO[main]org.apache.catalina.startup.VersionLoggerListener.log命令行参数:-Djdk.tls.ephemeralDHKeySize=2048
2020年3月17日16:11:03.264 INFO[main]org.apache.catalina.startup.VersionLoggerListener.log命令行参数:-Djava.protocol.handler.pkgs=org.apache.catalina.webresources
2020年3月17日16:11:03.264 INFO[main]org.apache.catalina.startup.VersionLoggerListener.log命令行参数:-Dignore.annowed.dirs=
2020年3月17日16:11:03.264信息[main]org.apache.catalina.startup.VersionLoggerListener.log命令行参数:-Dcatalina.base=C:\apache-tomcat-9.0.33
2020年3月17日16:11:03.265信息[main]org.apache.catalina.startup.VersionLoggerListener.log命令行参数:-Dcatalina.home=C:\apache-tomcat-9.0.33
2020年3月17日16:11:03.265信息[main]org.apache.catalina.startup.VersionLoggerListener.log命令行参数:-Djava.io.tmpdir=C:\apache-tomcat-9.0.33\temp
17-Mar-2020 16:11:03.265 INFO[main]org.apache.catalina.core.AprLifecycleListener.lifecycleEvent在java.library.path上找不到基于APR的apache Tomcat本机库,该库允许在生产环境中实现最佳性能:[C:\Program Files\Java\openjdk-11.0.2\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\ProgramData\Oracle\Java\javapath;C:\Program Files(x86)\Intel\iCLS客户端\;C:\Program Files\Intel\iCLS客户端\;C:\WINDOWS\system32\Wbem;C:\WINDOWS\system32\Wbem;C:\WINDOWS\system32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\Intel(R)管理引擎组件\DAL;C:\Program Files\Intel\Intel(R)管理引擎组件\IPT;C:\Program Files(x86)\Intel\Intel(R)管理引擎组件\DAL;C:\Program Files(x86)\Intel\Intel(R)管理引擎组件\IPT;C:\Program Files(x86)\Intel\OpenCL SDK\2.0\bin\x86;C:\Program Files(x86)\英特尔\OpenCL SDK\2.0\bin\x64;C:\Program Files(x86)\AMD\ATI.ACE\Core Static;C:\Program Files\OpenVPN\bin;C:\Program Files(x86)\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files(x86)\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files(x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\;c:\Program Files(x86)\Micro
    <?xml version="1.0" encoding="UTF-8"?>
    <Context path="/JSF23WebApp">
      <Resource name="BeanManager" 
            auth="Container"
            type="javax.enterprise.inject.spi.BeanManager"
            factory="org.jboss.weld.resources.ManagerObjectFactory" />
    </Context>
<?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://xmlns.jcp.org/xml/ns/javaee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/beans_2_0.xsd"
        bean-discovery-mode="all" 
        version="2.0">
    </beans>
<project
    xmlns="http://maven.apache.org/POM/4.0.0" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>fri</groupId>
  <artifactId>jsfMavenEclipse</artifactId>
  <version>0.0.1-SNAPSHOT</version>

  <packaging>war</packaging>

  <dependencies>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>4.0.0</version>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <groupId>org.glassfish</groupId>   <!-- Oracle -->
      <artifactId>javax.faces</artifactId>
      <version>2.3.9</version>
    </dependency>

    <dependency>
      <groupId>org.jboss.weld.servlet</groupId>   <!-- Red Hat -->
      <artifactId>weld-servlet-shaded</artifactId>
      <version>3.1.2.Final</version>
    </dependency>

  </dependencies>

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.8.1</version>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
        </configuration>
      </plugin>

    </plugins>

  </build>

</project>
${tomcat_home}\wtpwebapps\${project_name}\WEB-INF\classes
${tomcat_home}\webapps\${project_name}\WEB-INF\classes
${tomcat_home}\(.metadata\.plugins...)\{project_name}\WEB-INF\classes