Uploaded image for project: 'Seam 2'
  1. Seam 2
  2. JBSEAM-2795

Add ability in QueueSession component to override ConnectionFactory's JNDI name

    Details

    • Type: Feature Request
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Rejected
    • Affects Version/s: 2.0.1.GA
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None
    • Environment:

      OC4J 11

      Description

      The ManagedQueueSender component creates an instance of the QueueSession component which then uses the QueueConnection component. This component has a default value for the queue connection factory jndi name of "UIL2ConnectionFactory" which works on JBoss but not on other application servers. We need the ability to override this just like we are able to override the QueueConnection component.

      This works because there is an ability to override the jndi name.
      <jms:queue-connection name="myQueueConnection" auto-create="true" queue-connection-factory-jndi-name="jms/MyCF" />

      This does not work because by default it uses the "UIL2ConnectionFactory" connection factory jndi name and there is no way to override it.
      <jms:managed-queue-sender name="myQueueSender" auto-create="true" queue-jndi-name="jms/MyQueue" />

      Or allow the ability to connect the ManagedQueueSender to the custom QueueConnection component.

      Here are the stack traces:

      Caused by: javax.ejb.EJBTransactionRolledbackException: java.lang.RuntimeException: exception invoking: init; nested exception is: java.lang.RuntimeException: exception invoking: init
      at com.evermind.server.ejb.EJBUtils.getLocalUserException(EJBUtils.java:84)
      at com.evermind.server.ejb.interceptor.system.AbstractTxInterceptor.convertAndHandleMethodException(AbstractTxInterceptor.java:93)
      at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:52)
      at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:101)
      at com.evermind.server.ejb.interceptor.system.JAASInterceptor$1.run(JAASInterceptor.java:52)
      ...
      Caused by: java.lang.RuntimeException: exception invoking: init
      at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:135)
      at org.jboss.seam.Component.callComponentMethod(Component.java:2082)
      at org.jboss.seam.Component.callCreateMethod(Component.java:2005)
      at org.jboss.seam.Component.newInstance(Component.java:1976)
      at org.jboss.seam.Component.getInstance(Component.java:1873)
      at org.jboss.seam.Component.getInstance(Component.java:1840)
      at org.jboss.seam.Component.getInstance(Component.java:1819)
      at org.jboss.seam.Component.getInstance(Component.java:1814)
      at org.jboss.seam.jms.QueueConnection.instance(QueueConnection.java:75)
      at org.jboss.seam.jms.QueueSession.create(QueueSession.java:38)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      ...
      Caused by: javax.naming.NameNotFoundException: UIL2ConnectionFactory not found
      at com.evermind.server.rmi.RMIServerContext.lookup(RMIServerContext.java:207)
      at com.evermind.server.ApplicationContext.unprivileged_lookup(ApplicationContext.java:254)
      at com.evermind.server.ApplicationContext.lookup(ApplicationContext.java:194)
      at javax.naming.InitialContext.lookup(InitialContext.java:392)
      at org.jboss.seam.jms.QueueConnection.getQueueConnectionFactory(QueueConnection.java:64)
      at org.jboss.seam.jms.QueueConnection.init(QueueConnection.java:51)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at org.jboss.seam.util.Reflections.invoke(Reflections.java:21)
      at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:125)
      ... 196 more

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                pmuir Pete Muir
                Reporter:
                rwfuller Wayne Fuller
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: