Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

The tag named passThroughAttribute from namespace http://xmlns.jcp.org/jsf/core has a null handler-class defined

i am trying to use JSF 2.2.2 on Jboss 7.1.1.Final i followed the solution 1 in this link: http://www.mastertheboss.com/jsf/installing-jsf-22-on-jboss-as-7 that is based on replacing the current jboss jsf libraries and after that i changed the faces config. but when trying to run the application i am getting the following exception:

22:28:56,076 SEVERE [javax.enterprise.resource.webcontainer.jsf.config] (MSC service thread 1-1) Critical error during deployment: : com.sun.faces.config.ConfigurationException: The tag named passThroughAttribute from namespace http://xmlns.jcp.org/jsf/core has a null handler-class defined
    at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processHandlerClass(FaceletTaglibConfigProcessor.java:422) [jsf-impl-2.2.2.jar:2.2.2]
    at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processTags(FaceletTaglibConfigProcessor.java:378) [jsf-impl-2.2.2.jar:2.2.2]
    at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processTagLibrary(FaceletTaglibConfigProcessor.java:321) [jsf-impl-2.2.2.jar:2.2.2]
    at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.process(FaceletTaglibConfigProcessor.java:270) [jsf-impl-2.2.2.jar:2.2.2]
    at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:437) [jsf-impl-2.2.2.jar:2.2.2]
    at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:214) [jsf-impl-2.2.2.jar:2.2.2]
    at org.apache.catalina.core.StandardContext.contextListenerStart(StandardContext.java:3392) [jbossweb-7.0.13.Final.jar:]
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:3850) [jbossweb-7.0.13.Final.jar:]
    at org.jboss.as.web.deployment.WebDeploymentService.start(WebDeploymentService.java:90) [jboss-as-web-7.1.1.Final.jar:7.1.1.Final]
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [rt.jar:1.7.0_25]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [rt.jar:1.7.0_25]
    at java.lang.Thread.run(Unknown Source) [rt.jar:1.7.0_25]

22:28:56,080 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/motivosity]] (MSC service thread 1-1) Exception sending context initialized event to listener instance of class com.sun.faces.config.ConfigureListener: java.lang.RuntimeException: com.sun.faces.config.ConfigurationException: The tag named passThroughAttribute from namespace http://xmlns.jcp.org/jsf/core has a null handler-class defined
    at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:273) [jsf-impl-2.2.2.jar:2.2.2]
    at org.apache.catalina.core.StandardContext.contextListenerStart(StandardContext.java:3392) [jbossweb-7.0.13.Final.jar:]
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:3850) [jbossweb-7.0.13.Final.jar:]
    at org.jboss.as.web.deployment.WebDeploymentService.start(WebDeploymentService.java:90) [jboss-as-web-7.1.1.Final.jar:7.1.1.Final]
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [rt.jar:1.7.0_25]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [rt.jar:1.7.0_25]
    at java.lang.Thread.run(Unknown Source) [rt.jar:1.7.0_25]
Caused by: com.sun.faces.config.ConfigurationException: The tag named passThroughAttribute from namespace http://xmlns.jcp.org/jsf/core has a null handler-class defined
    at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processHandlerClass(FaceletTaglibConfigProcessor.java:422) [jsf-impl-2.2.2.jar:2.2.2]
    at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processTags(FaceletTaglibConfigProcessor.java:378) [jsf-impl-2.2.2.jar:2.2.2]
    at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processTagLibrary(FaceletTaglibConfigProcessor.java:321) [jsf-impl-2.2.2.jar:2.2.2]
    at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.process(FaceletTaglibConfigProcessor.java:270) [jsf-impl-2.2.2.jar:2.2.2]
    at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:437) [jsf-impl-2.2.2.jar:2.2.2]
    at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:214) [jsf-impl-2.2.2.jar:2.2.2]
    ... 8 more

22:28:56,087 ERROR [org.apache.catalina.core.StandardContext] (MSC service thread 1-1) Error listenerStart
22:28:56,088 ERROR [org.apache.catalina.core.StandardContext] (MSC service thread 1-1) Context [/motivosity] startup failed due to previous errors
22:28:56,089 SEVERE [javax.faces] (MSC service thread 1-1) Application was not properly initialized at startup, could not find Factory: javax.faces.application.ApplicationFactory. Attempting to find backup.
22:28:56,090 SEVERE [javax.enterprise.resource.webcontainer.jsf.config] (MSC service thread 1-1) 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.FactoryFinder$FactoryManager.getFactory(FactoryFinder.java:1135) [jsf-api-2.2.2.jar:2.2]
    at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:379) [jsf-api-2.2.2.jar:2.2]
    at com.sun.faces.config.InitFacesContext.getApplication(InitFacesContext.java:140) [jsf-impl-2.2.2.jar:2.2.2]
    at com.sun.faces.config.ConfigureListener.contextDestroyed(ConfigureListener.java:310) [jsf-impl-2.2.2.jar:2.2.2]
    at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:3489) [jbossweb-7.0.13.Final.jar:]
    at org.apache.catalina.core.StandardContext.stop(StandardContext.java:3999) [jbossweb-7.0.13.Final.jar:]
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:3917) [jbossweb-7.0.13.Final.jar:]
    at org.jboss.as.web.deployment.WebDeploymentService.start(WebDeploymentService.java:90) [jboss-as-web-7.1.1.Final.jar:7.1.1.Final]
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [rt.jar:1.7.0_25]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [rt.jar:1.7.0_25]
    at java.lang.Thread.run(Unknown Source) [rt.jar:1.7.0_25]

22:28:56,095 INFO  [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/motivosity]] (MSC service thread 1-1) Cleaning up Shiro Environment
22:28:56,099 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-1) MSC00001: Failed to start service jboss.web.deployment.default-host./motivosity: org.jboss.msc.service.StartException in service jboss.web.deployment.default-host./motivosity: JBAS018040: Failed to start context
    at org.jboss.as.web.deployment.WebDeploymentService.start(WebDeploymentService.java:95)
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [rt.jar:1.7.0_25]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [rt.jar:1.7.0_25]
    at java.lang.Thread.run(Unknown Source) [rt.jar:1.7.0_25]

i removed the configuration for jsf in project facets and still get same error, please advise how can i fix that.

UPDATE: i found out that the issue is in eclipse deploy to jboss, since i tried to install the application with maven and copied the war to deployments folder and launched standalone.bat file and the application was started successfully with no errors.

like image 859
Mahmoud Saleh Avatar asked Sep 03 '13 19:09

Mahmoud Saleh


3 Answers

In Eclipse, go to Project Properties -> Project Facets -> Java Server Faces, and set type to Library Provided by Target Runtime.

like image 144
Nikša Baldun Avatar answered Nov 07 '22 06:11

Nikša Baldun


I had the similar issue when we migrated our application, please make sure you have included jsf jars in scope provided like below:

<jsf.version>2.2.2</jsf.version>

<dependency>
    <groupId>com.sun.faces</groupId>
    <artifactId>jsf-api</artifactId>
    <version>${jsf.version}</version>
    <scope>provided</scope>
</dependency>

<dependency>
    <groupId>com.sun.faces</groupId>
    <artifactId>jsf-impl</artifactId>
    <version>${jsf.version}</version>
    <scope>provided</scope>
</dependency>

change your project facet (Project->Properties->Project Facets) and make sure your jsf is poiting to the right set of jar

Do a clean build, hope this will resolve the above issue

like image 35
Jayaram Avatar answered Nov 07 '22 06:11

Jayaram


I had the same problem as you. I solved it by removing this dependency in my pom.xml.

<dependency>
 <groupId>org.glassfish</groupId>
 <artifactId>javax.faces</artifactId>
 <version>2.2.0-m15</version>
</dependency>

This dependency is only needed when deploying on Tomcat, not on Jboss.

like image 23
Linh Nguyen Avatar answered Nov 07 '22 08:11

Linh Nguyen