Details

    • Type: Improvement Improvement
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 5.0.0
    • Fix Version/s: 5.2.0
    • Component/s: None
    • Labels:
      None

      Description

      I configured my queue with jaas configuration and so with login.properties users and group properties files.
      When I open web console and browse the queue, the system give me this error:

      Error creating bean with name 'queueBrowser' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.apache.activemq.web.QueueBrowseQuery]: Constructor threw exception; nested exception is javax.jms.JMSException: User name or password is invalid.
      RequestURI=/admin/browse.jsp

      Caused by:
      org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'queueBrowser' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.apache.activemq.web.QueueBrowseQuery]: Constructor threw exception; nested exception is javax.jms.JMSException: User name or password is invalid.
      Caused by: org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.apache.activemq.web.QueueBrowseQuery]: Constructor threw exception; nested exception is javax.jms.JMSException: User name or password is invalid.
      Caused by: javax.jms.JMSException: User name or password is invalid.
      at org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:46)
      at org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1207)
      at org.apache.activemq.ActiveMQConnection.ensureConnectionInfoSent(ActiveMQConnection.java:1289)
      at org.apache.activemq.ActiveMQConnection.start(ActiveMQConnection.java:463)
      at org.apache.activemq.web.SessionPool.getConnection(SessionPool.java:41)
      at org.apache.activemq.web.SessionPool.createSession(SessionPool.java:85)
      at org.apache.activemq.web.SessionPool.borrowSession(SessionPool.java:67)
      at org.apache.activemq.web.QueueBrowseQuery.(QueueBrowseQuery.java:41)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
      at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
      at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:82)
      at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:78)
      at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:156)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:683)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:621)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:264)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:156)
      at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:642)
      at org.apache.activemq.web.filter.ApplicationContextFilter$2.get(ApplicationContextFilter.java:157)
      at javax.el.MapELResolver.getValue(MapELResolver.java:164)

      .....

      The web console not share Jaas Authetication configured in activemq.xml.

        Issue Links

          Activity

          Hide
          Dejan Bosanac added a comment -
          • The idea is to use one "conf/credentials.properties" file which will define activemq.username and activemq.password properties used to create a connection to a broker from console
          • By default, the connection is always created with system/manager credentials, but that can be changed at one place for all connections
          • TODO: add the similar support for command agent and camel context (check if there's any other possible connections) so that broker can start all its services when secured
          Show
          Dejan Bosanac added a comment - The idea is to use one "conf/credentials.properties" file which will define activemq.username and activemq.password properties used to create a connection to a broker from console By default, the connection is always created with system/manager credentials, but that can be changed at one place for all connections TODO: add the similar support for command agent and camel context (check if there's any other possible connections) so that broker can start all its services when secured
          Hide
          Dejan Bosanac added a comment -

          Patch enhanced with support for CommandAgent to access secured broker

          Show
          Dejan Bosanac added a comment - Patch enhanced with support for CommandAgent to access secured broker
          Hide
          Dejan Bosanac added a comment -

          The patch is now updated to reflect changes added by issue 1895 (https://issues.apache.org/activemq/browse/AMQ-1895). It changes the brokerUrl property with the connectionFactory property using the appropriate username and password to connect to the secured broker.

          Show
          Dejan Bosanac added a comment - The patch is now updated to reflect changes added by issue 1895 ( https://issues.apache.org/activemq/browse/AMQ-1895 ). It changes the brokerUrl property with the connectionFactory property using the appropriate username and password to connect to the secured broker.
          Hide
          Dejan Bosanac added a comment -

          Patch applied in SVN revision 695445

          Show
          Dejan Bosanac added a comment - Patch applied in SVN revision 695445
          Hide
          Jam Hamidi added a comment -

          It is almost fixed. A slight change still needs to be made: when you click on a queue in the admin console, it tries to create an ActiveMQ.Advisory.* "topic" and not queue. I had to add the following Authorization entries:

          <authorizationEntry queue="ActiveMQ.Advisory.>" read="admin" write="admin" admin="admin" />
          <authorizationEntry topic="ActiveMQ.Advisory.>" read="admin" write="admin" admin="admin" />

          to make it work.

          Show
          Jam Hamidi added a comment - It is almost fixed. A slight change still needs to be made: when you click on a queue in the admin console, it tries to create an ActiveMQ.Advisory.* "topic" and not queue. I had to add the following Authorization entries: <authorizationEntry queue="ActiveMQ.Advisory.>" read="admin" write="admin" admin="admin" /> <authorizationEntry topic="ActiveMQ.Advisory.>" read="admin" write="admin" admin="admin" /> to make it work.

            People

            • Assignee:
              Dejan Bosanac
              Reporter:
              Piero
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development