6 Replies Latest reply on Jul 10, 2012 2:45 PM by raydecampo

    Container managed authentication for JMS in JBoss 7.1.1

    raydecampo

      I am running into a problem using container managed authentication for JMS resources in JBoss 7.1.1.  I am using a configuration that worked in the past for JBoss 5.  I have read that JMS is 'secured by default' in JBoss 7 so I created an application user via add-user.bat but I do not see how to get the container to use that user to authenticate.  The exception and relevant configurations follow:

       

      There is more preceding this but this portion seemed most relevant:

      Caused by: javax.jms.JMSSecurityException: Unable to validate user: guest
          at org.hornetq.core.protocol.core.impl.ChannelImpl.sendBlocking(ChannelImpl.java:312)
          at org.hornetq.core.client.impl.ClientSessionFactoryImpl.createSessionInternal(ClientSessionFactoryImpl.java:780)
          at org.hornetq.core.client.impl.ClientSessionFactoryImpl.createSession(ClientSessionFactoryImpl.java:279)
          at org.hornetq.jms.client.HornetQConnection.authorize(HornetQConnection.java:601)
          at org.hornetq.jms.client.HornetQConnectionFactory.createConnectionInternal(HornetQConnectionFactory.java:684)
          at org.hornetq.jms.client.HornetQConnectionFactory.createXAConnection(HornetQConnectionFactory.java:155)
          at org.hornetq.ra.HornetQRAManagedConnection.setup(HornetQRAManagedConnection.java:806)
          ... 82 more
      Caused by: HornetQException[errorCode=105 message=Unable to validate user: guest]
          ... 89 more
      

       

      I also see this:

      Caused by: javax.jms.JMSException: Could not create a session: IJ000453: Unable to get managed connection for java:/JmsXA
          at org.hornetq.ra.HornetQRASessionFactoryImpl.allocateConnection(HornetQRASessionFactoryImpl.java:881)
          at org.hornetq.ra.HornetQRASessionFactoryImpl.createSession(HornetQRASessionFactoryImpl.java:470)
          at org.springframework.jms.support.JmsAccessor.createSession(JmsAccessor.java:196) [org.springframework.jms-3.1.1.RELEASE.jar:3.1.1.RELEASE]
          at org.springframework.jms.core.JmsTemplate.access$1(JmsTemplate.java:1) [org.springframework.jms-3.1.1.RELEASE.jar:3.1.1.RELEASE]
          at org.springframework.jms.core.JmsTemplate$JmsTemplateResourceFactory.createSession(JmsTemplate.java:1035) [org.springframework.jms-3.1.1.RELEASE.jar:3.1.1.RELEASE]
          at org.springframework.jms.connection.ConnectionFactoryUtils.doGetTransactionalSession(ConnectionFactoryUtils.java:300) [org.springframework.jms-3.1.1.RELEASE.jar:3.1.1.RELEASE]
          at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:453) [org.springframework.jms-3.1.1.RELEASE.jar:3.1.1.RELEASE]
      

       

      In my web.xml:

       

           <resource-ref>
              <res-ref-name>jms/ConnectionFactory</res-ref-name>
              <res-type>javax.jms.ConnectionFactory</res-type>
              <res-auth>Container</res-auth>
          </resource-ref>
      

       

      and my jboss-web.xml:

       

         <resource-ref>
              <res-ref-name>jms/ConnectionFactory</res-ref-name>
              <jndi-name>java:/JmsXA</jndi-name>
          </resource-ref>
      
      
        • 1. Re: Container managed authentication for JMS in JBoss 7.1.1
          jbertram

          What exactly are you trying to do?  Can you attach your standalone*.xml?

          • 2. Re: Container managed authentication for JMS in JBoss 7.1.1
            raydecampo

            I'm not trying to do anything exotic.  I am trying to post a message to a JMS queue within a web application.  (Later on I expect I will have an issue with the MDB that will consume the messages.)  Everything is contained within one server, I'm not doing anything remotely or with clustering. 

             

            I am using Springs JMS helper classes, the problem occurs when Connection.createSession is called.  I'll put the full stack trace below the config file you asked for.

             

            I am using standalone-full.xml:

             

            <?xml version='1.0' encoding='UTF-8'?>
            
            <server xmlns="urn:jboss:domain:1.2">
            
                <extensions>
                    <extension module="org.jboss.as.clustering.infinispan"/>
                    <extension module="org.jboss.as.cmp"/>
                    <extension module="org.jboss.as.configadmin"/>
                    <extension module="org.jboss.as.connector"/>
                    <extension module="org.jboss.as.deployment-scanner"/>
                    <extension module="org.jboss.as.ee"/>
                    <extension module="org.jboss.as.ejb3"/>
                    <extension module="org.jboss.as.jacorb"/>
                    <extension module="org.jboss.as.jaxr"/>
                    <extension module="org.jboss.as.jaxrs"/>
                    <extension module="org.jboss.as.jdr"/>
                    <extension module="org.jboss.as.jmx"/>
                    <extension module="org.jboss.as.jpa"/>
                    <extension module="org.jboss.as.jsr77"/>
                    <extension module="org.jboss.as.logging"/>
                    <extension module="org.jboss.as.mail"/>
                    <extension module="org.jboss.as.messaging"/>
                    <extension module="org.jboss.as.naming"/>
                    <extension module="org.jboss.as.osgi"/>
                    <extension module="org.jboss.as.pojo"/>
                    <extension module="org.jboss.as.remoting"/>
                    <extension module="org.jboss.as.sar"/>
                    <extension module="org.jboss.as.security"/>
                    <extension module="org.jboss.as.threads"/>
                    <extension module="org.jboss.as.transactions"/>
                    <extension module="org.jboss.as.web"/>
                    <extension module="org.jboss.as.webservices"/>
                    <extension module="org.jboss.as.weld"/>
                </extensions>
            
                <management>
                    <security-realms>
                        <security-realm name="ManagementRealm">
                            <authentication>
                                <properties path="mgmt-users.properties" relative-to="jboss.server.config.dir"/>
                            </authentication>
                        </security-realm>
                        <security-realm name="ApplicationRealm">
                            <authentication>
                                <properties path="application-users.properties" relative-to="jboss.server.config.dir"/>
                            </authentication>
                        </security-realm>
                    </security-realms>
                    <management-interfaces>
                        <native-interface security-realm="ManagementRealm">
                            <socket-binding native="management-native"/>
                        </native-interface>
                        <http-interface security-realm="ManagementRealm">
                            <socket-binding http="management-http"/>
                        </http-interface>
                    </management-interfaces>
                </management>
            
                <profile>
                    <subsystem xmlns="urn:jboss:domain:logging:1.1">
                        <console-handler name="CONSOLE">
                            <level name="INFO"/>
                            <formatter>
                                <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
                            </formatter>
                        </console-handler>
                        <periodic-rotating-file-handler name="FILE">
                            <formatter>
                                <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
                            </formatter>
                            <file relative-to="jboss.server.log.dir" path="server.log"/>
                            <suffix value=".yyyy-MM-dd"/>
                            <append value="true"/>
                        </periodic-rotating-file-handler>
                        <logger category="com.arjuna">
                            <level name="WARN"/>
                        </logger>
                        <logger category="org.apache.tomcat.util.modeler">
                            <level name="WARN"/>
                        </logger>
                        <logger category="sun.rmi">
                            <level name="WARN"/>
                        </logger>
                        <logger category="jacorb">
                            <level name="WARN"/>
                        </logger>
                        <logger category="jacorb.config">
                            <level name="ERROR"/>
                        </logger>
                        <root-logger>                <level name="INFO"/>
                            <handlers>
                                <handler name="CONSOLE"/>
                                <handler name="FILE"/>
                            </handlers>
                        </root-logger>
                    </subsystem>
                    <subsystem xmlns="urn:jboss:domain:cmp:1.0"/>
                    <subsystem xmlns="urn:jboss:domain:configadmin:1.0"/>
                    <subsystem xmlns="urn:jboss:domain:datasources:1.0">
                        <datasources>
                            <datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true">
                                <connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1</connection-url>
                                <driver>h2</driver>
                                <security>
                                    <user-name>sa</user-name>
                                    <password>sa</password>
                                </security>
                            </datasource>
                            <datasource jta="false" jndi-name="java:/jdbc/scDS" pool-name="scDS" enabled="true" use-ccm="false">
                                <connection-url>jdbc:postgresql://devsrv01:5432/sc</connection-url>
                                <driver-class>org.postgresql.Driver</driver-class>
                                <driver>postgresql-9.1-901.jdbc4.jar</driver>
                                <pool>
                                    <min-pool-size>1</min-pool-size>
                                    <max-pool-size>20</max-pool-size>
                                    <prefill>true</prefill>
                                </pool>
                                <security>
                                    <user-name>sc</user-name>
                                </security>
                                <validation>
                                    <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.postgres.PostgreSQLValidConnectionChecker"/>
                                    <validate-on-match>false</validate-on-match>
                                    <background-validation>false</background-validation>
                                </validation>
                                <statement>
                                    <prepared-statement-cache-size>16</prepared-statement-cache-size>
                                    <share-prepared-statements>true</share-prepared-statements>
                                </statement>
                            </datasource>
                            <xa-datasource jndi-name="java:/jdbc/xa/scDS" pool-name="scXADS" enabled="true" use-ccm="false">
                                <xa-datasource-property name="ServerName">
                                    devsrv01
                                </xa-datasource-property>
                                <xa-datasource-property name="PortNumber">
                                    5432
                                </xa-datasource-property>
                                <xa-datasource-property name="DatabaseName">
                                    sc
                                </xa-datasource-property>
                                <xa-datasource-class>org.postgresql.xa.PGXADataSource</xa-datasource-class>
                                <driver>postgresql-9.1-901.jdbc4.jar</driver>
                                <xa-pool>
                                    <is-same-rm-override>false</is-same-rm-override>
                                    <interleaving>false</interleaving>
                                    <pad-xid>false</pad-xid>
                                    <wrap-xa-resource>false</wrap-xa-resource>
                                </xa-pool>
                                <security>
                                    <user-name>sc</user-name>
                                </security>
                                <validation>
                                    <valid-connection-checker class-name="org.jboss.as.connector.adapters.jdbc.extensions.postgres.PostgreSQLValidConnectionChecker"/>
                                    <validate-on-match>false</validate-on-match>
                                    <background-validation>false</background-validation>
                                </validation>
                                <statement>
                                    <prepared-statement-cache-size>16</prepared-statement-cache-size>
                                    <share-prepared-statements>true</share-prepared-statements>
                                </statement>
                            </xa-datasource>
                            <drivers>
                                <driver name="h2" module="com.h2database.h2">
                                    <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
                                </driver>
                            </drivers>
                        </datasources>
                    </subsystem>
                    <subsystem xmlns="urn:jboss:domain:deployment-scanner:1.1">
                        <deployment-scanner path="deployments" relative-to="jboss.server.base.dir" scan-interval="5000"/>
                    </subsystem>
                    <subsystem xmlns="urn:jboss:domain:ee:1.0"/>
                    <subsystem xmlns="urn:jboss:domain:ejb3:1.2">
                        <session-bean>
                            <stateless>
                                <bean-instance-pool-ref pool-name="slsb-strict-max-pool"/>
                            </stateless>
                            <stateful default-access-timeout="5000" cache-ref="simple"/>
                            <singleton default-access-timeout="5000"/>
                        </session-bean>
                        <mdb>
                            <resource-adapter-ref resource-adapter-name="hornetq-ra"/>
                            <bean-instance-pool-ref pool-name="mdb-strict-max-pool"/>
                        </mdb>
                        <pools>
                            <bean-instance-pools>
                                <strict-max-pool name="slsb-strict-max-pool" max-pool-size="20" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>
                                <strict-max-pool name="mdb-strict-max-pool" max-pool-size="20" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>
                            </bean-instance-pools>
                        </pools>
                        <caches>
                            <cache name="simple" aliases="NoPassivationCache"/>
                            <cache name="passivating" passivation-store-ref="file" aliases="SimpleStatefulCache"/>
                        </caches>
                        <passivation-stores>
                            <file-passivation-store name="file"/>
                        </passivation-stores>
                        <async thread-pool-name="default"/>
                        <timer-service thread-pool-name="default">
                            <data-store path="timer-service-data" relative-to="jboss.server.data.dir"/>
                        </timer-service>
                        <remote connector-ref="remoting-connector" thread-pool-name="default"/>
                        <thread-pools>
                            <thread-pool name="default">
                                <max-threads count="10"/>
                                <keepalive-time time="100" unit="milliseconds"/>
                            </thread-pool>
                        </thread-pools>
                        <iiop enable-by-default="false" use-qualified-name="false"/>
                    </subsystem>
                    <subsystem xmlns="urn:jboss:domain:infinispan:1.2" default-cache-container="hibernate">
                        <cache-container name="hibernate" default-cache="local-query">
                            <local-cache name="entity">
                                <transaction mode="NON_XA"/>
                                <eviction strategy="LRU" max-entries="10000"/>
                                <expiration max-idle="100000"/>
                            </local-cache>
                            <local-cache name="local-query">
                                <transaction mode="NONE"/>
                                <eviction strategy="LRU" max-entries="10000"/>
                                <expiration max-idle="100000"/>
                            </local-cache>
                            <local-cache name="timestamps">
                                <transaction mode="NONE"/>
                                <eviction strategy="NONE"/>
                            </local-cache>
                        </cache-container>
                    </subsystem>
                    <subsystem xmlns="urn:jboss:domain:jacorb:1.1">
                        <orb>
                            <initializers security="on" transactions="spec"/>
                        </orb>
                    </subsystem>
                    <subsystem xmlns="urn:jboss:domain:jaxr:1.1">
                        <connection-factory jndi-name="java:jboss/jaxr/ConnectionFactory"/>
                        <properties/>
                    </subsystem>
                    <subsystem xmlns="urn:jboss:domain:jaxrs:1.0"/>
                    <subsystem xmlns="urn:jboss:domain:jca:1.1">
                        <archive-validation enabled="true" fail-on-error="true" fail-on-warn="false"/>
                        <bean-validation enabled="true"/>
                        <default-workmanager>
                            <short-running-threads>
                                <core-threads count="50"/>
                                <queue-length count="50"/>
                                <max-threads count="50"/>
                                <keepalive-time time="10" unit="seconds"/>
                            </short-running-threads>
                            <long-running-threads>
                                <core-threads count="50"/>
                                <queue-length count="50"/>
                                <max-threads count="50"/>
                                <keepalive-time time="10" unit="seconds"/>
                            </long-running-threads>
                        </default-workmanager>
                        <cached-connection-manager/>
                    </subsystem>
                    <subsystem xmlns="urn:jboss:domain:jdr:1.0"/>
                    <subsystem xmlns="urn:jboss:domain:jmx:1.1">
                        <show-model value="true"/>
                        <remoting-connector/>
                    </subsystem>
                    <subsystem xmlns="urn:jboss:domain:jpa:1.0">
                        <jpa default-datasource=""/>
                    </subsystem>
                    <subsystem xmlns="urn:jboss:domain:jsr77:1.0"/>
                    <subsystem xmlns="urn:jboss:domain:mail:1.0">
                        <mail-session jndi-name="java:jboss/mail/Default">
                            <smtp-server outbound-socket-binding-ref="mail-smtp"/>
                        </mail-session>
                        <mail-session jndi-name="java:/mail/scMail" from="admin@example.com">
                            <smtp-server outbound-socket-binding-ref="sc-smtp">
                                <login name="admin@example.com" password="p"/>
                            </smtp-server>
                        </mail-session>
                    </subsystem>
                    <subsystem xmlns="urn:jboss:domain:messaging:1.1">
                        <hornetq-server>
                            <persistence-enabled>true</persistence-enabled>
                            <journal-file-size>102400</journal-file-size>
                            <journal-min-files>2</journal-min-files>
            
                            <connectors>
                                <netty-connector name="netty" socket-binding="messaging"/>
                                <netty-connector name="netty-throughput" socket-binding="messaging-throughput">
                                    <param key="batch-delay" value="50"/>
                                </netty-connector>
                                <in-vm-connector name="in-vm" server-id="0"/>
                            </connectors>
            
                            <acceptors>
                                <netty-acceptor name="netty" socket-binding="messaging"/>
                                <netty-acceptor name="netty-throughput" socket-binding="messaging-throughput">
                                    <param key="batch-delay" value="50"/>
                                    <param key="direct-deliver" value="false"/>
                                </netty-acceptor>
                                <in-vm-acceptor name="in-vm" server-id="0"/>
                            </acceptors>
            
                            <security-settings>
                                <security-setting match="#">
                                    <permission type="send" roles="guest"/>
                                    <permission type="consume" roles="guest"/>
                                    <permission type="createNonDurableQueue" roles="guest"/>
                                    <permission type="deleteNonDurableQueue" roles="guest"/>
                                </security-setting>
                            </security-settings>
            
                            <address-settings>
                                <address-setting match="#">
                                    <dead-letter-address>jms.queue.DLQ</dead-letter-address>
                                    <expiry-address>jms.queue.ExpiryQueue</expiry-address>
                                    <redelivery-delay>0</redelivery-delay>
                                    <max-size-bytes>10485760</max-size-bytes>
                                    <address-full-policy>BLOCK</address-full-policy>
                                    <message-counter-history-day-limit>10</message-counter-history-day-limit>
                                </address-setting>
                            </address-settings>
            
                            <jms-connection-factories>
                                <connection-factory name="InVmConnectionFactory">
                                    <connectors>
                                        <connector-ref connector-name="in-vm"/>
                                    </connectors>
                                    <entries>
                                        <entry name="java:/ConnectionFactory"/>
                                    </entries>
                                </connection-factory>
                                <connection-factory name="RemoteConnectionFactory">
                                    <connectors>
                                        <connector-ref connector-name="netty"/>
                                    </connectors>
                                    <entries>
                                        <entry name="RemoteConnectionFactory"/>
                                        <entry name="java:jboss/exported/jms/RemoteConnectionFactory"/>
                                    </entries>
                                </connection-factory>
                                <pooled-connection-factory name="hornetq-ra">
                                    <transaction mode="xa"/>
                                    <connectors>
                                        <connector-ref connector-name="in-vm"/>
                                    </connectors>
                                    <entries>
                                        <entry name="java:/JmsXA"/>
                                    </entries>
                                </pooled-connection-factory>
                            </jms-connection-factories>
            
                            <jms-destinations>
                                <jms-queue name="testQueue">
                                    <entry name="queue/test"/>
                                    <entry name="java:jboss/exported/jms/queue/test"/>
                                </jms-queue>
                                <jms-queue name="scMailQueue">
                                    <entry name="queue/scMailQueue"/>
                                    <durable>true</durable>
                                </jms-queue>
                                <jms-queue name="scHttpRequestQueue">
                                    <entry name="queue/scHttpRequestQueue"/>
                                    <durable>true</durable>
                                </jms-queue>
                                <jms-topic name="testTopic">
                                    <entry name="topic/test"/>
                                    <entry name="java:jboss/exported/jms/topic/test"/>
                                </jms-topic>
                            </jms-destinations>
                        </hornetq-server>
                    </subsystem>
                    <subsystem xmlns="urn:jboss:domain:naming:1.1"/>
                    <subsystem xmlns="urn:jboss:domain:osgi:1.2" activation="lazy">
                        <properties>
                            <property name="org.osgi.framework.startlevel.beginning">
                                1
                            </property>
                        </properties>
                        <capabilities>
                            <capability name="javax.servlet.api:v25"/>
                            <capability name="javax.transaction.api"/>
                            <capability name="org.apache.felix.log" startlevel="1"/>
                            <capability name="org.jboss.osgi.logging" startlevel="1"/>
                            <capability name="org.apache.felix.configadmin" startlevel="1"/>
                            <capability name="org.jboss.as.osgi.configadmin" startlevel="1"/>
                        </capabilities>
                    </subsystem>
                    <subsystem xmlns="urn:jboss:domain:pojo:1.0"/>
                    <subsystem xmlns="urn:jboss:domain:remoting:1.1">
                        <connector name="remoting-connector" socket-binding="remoting" security-realm="ApplicationRealm"/>
                    </subsystem>
                    <subsystem xmlns="urn:jboss:domain:resource-adapters:1.0"/>
                    <subsystem xmlns="urn:jboss:domain:sar:1.0"/>
                    <subsystem xmlns="urn:jboss:domain:security:1.1">
                        <security-domains>
                            <security-domain name="other" cache-type="default">
                                <authentication>
                                    <login-module code="Remoting" flag="optional">
                                        <module-option name="password-stacking" value="useFirstPass"/>
                                    </login-module>
                                    <login-module code="RealmUsersRoles" flag="required">
                                        <module-option name="usersProperties" value="${jboss.server.config.dir}/application-users.properties"/>
                                        <module-option name="rolesProperties" value="${jboss.server.config.dir}/application-roles.properties"/>
                                        <module-option name="realm" value="ApplicationRealm"/>
                                        <module-option name="password-stacking" value="useFirstPass"/>
                                    </login-module>
                                </authentication>
                            </security-domain>
                            <security-domain name="jboss-web-policy" cache-type="default">
                                <authorization>
                                    <policy-module code="Delegating" flag="required"/>
                                </authorization>
                            </security-domain>
                            <security-domain name="jboss-ejb-policy" cache-type="default">
                                <authorization>
                                    <policy-module code="Delegating" flag="required"/>
                                </authorization>
                            </security-domain>
                            <security-domain name="scAdmin" cache-type="default">
                                <authentication>
                                    <login-module code="com.sc.fish.security.DelegatingLoginModule" flag="required">
                                        <module-option name="springFactorySelector" value="classpath*:beanRefContext.spring.xml"/>
                                        <module-option name="springFactoryKey" value="securityApplicationContext"/>
                                        <module-option name="delegateBeanName" value="administratorLoginModule"/>
                                    </login-module>
                                </authentication>
                            </security-domain>
                        </security-domains>
                    </subsystem>
                    <subsystem xmlns="urn:jboss:domain:threads:1.1"/>
                    <subsystem xmlns="urn:jboss:domain:transactions:1.1">
                        <core-environment>
                            <process-id>
                                <uuid/>
                            </process-id>
                        </core-environment>
                        <recovery-environment socket-binding="txn-recovery-environment" status-socket-binding="txn-status-manager"/>
                        <coordinator-environment default-timeout="300"/>
                    </subsystem>
                    <subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host" native="false">
                        <connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/>
                        <connector name="ajp" protocol="AJP/1.3" scheme="http" socket-binding="ajp"/>
                        <virtual-server name="default-host" enable-welcome-root="true">
                            <alias name="localhost"/>
                            <alias name="example.com"/>
                        </virtual-server>
                    </subsystem>
                    <subsystem xmlns="urn:jboss:domain:webservices:1.1">
                        <modify-wsdl-address>true</modify-wsdl-address>
                        <wsdl-host>${jboss.bind.address:127.0.0.1}</wsdl-host>
                        <endpoint-config name="Standard-Endpoint-Config"/>
                        <endpoint-config name="Recording-Endpoint-Config">
                            <pre-handler-chain name="recording-handlers" protocol-bindings="##SOAP11_HTTP ##SOAP11_HTTP_MTOM ##SOAP12_HTTP ##SOAP12_HTTP_MTOM">
                                <handler name="RecordingHandler" class="org.jboss.ws.common.invocation.RecordingServerHandler"/>
                            </pre-handler-chain>
                        </endpoint-config>
                    </subsystem>
                    <subsystem xmlns="urn:jboss:domain:weld:1.0"/>
                </profile>
            
                <interfaces>
                    <interface name="management">
                        <inet-address value="${jboss.bind.address.management:127.0.0.1}"/>
                    </interface>
                    <interface name="public">
                        <inet-address value="${jboss.bind.address:127.0.0.1}"/>
                    </interface>
                    <interface name="unsecure">
                        <inet-address value="${jboss.bind.address.unsecure:127.0.0.1}"/>
                    </interface>
                </interfaces>
            
                <socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}">
                    <socket-binding name="management-native" interface="management" port="${jboss.management.native.port:9999}"/>
                    <socket-binding name="management-http" interface="management" port="${jboss.management.http.port:9990}"/>
                    <socket-binding name="management-https" interface="management" port="${jboss.management.https.port:9443}"/>
                    <socket-binding name="ajp" port="8009"/>
                    <socket-binding name="http" port="8080"/>
                    <socket-binding name="https" port="8443"/>
                    <socket-binding name="jacorb" interface="unsecure" port="3528"/>
                    <socket-binding name="jacorb-ssl" interface="unsecure" port="3529"/>
                    <socket-binding name="messaging" port="5445"/>
                    <socket-binding name="messaging-throughput" port="5455"/>
                    <socket-binding name="osgi-http" interface="management" port="8090"/>
                    <socket-binding name="remoting" port="4447"/>
                    <socket-binding name="txn-recovery-environment" port="4712"/>
                    <socket-binding name="txn-status-manager" port="4713"/>
                    <outbound-socket-binding name="mail-smtp">
                        <remote-destination host="localhost" port="25"/>
                    </outbound-socket-binding>
                    <outbound-socket-binding name="sc-smtp">
                        <remote-destination host="devsrv01" port="25"/>
                    </outbound-socket-binding>
                </socket-binding-group>
            
                <deployments>
                    <deployment name="postgresql-9.1-901.jdbc4.jar" runtime-name="postgresql-9.1-901.jdbc4.jar">
                        <content sha1="9bfabe48876ec38f6cbaa6931bad05c64a9ea942"/>
                    </deployment>
                    <deployment name="sc.ear" runtime-name="sc.ear">
                        <fs-exploded path="C:\sc.ear"/>
                    </deployment>
                </deployments>
            </server>
            

             

            The full stack trace:

             

            12:01:35,831 ERROR [org.jboss.security.authentication.JBossCachedAuthenticationManager] (Thread-3 (HornetQ-remoting-threads-HornetQServerImpl::serverUUID=fa84b38e-6d1f-11e1-9881-002219280ffc-29883987-17444172)) Login failure: javax.security.auth.login.FailedLoginException: Password Incorrect/Password Required
                at org.jboss.security.auth.spi.UsernamePasswordLoginModule.login(UsernamePasswordLoginModule.java:270) [picketbox-4.0.7.Final.jar:4.0.7.Final]
                at org.jboss.security.auth.spi.UsersRolesLoginModule.login(UsersRolesLoginModule.java:155) [picketbox-4.0.7.Final.jar:4.0.7.Final]
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_03]
                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [rt.jar:1.7.0_03]
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.7.0_03]
                at java.lang.reflect.Method.invoke(Method.java:601) [rt.jar:1.7.0_03]
                at javax.security.auth.login.LoginContext.invoke(LoginContext.java:784) [rt.jar:1.7.0_03]
                at javax.security.auth.login.LoginContext.access$000(LoginContext.java:203) [rt.jar:1.7.0_03]
                at javax.security.auth.login.LoginContext$4.run(LoginContext.java:698) [rt.jar:1.7.0_03]
                at javax.security.auth.login.LoginContext$4.run(LoginContext.java:696) [rt.jar:1.7.0_03]
                at java.security.AccessController.doPrivileged(Native Method) [rt.jar:1.7.0_03]
                at javax.security.auth.login.LoginContext.invokePriv(LoginContext.java:695) [rt.jar:1.7.0_03]
                at javax.security.auth.login.LoginContext.login(LoginContext.java:594) [rt.jar:1.7.0_03]
                at org.jboss.security.authentication.JBossCachedAuthenticationManager.defaultLogin(JBossCachedAuthenticationManager.java:449) [picketbox-infinispan-4.0.7.Final.jar:4.0.7.Final]
                at org.jboss.security.authentication.JBossCachedAuthenticationManager.proceedWithJaasLogin(JBossCachedAuthenticationManager.java:383) [picketbox-infinispan-4.0.7.Final.jar:4.0.7.Final]
                at org.jboss.security.authentication.JBossCachedAuthenticationManager.authenticate(JBossCachedAuthenticationManager.java:371) [picketbox-infinispan-4.0.7.Final.jar:4.0.7.Final]
                at org.jboss.security.authentication.JBossCachedAuthenticationManager.isValid(JBossCachedAuthenticationManager.java:160) [picketbox-infinispan-4.0.7.Final.jar:4.0.7.Final]
                at org.jboss.as.messaging.HornetQSecurityManagerAS7.validateUser(HornetQSecurityManagerAS7.java:39) [jboss-as-messaging-7.1.1.Final.jar:7.1.1.Final]
                at org.hornetq.core.security.impl.SecurityStoreImpl.authenticate(SecurityStoreImpl.java:134) [hornetq-core-2.2.13.Final.jar:]
                at org.hornetq.core.server.impl.HornetQServerImpl.createSession(HornetQServerImpl.java:807) [hornetq-core-2.2.13.Final.jar:]
                at org.hornetq.core.protocol.core.impl.HornetQPacketHandler.handleCreateSession(HornetQPacketHandler.java:187) [hornetq-core-2.2.13.Final.jar:]
                at org.hornetq.core.protocol.core.impl.HornetQPacketHandler.handlePacket(HornetQPacketHandler.java:85) [hornetq-core-2.2.13.Final.jar:]
                at org.hornetq.core.protocol.core.impl.ChannelImpl.handlePacket(ChannelImpl.java:508) [hornetq-core-2.2.13.Final.jar:]
                at org.hornetq.core.protocol.core.impl.RemotingConnectionImpl.doBufferReceived(RemotingConnectionImpl.java:556) [hornetq-core-2.2.13.Final.jar:]
                at org.hornetq.core.protocol.core.impl.RemotingConnectionImpl.bufferReceived(RemotingConnectionImpl.java:517) [hornetq-core-2.2.13.Final.jar:]
                at org.hornetq.core.remoting.server.impl.RemotingServiceImpl$DelegatingBufferHandler.bufferReceived(RemotingServiceImpl.java:533) [hornetq-core-2.2.13.Final.jar:]
                at org.hornetq.core.remoting.impl.invm.InVMConnection$1.run(InVMConnection.java:166) [hornetq-core-2.2.13.Final.jar:]
                at org.hornetq.utils.OrderedExecutorFactory$OrderedExecutor$1.run(OrderedExecutorFactory.java:100) [hornetq-core-2.2.13.Final.jar:]
                at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) [rt.jar:1.7.0_03]
                at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [rt.jar:1.7.0_03]
                at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_03]
            
            12:01:35,847 ERROR [org.hornetq.core.protocol.core.impl.HornetQPacketHandler] (Thread-3 (HornetQ-remoting-threads-HornetQServerImpl::serverUUID=fa84b38e-6d1f-11e1-9881-002219280ffc-29883987-17444172)) Failed to create session : HornetQException[errorCode=105 message=Unable to validate user: guest]
                at org.hornetq.core.security.impl.SecurityStoreImpl.authenticate(SecurityStoreImpl.java:147) [hornetq-core-2.2.13.Final.jar:]
                at org.hornetq.core.server.impl.HornetQServerImpl.createSession(HornetQServerImpl.java:807) [hornetq-core-2.2.13.Final.jar:]
                at org.hornetq.core.protocol.core.impl.HornetQPacketHandler.handleCreateSession(HornetQPacketHandler.java:187) [hornetq-core-2.2.13.Final.jar:]
                at org.hornetq.core.protocol.core.impl.HornetQPacketHandler.handlePacket(HornetQPacketHandler.java:85) [hornetq-core-2.2.13.Final.jar:]
                at org.hornetq.core.protocol.core.impl.ChannelImpl.handlePacket(ChannelImpl.java:508) [hornetq-core-2.2.13.Final.jar:]
                at org.hornetq.core.protocol.core.impl.RemotingConnectionImpl.doBufferReceived(RemotingConnectionImpl.java:556) [hornetq-core-2.2.13.Final.jar:]
                at org.hornetq.core.protocol.core.impl.RemotingConnectionImpl.bufferReceived(RemotingConnectionImpl.java:517) [hornetq-core-2.2.13.Final.jar:]
                at org.hornetq.core.remoting.server.impl.RemotingServiceImpl$DelegatingBufferHandler.bufferReceived(RemotingServiceImpl.java:533) [hornetq-core-2.2.13.Final.jar:]
                at org.hornetq.core.remoting.impl.invm.InVMConnection$1.run(InVMConnection.java:166) [hornetq-core-2.2.13.Final.jar:]
                at org.hornetq.utils.OrderedExecutorFactory$OrderedExecutor$1.run(OrderedExecutorFactory.java:100) [hornetq-core-2.2.13.Final.jar:]
                at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) [rt.jar:1.7.0_03]
                at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [rt.jar:1.7.0_03]
                at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_03]
            
            12:01:35,863 WARN  [org.jboss.jca.core.connectionmanager.pool.strategy.OnePool] (ajp--127.0.0.1-8009-1) IJ000604: Throwable while attempting to get a new connection: null: javax.resource.ResourceException: Error during setup
                at org.hornetq.ra.HornetQRAManagedConnection.<init>(HornetQRAManagedConnection.java:152)
                at org.hornetq.ra.HornetQRAManagedConnectionFactory.createManagedConnection(HornetQRAManagedConnectionFactory.java:180)
                at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool.createConnectionEventListener(SemaphoreArrayListManagedConnectionPool.java:761)
                at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool.getConnection(SemaphoreArrayListManagedConnectionPool.java:343)
                at org.jboss.jca.core.connectionmanager.pool.AbstractPool.getTransactionNewConnection(AbstractPool.java:495)
                at org.jboss.jca.core.connectionmanager.pool.AbstractPool.getConnection(AbstractPool.java:374)
                at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.getManagedConnection(AbstractConnectionManager.java:329)
                at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.getManagedConnection(TxConnectionManagerImpl.java:368)
                at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:464)
                at org.hornetq.ra.HornetQRASessionFactoryImpl.allocateConnection(HornetQRASessionFactoryImpl.java:837)
                at org.hornetq.ra.HornetQRASessionFactoryImpl.createSession(HornetQRASessionFactoryImpl.java:470)
                at org.springframework.jms.support.JmsAccessor.createSession(JmsAccessor.java:196) [org.springframework.jms-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.jms.core.JmsTemplate.access$1(JmsTemplate.java:1) [org.springframework.jms-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.jms.core.JmsTemplate$JmsTemplateResourceFactory.createSession(JmsTemplate.java:1035) [org.springframework.jms-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.jms.connection.ConnectionFactoryUtils.doGetTransactionalSession(ConnectionFactoryUtils.java:300) [org.springframework.jms-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:453) [org.springframework.jms-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:534) [org.springframework.jms-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.jms.core.JmsTemplate.convertAndSend(JmsTemplate.java:612) [org.springframework.jms-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at com.sc.control.impl.JmsQueueMailControlImpl.sendMail(JmsQueueMailControlImpl.java:96) [sc.jar:]
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_03]
                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [rt.jar:1.7.0_03]
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.7.0_03]
                at java.lang.reflect.Method.invoke(Method.java:601) [rt.jar:1.7.0_03]
                at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:318) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110) [org.springframework.transaction-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:55) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:55) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:55) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:55) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:55) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:55) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at $Proxy80.sendMail(Unknown Source)    at com.sc.faces.admin.AdminMailer.sendMail(AdminMailer.java:128) [classes:]
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_03]
                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [rt.jar:1.7.0_03]
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.7.0_03]
                at java.lang.reflect.Method.invoke(Method.java:601) [rt.jar:1.7.0_03]
                at org.apache.el.parser.AstValue.invoke(AstValue.java:262) [jbossweb-7.0.13.Final.jar:]
                at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:278) [jbossweb-7.0.13.Final.jar:]
                at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105) [jsf-impl-2.1.7-jbossorg-2.jar:]
                at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88) [jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
                at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102) [jsf-impl-2.1.7-jbossorg-2.jar:]
                at javax.faces.component.UICommand.broadcast(UICommand.java:315) [jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
                at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:794) [jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
                at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1259) [jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
                at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81) [jsf-impl-2.1.7-jbossorg-2.jar:]
                at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) [jsf-impl-2.1.7-jbossorg-2.jar:]
                at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118) [jsf-impl-2.1.7-jbossorg-2.jar:]
                at javax.faces.webapp.FacesServlet.service(FacesServlet.java:593) [jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:329) [jbossweb-7.0.13.Final.jar:]
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.13.Final.jar:]
                at org.springframework.orm.hibernate4.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:119) [org.springframework.orm-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) [org.springframework.web-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280) [jbossweb-7.0.13.Final.jar:]
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.13.Final.jar:]
                at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:357) [tomahawk20-1.1.12.jar:1.1.12]
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280) [jbossweb-7.0.13.Final.jar:]
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.13.Final.jar:]
                at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275) [jbossweb-7.0.13.Final.jar:]
                at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161) [jbossweb-7.0.13.Final.jar:]
                at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:489) [jbossweb-7.0.13.Final.jar:]
                at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153) [jboss-as-web-7.1.1.Final.jar:7.1.1.Final]
                at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:155) [jbossweb-7.0.13.Final.jar:]
                at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) [jbossweb-7.0.13.Final.jar:]
                at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) [jbossweb-7.0.13.Final.jar:]
                at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368) [jbossweb-7.0.13.Final.jar:]
                at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:505) [jbossweb-7.0.13.Final.jar:]
                at org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:445) [jbossweb-7.0.13.Final.jar:]
                at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930) [jbossweb-7.0.13.Final.jar:]
                at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_03]
            Caused by: javax.resource.ResourceException: Unable to validate user: guest
                at org.hornetq.ra.HornetQRAManagedConnection.setup(HornetQRAManagedConnection.java:821)
                at org.hornetq.ra.HornetQRAManagedConnection.<init>(HornetQRAManagedConnection.java:141)
                ... 81 more
            Caused by: javax.jms.JMSSecurityException: Unable to validate user: guest
                at org.hornetq.core.protocol.core.impl.ChannelImpl.sendBlocking(ChannelImpl.java:312)
                at org.hornetq.core.client.impl.ClientSessionFactoryImpl.createSessionInternal(ClientSessionFactoryImpl.java:780)
                at org.hornetq.core.client.impl.ClientSessionFactoryImpl.createSession(ClientSessionFactoryImpl.java:279)
                at org.hornetq.jms.client.HornetQConnection.authorize(HornetQConnection.java:601)
                at org.hornetq.jms.client.HornetQConnectionFactory.createConnectionInternal(HornetQConnectionFactory.java:684)
                at org.hornetq.jms.client.HornetQConnectionFactory.createXAConnection(HornetQConnectionFactory.java:155)
                at org.hornetq.ra.HornetQRAManagedConnection.setup(HornetQRAManagedConnection.java:806)
                ... 82 more
            Caused by: HornetQException[errorCode=105 message=Unable to validate user: guest]
                ... 89 more
            
            12:01:35,925 ERROR [org.hornetq.ra.HornetQRASessionFactoryImpl] (ajp--127.0.0.1-8009-1) Could not create session: javax.resource.ResourceException: IJ000453: Unable to get managed connection for java:/JmsXA
                at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.getManagedConnection(AbstractConnectionManager.java:390)
                at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.getManagedConnection(TxConnectionManagerImpl.java:368)
                at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:464)
                at org.hornetq.ra.HornetQRASessionFactoryImpl.allocateConnection(HornetQRASessionFactoryImpl.java:837)
                at org.hornetq.ra.HornetQRASessionFactoryImpl.createSession(HornetQRASessionFactoryImpl.java:470)
                at org.springframework.jms.support.JmsAccessor.createSession(JmsAccessor.java:196) [org.springframework.jms-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.jms.core.JmsTemplate.access$1(JmsTemplate.java:1) [org.springframework.jms-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.jms.core.JmsTemplate$JmsTemplateResourceFactory.createSession(JmsTemplate.java:1035) [org.springframework.jms-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.jms.connection.ConnectionFactoryUtils.doGetTransactionalSession(ConnectionFactoryUtils.java:300) [org.springframework.jms-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:453) [org.springframework.jms-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:534) [org.springframework.jms-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.jms.core.JmsTemplate.convertAndSend(JmsTemplate.java:612) [org.springframework.jms-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at com.sc.control.impl.JmsQueueMailControlImpl.sendMail(JmsQueueMailControlImpl.java:96) [sc.jar:]
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_03]
                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [rt.jar:1.7.0_03]
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.7.0_03]
                at java.lang.reflect.Method.invoke(Method.java:601) [rt.jar:1.7.0_03]
                at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:318) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110) [org.springframework.transaction-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:55) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:55) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:55) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:55) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:55) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:55) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202) [org.springframework.aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at $Proxy80.sendMail(Unknown Source)
                at com.sc.faces.admin.AdminMailer.sendMail(AdminMailer.java:128) [classes:]
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_03]
                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [rt.jar:1.7.0_03]
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.7.0_03]
                at java.lang.reflect.Method.invoke(Method.java:601) [rt.jar:1.7.0_03]
                at org.apache.el.parser.AstValue.invoke(AstValue.java:262) [jbossweb-7.0.13.Final.jar:]
                at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:278) [jbossweb-7.0.13.Final.jar:]
                at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105) [jsf-impl-2.1.7-jbossorg-2.jar:]
                at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88) [jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
                at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102) [jsf-impl-2.1.7-jbossorg-2.jar:]
                at javax.faces.component.UICommand.broadcast(UICommand.java:315) [jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
                at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:794) [jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
                at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1259) [jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
                at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81) [jsf-impl-2.1.7-jbossorg-2.jar:]
                at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) [jsf-impl-2.1.7-jbossorg-2.jar:]
                at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118) [jsf-impl-2.1.7-jbossorg-2.jar:]
                at javax.faces.webapp.FacesServlet.service(FacesServlet.java:593) [jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:329) [jbossweb-7.0.13.Final.jar:]
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.13.Final.jar:]
                at org.springframework.orm.hibernate4.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:119) [org.springframework.orm-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) [org.springframework.web-3.1.1.RELEASE.jar:3.1.1.RELEASE]
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280) [jbossweb-7.0.13.Final.jar:]
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.13.Final.jar:]
                at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:357) [tomahawk20-1.1.12.jar:1.1.12]
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280) [jbossweb-7.0.13.Final.jar:]
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.13.Final.jar:]
                at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275) [jbossweb-7.0.13.Final.jar:]
                at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161) [jbossweb-7.0.13.Final.jar:]
                at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:489) [jbossweb-7.0.13.Final.jar:]
                at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153) [jboss-as-web-7.1.1.Final.jar:7.1.1.Final]
                at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:155) [jbossweb-7.0.13.Final.jar:]
                at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) [jbossweb-7.0.13.Final.jar:]
                at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) [jbossweb-7.0.13.Final.jar:]
                at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368) [jbossweb-7.0.13.Final.jar:]
                at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:505) [jbossweb-7.0.13.Final.jar:]
                at org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:445) [jbossweb-7.0.13.Final.jar:]
                at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930) [jbossweb-7.0.13.Final.jar:]
                at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_03]
            Caused by: javax.resource.ResourceException: IJ000658: Unexpected throwable while trying to create a connection: null
                at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool.getConnection(SemaphoreArrayListManagedConnectionPool.java:371)
                at org.jboss.jca.core.connectionmanager.pool.AbstractPool.getTransactionNewConnection(AbstractPool.java:495)
                at org.jboss.jca.core.connectionmanager.pool.AbstractPool.getConnection(AbstractPool.java:374)
                at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.getManagedConnection(AbstractConnectionManager.java:329)
                ... 75 more
            Caused by: javax.resource.ResourceException: Error during setup
                at org.hornetq.ra.HornetQRAManagedConnection.<init>(HornetQRAManagedConnection.java:152)
                at org.hornetq.ra.HornetQRAManagedConnectionFactory.createManagedConnection(HornetQRAManagedConnectionFactory.java:180)
                at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool.createConnectionEventListener(SemaphoreArrayListManagedConnectionPool.java:761)
                at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool.getConnection(SemaphoreArrayListManagedConnectionPool.java:343)
                ... 78 more
            Caused by: javax.resource.ResourceException: Unable to validate user: guest
                at org.hornetq.ra.HornetQRAManagedConnection.setup(HornetQRAManagedConnection.java:821)
                at org.hornetq.ra.HornetQRAManagedConnection.<init>(HornetQRAManagedConnection.java:141)
                ... 81 more
            Caused by: javax.jms.JMSSecurityException: Unable to validate user: guest
                at org.hornetq.core.protocol.core.impl.ChannelImpl.sendBlocking(ChannelImpl.java:312)
                at org.hornetq.core.client.impl.ClientSessionFactoryImpl.createSessionInternal(ClientSessionFactoryImpl.java:780)
                at org.hornetq.core.client.impl.ClientSessionFactoryImpl.createSession(ClientSessionFactoryImpl.java:279)
                at org.hornetq.jms.client.HornetQConnection.authorize(HornetQConnection.java:601)
                at org.hornetq.jms.client.HornetQConnectionFactory.createConnectionInternal(HornetQConnectionFactory.java:684)
                at org.hornetq.jms.client.HornetQConnectionFactory.createXAConnection(HornetQConnectionFactory.java:155)
                at org.hornetq.ra.HornetQRAManagedConnection.setup(HornetQRAManagedConnection.java:806)
                ... 82 more
            Caused by: HornetQException[errorCode=105 message=Unable to validate user: guest]
                ... 89 more
            
            
            • 3. Re: Container managed authentication for JMS in JBoss 7.1.1
              jbertram

              By default JMS is secured from unauthenticated remote clients.  Clients running inside the server don't need to use any kind of security credentials.  Therefore you can try removing the credentials you are attempting to pass and see if that works.

              • 4. Re: Container managed authentication for JMS in JBoss 7.1.1
                raydecampo

                I'm not passing any credentials.  I was going to try that, but I didn't see how in the configuration (probably because it shouldn't be necessary).

                • 5. Re: Container managed authentication for JMS in JBoss 7.1.1
                  jbertram

                  There's nothing in the Spring config that might be setting the credentials?

                   

                  Based on the stack-trace and the code, the incoming create-session request definitely has a username of "guest".  Try to reproduce the issue with trace logging activated for "org.hornetq.ra".

                  • 6. Re: Container managed authentication for JMS in JBoss 7.1.1
                    raydecampo

                    Thanks Justin, I can't beleive I neglected to check the Spring configuration before posting to the forum.  I knew it had to be something foolish.