6 Replies Latest reply: Feb 12, 2008 6:35 PM by Stan Silvert RSS

FATAL [application] JSF1029

Alexander Kozhukhov Newbie

I'm using jboss 4.2.1, jsf 1.2 and riachfaces
When my project are deploing jboss have error

19:04:49,776 FATAL [application] JSF1029: The specified InjectionProvider implementation 'org.jboss.web.jsf.integration.injection.JBossInjectionProvider' does not implement the InjectionProvider interface.
19:04:49,776 WARN [application] JSF1033: Resource injection is DISABLED.
19:04:50,808 ERROR [STDERR] javax.faces.FacesException: org.ajax4jsf.renderkit.ChameleonRenderKitFactory
19:04:50,808 ERROR [STDERR] at javax.faces.FactoryFinder.getImplGivenPreviousImpl(FactoryFinder.java:574)
19:04:50,808 ERROR [STDERR] at javax.faces.FactoryFinder.getImplementationInstance(FactoryFinder.java:460)
19:04:50,808 ERROR [STDERR] at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:256)
19:04:50,808 ERROR [STDERR] at com.sun.faces.config.ConfigureListener.configure(ConfigureListener.java:1178)
19:04:50,808 ERROR [STDERR] at com.sun.faces.config.ConfigureListener.configure(ConfigureListener.java:602)
19:04:50,808 ERROR [STDERR] at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:496)


What can I do whith it?

  • 1. Re: FATAL [application] JSF1029
    Stan Silvert Master

    This error can happen if you bundle a JSF implementation with your web app. It is probably conflicting with the JSF implementation built into JBoss.

    Please let me know if removing JSF works for you.

    Thanks,

    Stan

  • 2. Re: FATAL [application] JSF1029
    Stan Silvert Master

    The only other thing I can think of is if you are setting the com.sun.faces.injectionProvider context-param in your web.xml.

    You could also try commenting out that context-param in deploy/jboss-web.deployer/conf/web.xml.

    Stan

  • 3. Re: FATAL [application] JSF1029
    Robert Stevens Newbie

    Stan,

    I found two web.xml files:

    C:\java\jboss-4.2.2.GA\server\default\deploy\jboss-web.deployer\conf\web.xml
    C:\java\jboss-4.2.2.GA\server\all\deploy\jboss-web.deployer\conf\web.xml

    I commented out the section with JBossInjectionProvider in:
    C:\java\jboss-4.2.2.GA\server\default\deploy\jboss-web.deployer\conf\web.xml

    and that solved the problem, but that isn't a good solution.

    You're right--I'm getting two jsf files in my maven dependencies libraries and I have no idea why:
    jsf-api-1.2_04-p02.jar and jsf-impl-1.2_04.jar

    I didn't include them in my pom.xml -- do you have any idea why they are being included?

    I'm using Seam 2.0.1.GA

    Just experimenting, I used the file:
    C:\java\jboss-seam-2.0.1.GA\classes\poms\core.pom

    as my pom.xml file and the problems went away.

    I believe there is a better way to do this:
    1. Start over
    2. Download the JBoss Tools and install them in a new version of eclipse. You get the latest versions of all the JAR files. Somebody went through the trouble to figure out all the correct dependencies.
    3. Follow the instructions in the Seam documentation and re-create your project.
    4. Merge your files in one at a time.

  • 4. Re: FATAL [application] JSF1029
    Stan Silvert Master

     

    "rstevens" wrote:

    I found two web.xml files:

    C:\java\jboss-4.2.2.GA\server\default\deploy\jboss-web.deployer\conf\web.xml
    C:\java\jboss-4.2.2.GA\server\all\deploy\jboss-web.deployer\conf\web.xml

    Only one of those web.xml files can be active. If you are using the "all" configuration then the one under "all" configuration will be active. This only happens if you start JBoss like this:
    run -c all


    "rstevens" wrote:

    I commented out the section with JBossInjectionProvider in:
    C:\java\jboss-4.2.2.GA\server\default\deploy\jboss-web.deployer\conf\web.xml

    and that solved the problem, but that isn't a good solution.

    Agreed. It's a hack.

    "rstevens" wrote:

    You're right--I'm getting two jsf files in my maven dependencies libraries and I have no idea why:
    jsf-api-1.2_04-p02.jar and jsf-impl-1.2_04.jar

    I didn't include them in my pom.xml -- do you have any idea why they are being included?

    I'm using Seam 2.0.1.GA

    It's probably a transitive dependency. You'll need to find out which dependency is using it, and exclude those jars in your pom.xml.

    "rstevens" wrote:

    Just experimenting, I used the file:
    C:\java\jboss-seam-2.0.1.GA\classes\poms\core.pom

    as my pom.xml file and the problems went away.

    I believe there is a better way to do this:
    1. Start over
    2. Download the JBoss Tools and install them in a new version of eclipse. You get the latest versions of all the JAR files. Somebody went through the trouble to figure out all the correct dependencies.
    3. Follow the instructions in the Seam documentation and re-create your project.
    4. Merge your files in one at a time.



    Sounds like a good plan to me.

    Stan

  • 5. Re: FATAL [application] JSF1029
    Robert Stevens Newbie

     

    It's probably a transitive dependency. You'll need to find out which dependency is using it, and exclude those jars in your pom.xml.


    Stan, I bet lots of people will have this problem. How do I figure out which JAR files in my pom.xml depend on the JSF and LOG4J JAR files? I suppose I can eliminate entries one at a time but that will probably create other errors.

    For a quick and dirty fix, every time I deploy my app to the server, I search the JBoss 4.2.2 server default/deploy folder for LOG4J and delete from my expanded WAR file:

    log4j-1.2.14.jar

    I then search that same folder for JSF and delete from my expanded WAR file:
    2. jsf-impl-1.2_04-p02.jar
    3. jsf-api-1.2_04-p02.jar


    During startup, this eliminates the errors:
    1. For Log4j: ERROR A "org.jboss.logging.appender.FileAppender" object is not assignable to a "org.apache.log4j.Appender" variable.

    2. For JSF: Exception sending context initialized event to listener instance of class org.jboss.web.jsf.integration.config.JBossJSFConfigureListener
    java.lang.ClassCastException: com.sun.faces.config.WebConfiguration

    There must be a better way to find these transitive dependencies. Does anyone know if there is a maven or 3rd party tool to do this?

    Robert Stevens


  • 6. Re: FATAL [application] JSF1029
    Stan Silvert Master

    This is a common problem in Maven. I'm pretty sure there is a command line tool for it, but I use a graphical tool that comes with NetBean's Maven support.

    Stan