[JBoss Messaging] - Failed to get a server session
by imaeses
Hello all,
We are using JBoss Messaging 1.0.1.SP4 with JBoss Remoting 2.2.0 in JBoss 4.0.5.GA. We have a series of MDB's which answer to queues. The queues are deployed on a remote machine from the JBoss instance hosting the MDB's.
We have already noticed that sometimes when shutting down JBoss, the server hangs on undeployment of MDB's.
Today we were investigating the fact that certain queues were populated with messages that were not being delivered to their target MDB's. Using the JMX console, we noticed that the number of messages in MessageCount was not the same as that from querying the database directly for these queues. Sometimes it was more; sometimes it was less. When we tried to undeploy one of the MDB's affected, we saw the following stracktrace:
2007-03-26 13:48:00,227 WARN [org.jboss.tm.TransactionImpl] Transaction TransactionImpl:XidImpl[FormatId=257, GlobalId=Franco/39484616, BranchQual=, localId=39484616] timed out. status=STATUS_COMMITING
2007-03-26 13:48:11,364 WARN [org.jboss.jms.client.JBossConnectionConsumer] Connection consumer closing due to error in listening thread JBossConnectionConsumer[-2147480495, 44]
javax.jms.JMSException: Failed to get a server session: javax.jms.JMSException: Cannot get session after pool has been closed down.
at org.jboss.jms.asf.StdServerSessionPool.getServerSession(StdServerSessionPool.java:206)
at org.jboss.jms.client.JBossConnectionConsumer.run(JBossConnectionConsumer.java:291)
at java.lang.Thread.run(Thread.java:595)
After this, we cannot undeploy anything, even applications that have nothing to do with MDB's. The only way to terminate the server is to send it a kill -9, which is very bad.
Looking in the JBoss code, it seems that the server session pool is empty and is never refilled. When we perform the undeployment, my guess is a notify() is sent to this thread. Seeing that the pool is closing, it throws the JMSException "cannot get session after pool has been closed".
The question I have is, why isn't the session pool being refilled and why does this hang the undeployment thread?
Many thanks,
Adam
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4031559#4031559
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4031559
19Â years
[JBossWS] - Re: Getting access to X509Certificate
by rmartony
I have the solve the same problem.
My configuration:
JDK 1.5
JBoss AS 4.0.5
JBossWS 1.0.4
WS-Security
Any ideas on how to interact with WS-Security with JSR 181-POJO Endpoint to obtain X509Certificate, Subject, Principal, etc.?
grey727, maybe the JWSDP and JSR-109 approach may help me...
Regards,
Rafael.
"gray727" wrote : My configuration:
| JDK 1.5
| JBoss AS 4.0.5
| JBossWS 1.2.0
| WS-Security
|
| The configuration of my web service requires an incoming SOAP message to be digitally signed (using Message Level Security; not BASIC authentication over SSL), and this works fine. However, I have an audit requirement to log the credentials of the client trying to access the service, whether successful or not. In the past (using JWSDP and JSR-109 style web services), I've used security callback functions to meet these sort of requirements.
|
| Is there a way to interact with WS-Security during authentication and authorization and obtain the X509Certificate, Subject, Principal, etc. to log security related events? I've experimented with the WebServiceContext.getUserPrincipal(), but it seems that this is only useful for BASIC authentication, which I'm not using.
|
| thanks.
|
|
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4031545#4031545
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4031545
19Â years