Uploaded image for project: 'OpenWebBeans'
  1. OpenWebBeans
  2. OWB-1298

WebsocketUserManager ambigious resolution Jakarta Faces

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.0.12
    • Component/s: Injection and Lookup
    • Labels:
      None
    • Environment:
      Jetty 9.4

      Description

      Originally Reported: https://github.com/primefaces/primefaces-test/issues/15

      Attached is a test case you can run with "mvn clean jetty:run-exploded -Pmojarra23".

      Trying to use the latest Jakarta Faces with OWB 2.0.11 results in ambigious resolution of the WebocketUserManager.

      <dependency>
          <groupId>org.glassfish</groupId>
          <artifactId>jakarta.faces</artifactId>
          <version>2.3.13</version>
      </dependency>
      

      The resulting stack trace:

      org.apache.webbeans.exception.WebBeansDeploymentException: javax.enterprise.inject.AmbiguousResolutionException: There is more than one Bean with type com.sun.faces.push.WebsocketSessionManager Qualifiers: [@javax.enterprise.inject.Default()]
      for injection into Field Injection Point, field name :  socketSessions, Bean Owner : [WebsocketPushContextProducer, WebBeansType:MANAGED, Name:null, API Types:[com.sun.faces.cdi.WebsocketPushContextProducer,java.lang.Object], Qualifiers:[javax.enterprise.inject.Default,javax.enterprise.inject.Any]]
      found beans:
      WebsocketSessionManager, WebBeansType:MANAGED, Name:null, API Types:[com.sun.faces.push.WebsocketSessionManager,java.lang.Object], Qualifiers:[javax.enterprise.inject.Default,javax.enterprise.inject.Any] from jar:file:/C:/dev/primefaces/primefaces-test/target/primefaces-test-1.0-SNAPSHOT/WEB-INF/lib/jakarta.faces-2.3.13.jar!/com/sun/faces/push/WebsocketSessionManager.class
      WebsocketSessionManager, WebBeansType:MANAGED, Name:null, API Types:[com.sun.faces.push.WebsocketSessionManager,java.lang.Object], Qualifiers:[javax.enterprise.inject.Default,javax.enterprise.inject.Any] from jar:file:/C:/dev/primefaces/primefaces-test/target/primefaces-test-1.0-SNAPSHOT/WEB-INF/lib/jakarta.faces-2.3.13.jar!/com/sun/faces/push/WebsocketSessionManager.class
          at org.apache.webbeans.config.BeansDeployer.deploy (BeansDeployer.java:360)
          at org.apache.webbeans.lifecycle.AbstractLifeCycle.bootstrapApplication (AbstractLifeCycle.java:137)
          at org.apache.webbeans.lifecycle.AbstractLifeCycle.startApplication (AbstractLifeCycle.java:103)
          at org.apache.webbeans.web.lifecycle.WebContainerLifecycle.startApplication (WebContainerLifecycle.java:98)
          at org.apache.webbeans.servlet.WebBeansConfigurationListener.contextInitialized (WebBeansConfigurationListener.java:85)
          at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized (ContextHandler.java:921)
          at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized (ServletContextHandler.java:554)
          at org.eclipse.jetty.server.handler.ContextHandler.startContext (ContextHandler.java:888)
          at org.eclipse.jetty.servlet.ServletContextHandler.startContext (ServletContextHandler.java:357)
          at org.eclipse.jetty.webapp.WebAppContext.startWebapp (WebAppContext.java:1443)
          at org.eclipse.jetty.maven.plugin.JettyWebAppContext.startWebapp (JettyWebAppContext.java:328)
          at org.eclipse.jetty.webapp.WebAppContext.startContext (WebAppContext.java:1407)
          at org.eclipse.jetty.server.handler.ContextHandler.doStart (ContextHandler.java:821)
          at org.eclipse.jetty.servlet.ServletContextHandler.doStart (ServletContextHandler.java:276)
          at org.eclipse.jetty.webapp.WebAppContext.doStart (WebAppContext.java:524)
          at org.eclipse.jetty.maven.plugin.JettyWebAppContext.doStart (JettyWebAppContext.java:397)
          at org.eclipse.jetty.util.component.AbstractLifeCycle.start (AbstractLifeCycle.java:72)
          at org.eclipse.jetty.util.component.ContainerLifeCycle.start (ContainerLifeCycle.java:169)
          at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart (ContainerLifeCycle.java:117)
          at org.eclipse.jetty.server.handler.AbstractHandler.doStart (AbstractHandler.java:106)
          at org.eclipse.jetty.util.component.AbstractLifeCycle.start (AbstractLifeCycle.java:72)
          at org.eclipse.jetty.util.component.ContainerLifeCycle.start (ContainerLifeCycle.java:169)
          at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart (ContainerLifeCycle.java:117)
          at org.eclipse.jetty.server.handler.AbstractHandler.doStart (AbstractHandler.java:106)
          at org.eclipse.jetty.util.component.AbstractLifeCycle.start (AbstractLifeCycle.java:72)
          at org.eclipse.jetty.util.component.ContainerLifeCycle.start (ContainerLifeCycle.java:169)
          at org.eclipse.jetty.server.Server.start (Server.java:407)
          at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart (ContainerLifeCycle.java:110)
          at org.eclipse.jetty.server.handler.AbstractHandler.doStart (AbstractHandler.java:106)
          at org.eclipse.jetty.server.Server.doStart (Server.java:371)
      
      

        Attachments

        1. owb-test.zip
          5 kB
          Melloware

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                melloware Melloware
              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: