Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-3820

Unable to invoke @PreDestroy annotated methods on org.jboss.as.jsf.injection.JSFInjectionProvider

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Minor
    • Resolution: Done
    • Affects Version/s: 8.1.0.Final
    • Fix Version/s: 9.0.0.Alpha1
    • Component/s: JSF
    • Labels:
      None
    • Steps to Reproduce:
      Hide

      Try reloading a JSF application. Unfortunately, the app I'm using is not (yet) open source, so I can't distribute what I saw this bug with.

      Show
      Try reloading a JSF application. Unfortunately, the app I'm using is not (yet) open source, so I can't distribute what I saw this bug with.

      Description

      12:21:52,402 SEVERE [javax.faces] (Mojarra-WebResourceMonitor-1-thread-1) Unable to invoke @PreDestroy annotated methods on org.jboss.as.jsf.injection.JSFInjectionProvider@ebc02f7.: java.lang.NullPointerException
      	at org.jboss.as.jsf.injection.JSFInjectionProvider.invokePreDestroy(JSFInjectionProvider.java:49) [wildfly-jsf-injection-8.1.0.Final.jar:8.1.0.Final]
      	at javax.faces.FactoryFinder.releaseFactories(FactoryFinder.java:442) [jboss-jsf-api_2.2_spec-2.2.6.jar:2.2.6]
      	at com.sun.faces.config.ConfigManager.releaseFactories(ConfigManager.java:809) [jsf-impl-2.2.6-jbossorg-4.jar:]
      	at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:446) [jsf-impl-2.2.6-jbossorg-4.jar:]
      	at com.sun.faces.config.ConfigureListener.reload(ConfigureListener.java:568) [jsf-impl-2.2.6-jbossorg-4.jar:]
      	at com.sun.faces.config.ConfigureListener.access$600(ConfigureListener.java:121) [jsf-impl-2.2.6-jbossorg-4.jar:]
      	at com.sun.faces.config.ConfigureListener$WebConfigResourceMonitor.run(ConfigureListener.java:1039) [jsf-impl-2.2.6-jbossorg-4.jar:]
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [rt.jar:1.7.0_67]
      	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304) [rt.jar:1.7.0_67]
      	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178) [rt.jar:1.7.0_67]
      	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [rt.jar:1.7.0_67]
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_67]
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_67]
      	at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_67]
      
      12:21:52,403 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) com.sun.faces.config.ConfigurationException: Factory 'javax.faces.application.ApplicationFactory' was not configured properly.
      12:21:52,403 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at com.sun.faces.config.processor.FactoryConfigProcessor.verifyFactoriesExist(FactoryConfigProcessor.java:330)
      12:21:52,403 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at com.sun.faces.config.processor.FactoryConfigProcessor.process(FactoryConfigProcessor.java:236)
      12:21:52,404 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:435)
      12:21:52,404 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at com.sun.faces.config.ConfigureListener.reload(ConfigureListener.java:568)
      12:21:52,404 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at com.sun.faces.config.ConfigureListener.access$600(ConfigureListener.java:121)
      12:21:52,404 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at com.sun.faces.config.ConfigureListener$WebConfigResourceMonitor.run(ConfigureListener.java:1039)
      12:21:52,404 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
      12:21:52,404 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304)
      12:21:52,404 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)
      12:21:52,404 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
      12:21:52,404 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      12:21:52,404 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      12:21:52,404 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at java.lang.Thread.run(Thread.java:745)
      12:21:52,405 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) Caused by: javax.faces.FacesException: org.jboss.as.jsf.injection.weld.WeldApplicationFactory
      12:21:52,405 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at javax.faces.FactoryFinder.getImplGivenPreviousImpl(FactoryFinder.java:710)
      12:21:52,405 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at javax.faces.FactoryFinder.getImplementationInstance(FactoryFinder.java:572)
      12:21:52,405 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at javax.faces.FactoryFinder.access$500(FactoryFinder.java:140)
      12:21:52,405 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at javax.faces.FactoryFinder$FactoryManager.getFactory(FactoryFinder.java:1120)
      12:21:52,405 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:379)
      12:21:52,405 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at com.sun.faces.config.processor.FactoryConfigProcessor.verifyFactoriesExist(FactoryConfigProcessor.java:328)
      12:21:52,405 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	... 12 more
      12:21:52,405 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) Caused by: com.sun.faces.spi.InjectionProviderException: java.lang.NullPointerException
      12:21:52,406 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at org.jboss.as.jsf.injection.JSFInjectionProvider.invokePostConstruct(JSFInjectionProvider.java:63)
      12:21:52,406 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at javax.faces.FactoryFinder.getImplGivenPreviousImpl(FactoryFinder.java:696)
      12:21:52,406 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	... 17 more
      12:21:52,406 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) Caused by: java.lang.NullPointerException
      12:21:52,406 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	at org.jboss.as.jsf.injection.JSFInjectionProvider.invokePostConstruct(JSFInjectionProvider.java:61)
      12:21:52,406 ERROR [stderr] (Mojarra-WebResourceMonitor-1-thread-1) 	... 18 more
      12:21:52,406 INFO  [javax.enterprise.resource.webcontainer.jsf.config] (Mojarra-WebResourceMonitor-1-thread-1) Reload complete.
      

      Sometimes I get this error on reload. Difficult to reproduce, but I think it has to do with the instanceManager being null in the JSFInjectionProvider.java. I'll submit a pull request to check for null.

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                fjuma Farah Juma
                Reporter:
                the_alchemist The Alchemist
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: