javax.resource.spi.SecurityException: No Password credential
lhunath Apr 14, 2008 3:41 AMI've been migrating from JBossMQ to JBossMessaging. Just after finishing the configuration; I hit a wall on the following exception. I was redirected to this forum for assistance - I hope I came to the right place.
Let me know if you need any more info to make a relevant diagnose.
The Stack Trace and preceding TRACE level log messages:
09:26:56,682 TRACE [SecurityAssociation] popSubjectContext, sc=org.jboss.security.SecurityAssociation$SubjectContext@1c7f72d principal=null,subject=null} 09:26:56,682 TRACE [SecurityAssociation] getPrincipal, principal=null 09:26:56,682 TRACE [SecurityAssociation] pushSubjectContext, subject=null, sc=org.jboss.security.SecurityAssociation$SubjectContext@174bd22{principal=null,subje 09:26:56,722 TRACE [SecurityAssociation] getPrincipal, principal=null 09:26:56,724 TRACE [messaging] Begin isValid, principal:null, cache info: null 09:26:56,724 TRACE [messaging] defaultLogin, principal=null 09:26:56,724 TRACE [XMLLoginConfigImpl] Begin getAppConfigurationEntry(messaging), size=16 09:26:56,724 TRACE [XMLLoginConfigImpl] End getAppConfigurationEntry(messaging), authInfo=AppConfigurationEntry[]: [0] LoginModule Class: org.jboss.security.auth.spi.DatabaseServerLoginModule ControlFlag: LoginModuleControlFlag: required Options:name=rolesQuery, value=SELECT ROLE_ID, 'Roles' FROM JBM_ROLE WHERE USER_ID=? name=principalsQuery, value=SELECT PASSWD FROM JBM_USER WHERE USER_ID=? name=unauthenticatedIdentity, value=guest name=dsJndiName, value=java:/SafeOnlineDS 09:26:56,724 TRACE [DatabaseServerLoginModule] initialize, instance=@15891054 09:26:56,724 TRACE [DatabaseServerLoginModule] Security domain: messaging 09:26:56,725 TRACE [DatabaseServerLoginModule] Saw unauthenticatedIdentity=guest 09:26:56,725 TRACE [DatabaseServerLoginModule] DatabaseServerLoginModule, dsJndiName=java:/SafeOnlineDS 09:26:56,725 TRACE [DatabaseServerLoginModule] principalsQuery=SELECT PASSWD FROM JBM_USER WHERE USER_ID=? 09:26:56,725 TRACE [DatabaseServerLoginModule] rolesQuery=SELECT ROLE_ID, 'Roles' FROM JBM_ROLE WHERE USER_ID=? 09:26:56,725 TRACE [DatabaseServerLoginModule] suspendResume=true 09:26:56,725 TRACE [DatabaseServerLoginModule] login 09:26:56,725 TRACE [DatabaseServerLoginModule] Authenticating as unauthenticatedIdentity=guest 09:26:56,725 TRACE [DatabaseServerLoginModule] User 'guest' authenticated, loginOk=true 09:26:56,725 TRACE [DatabaseServerLoginModule] commit, loginOk=true 09:26:56,725 TRACE [DatabaseServerLoginModule] getRoleSets using rolesQuery: SELECT ROLE_ID, 'Roles' FROM JBM_ROLE WHERE USER_ID=?, username: guest 09:26:56,725 TRACE [DatabaseServerLoginModule] suspendAnyTransaction 09:26:56,725 TRACE [DatabaseServerLoginModule] Excuting query: SELECT ROLE_ID, 'Roles' FROM JBM_ROLE WHERE USER_ID=?, with username: guest 09:26:56,726 TRACE [DatabaseServerLoginModule] Assign user to role guest 09:26:56,726 TRACE [DatabaseServerLoginModule] resumeAnyTransaction 09:26:56,726 TRACE [messaging] defaultLogin, lc=javax.security.auth.login.LoginContext@4626db, subject=Subject(27332006).principals=org.jboss.security.SimplePri 09:26:56,726 TRACE [messaging] updateCache, inputSubject=Subject(27332006).principals=org.jboss.security.SimplePrincipal@5519585(guest)org.jboss.security.Simple 09:26:56,726 TRACE [messaging] Inserted cache info: org.jboss.security.plugins.JaasSecurityManager$DomainInfo@1bd4f6[Subject(8854389).principals=org.jboss.secur 09:26:56,726 TRACE [messaging] End isValid, true 09:26:56,729 DEBUG [IdleRemover] internalRegisterPool: registering pool with interval 900000 old interval: 450000 09:26:56,736 WARN [JBossManagedConnectionPool] Throwable while attempting to get a new connection: null javax.resource.spi.SecurityException: No Password credentials found at org.jboss.resource.adapter.jms.JmsCred.getJmsCred(JmsCred.java:75) at org.jboss.resource.adapter.jms.JmsManagedConnectionFactory.createManagedConnection(JmsManagedConnectionFactory.java:101) at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.createConnectionEventListener(InternalManagedConnectionPool.java:577) at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedConnectionPool.java:262) at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$BasePool.getConnection(JBossManagedConnectionPool.java:500) at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnectionManager2.java:341) at org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionManager.java:315) at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:396) at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java:842) at org.jboss.resource.adapter.jms.JmsSessionFactoryImpl.allocateConnection(JmsSessionFactoryImpl.java:389) at org.jboss.resource.adapter.jms.JmsSessionFactoryImpl.createSession(JmsSessionFactoryImpl.java:369) at net.link.safeonline.audit.bean.AuditContextFinalizerBean.finalizeAuditContext(AuditContextFinalizerBean.java:60)
The relevant code used to create the session:
@TransactionAttribute(TransactionAttributeType.REQUIRES_NEW) public void finalizeAuditContext(Long auditContextId) { LOG.debug("finalizing audit context: " + auditContextId); AuditMessage auditMessage = new AuditMessage(auditContextId); try { Connection connection = this.factory.createConnection(); try { Session session = connection.createSession(true, 0); <--- LINE 60 try { MessageProducer producer = session .createProducer(this.auditBackendQueue); try { Message message = auditMessage.getJMSMessage(session); producer.send(message); } finally { producer.close(); } } finally { session.close(); } } finally { connection.close(); } } catch (JMSException e) { this.auditAuditDAO.addAuditAudit("unable to publish audit context " + auditContextId + " - reason: " + e.getMessage() + " - errorCode: " + e.getErrorCode()); } }
Some of my configuration files:
http://www.lhunath.lyndir.com/stuff/mysql-persistence-service.xml
http://www.lhunath.lyndir.com/stuff/jms-ds.xml
http://www.lhunath.lyndir.com/stuff/login-config.xml
http://www.lhunath.lyndir.com/stuff/messaging-service.xml