8 Replies Latest reply on Nov 25, 2015 8:36 AM by Abhishek Gupta

    Critical error during deployment: : com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! null

    Abhishek Gupta Newbie

      Hi I'm getting attached error while deploying my EAR. I would really appreciate if anyone could hint the error.

       

      I have also attached my example-config.xml and web.xml

        • 1. Re: Critical error during deployment: : com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! null
          Jay SenSharma Master

          Your config looks fine.  It looks like you might be including some JSF API or JSF Implementation jar inside your application, which might be causing the configuration failure due to conflict.

          If you are packaging any JSF related jar inside your  "DIDEAR.ear/DIDWeb.war/WEB-INF/lib" then please try removing it and then test again.

           

          Still if you face any issue then please share the list of JARs present inside your application. Looks like you are using JBoss EAP 6.4 which includes the JSF jars on its own as following so if you are trying to package your own jsf then it is not needed until you want your own version of jsf.

           

          $JBOSS_HOME/modules/system/layers/base/javax/faces/api/1.2/jsf-api-1.2.15.b01-redhat-12.jar

          $JBOSS_HOME/modules/system/layers/base/javax/faces/api/main/jboss-jsf-api_2.1_spec-2.1.28.Final-redhat-1.jar

           

           

          NOTE: JBoss EAP 6.4 uses JSF 2.1.28 as default. So please check if your application or the jars which you are using in your application are compatible to it or not.   (EAP 6.4 also ships a separate slot containing the JSF 1.2 api as well as mentioned above)

          • 2. Re: Critical error during deployment: : com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! null
            Abhishek Gupta Newbie

            Wooohoooo..!! I replaced my project jars with:

             

            $JBOSS_HOME/modules/system/layers/base/javax/faces/api/1.2/jsf-api-1.2.15.b01-redhat-12.jar

            $JBOSS_HOME/modules/system/layers/base/javax/faces/api/main/jboss-jsf-api_2.1_spec-2.1.28.Final-redhat-1.jar

             

            and it worked... Thanks so much Jay..!! You Rock..!!

            • 3. Re: Critical error during deployment: : com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! null
              Jay SenSharma Master

              The JSF dependencies are available to all the applications deployed on EAP6 by default, So you do not need to include those Jars inside the application.

              Rather than adding the JAR inside the application you could have simply removed the JSF jars which were present in your old application.

               

              As JBoss EAP 6.4 will by default offer JSF 2.1 jars for the applications hence If your application needs JSF 1.2 version only then you could add the following kind of "jboss-deployment-structure.xml" inside your application "DIDEAR.ear/META-INF"

               

              <jboss-deployment-structure>
                 <deployment>
                      <exclusions>
                        <module name="javax.faces.api" slot="main"/>
                        <module name="com.sun.jsf-impl" slot="main"/>
                      </exclusions>
                      <dependencies>
                        <module name="javax.faces.api" slot="1.2" export="true"/>
                        <module name="com.sun.jsf-impl" slot="1.2" export="true"/>
                      </dependencies>
                  </deployment>
              </jboss-deployment-structure>
              
              
              1 of 1 people found this helpful
              • 4. Re: Critical error during deployment: : com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! null
                Abhishek Gupta Newbie

                Thanks a a lot Jay. This worked even better..!!

                 

                I have one more query, though I should start a new discussion, but I would really appreciate if you could please provide your suggestions here:

                 

                In Websphere I access the application via http://server-name/DIDWeb

                 

                but in JBoss I had to run it via http://server-name:8080/DIDWeb

                 

                Is there any way that I can run in JBoss via same URL i.e. http://server-name:8080/DIDWeb?

                • 6. Re: Critical error during deployment: : com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! null
                  Abhishek Gupta Newbie

                  I tried to change the http port from 8080 to 80, but it is saying permission denied. I killed all the processes of Websphere. Am I missing something:

                   

                  03:17:23,150 ERROR [org.apache.coyote.http11.Http11Protocol] (MSC service thread 1-31) JBWEB003043: Error initializing endpoint: java.net.BindException: Permission denied /135.155.175.224:80

                          at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:979) [jbossweb-7.4.8.Final-redhat-4.jar:7.4.8.Final-redhat-4]

                          at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:174) [jbossweb-7.4.8.Final-redhat-4.jar:7.4.8.Final-redhat-4]

                          at org.apache.catalina.connector.Connector.init(Connector.java:985) [jbossweb-7.4.8.Final-redhat-4.jar:7.4.8.Final-redhat-4]

                          at org.jboss.as.web.WebConnectorService.start(WebConnectorService.java:318) [jboss-as-web-7.4.0.Final-redhat-19.jar:7.4.0.Final-redhat-19]

                          at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1980) [jboss-msc-1.1.5.Final-redhat-1.jar:1.1.5.Final-redhat-1]

                          at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1913) [jboss-msc-1.1.5.Final-redhat-1.jar:1.1.5.Final-redhat-1]

                          at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) [rt.jar:1.6.0_101]

                          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) [rt.jar:1.6.0_101]

                          at java.lang.Thread.run(Thread.java:682) [rt.jar:1.6.0_101]

                   

                  03:17:23,218 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-31) MSC000001: Failed to start service jboss.web.connector.http: org.jboss.msc.service.StartException in service jboss.web.connector.http: JBAS018007: Error starting web connector

                          at org.jboss.as.web.WebConnectorService.start(WebConnectorService.java:376)

                          at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1980) [jboss-msc-1.1.5.Final-redhat-1.jar:1.1.5.Final-redhat-1]

                          at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1913) [jboss-msc-1.1.5.Final-redhat-1.jar:1.1.5.Final-redhat-1]

                          at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) [rt.jar:1.6.0_101]

                          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) [rt.jar:1.6.0_101]

                          at java.lang.Thread.run(Thread.java:682) [rt.jar:1.6.0_101]

                  Caused by: LifecycleException:  JBWEB000023: Protocol handler initialization failed

                          at org.apache.catalina.connector.Connector.init(Connector.java:987)

                          at org.jboss.as.web.WebConnectorService.start(WebConnectorService.java:318)

                          ... 5 more

                  • 7. Re: Critical error during deployment: : com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! null
                    Jay SenSharma Master

                    Ports less than 1024 range requires root permission to open those ports only via "root" user permission by default.

                     

                    And it is not recommended to run your JBoss or other java processes on less than 1024 port or on 80 port as those are called as "Privileged Ports"

                     

                    See: Privileged Ports

                     

                    The TCP/IP port numbers below 1024 are special in that normal users are not allowed to run servers on them. This is a security feaure, in that if you connect to a service on one of these ports you can be fairly sure that you have the real thing, and not a fake which some hacker has put up for you.

                    The normal port number for W3 servers is port 80. This number has been assigned to WWW by the Internet Assigned Numbers Authority, IANA.

                     

                     

                    So better to use apache or some other front end server to listen on port 80 (default for http) and then forward the requests to JBoss from there.  Or at the OS level you can do the port forwarding to achieve the same.

                    • 8. Re: Critical error during deployment: : com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! null
                      Abhishek Gupta Newbie

                      Hi Jay,

                       

                      I'm getting one error:

                       

                      <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>

                      <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>

                       

                      My Application is not able to find these tag libraries. Are these not included in:

                       

                      $JBOSS_HOME/modules/system/layers/base/javax/faces/api/1.2/jsf-api-1.2.15.b01-redhat-12.jar

                      $JBOSS_HOME/modules/system/layers/base/javax/faces/api/main/jboss-jsf-api_2.1_spec-2.1.28.Final-redhat-1.jar