You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by drvillo <f....@gmail.com> on 2007/06/12 17:49:01 UTC

No redelivery/reconnect after unchecked exception

Hi all

I've been chasing this for quite a long time now:

The issue is related to 
http://www.nabble.com/Neither-rollback-nor-redeliver-the-message-tf2040790s2354.html#a5617084
this post .

The setup is AMQ-4.1-SNAPSHOT+Jencks-2.0+Spring2; I don't use XA transaction
(see xml bean definition at the bottom) and DUPS_OK_ACKNOWLEDGE, but the
same behavior appears with AUTO_ACKNOWLEDGE.

My test throws a RuntimeException within the onMessage(), what happens is
that the connection and the consumer are removed (normal), but no matter the
ActiveMQEndpointWorker.reconnect() only the consumer is ever recreated, as
shown below...
This results in no further message being consumed by the endpoint.

I would be glad to have some feedback on this, the other post got no reply
as well, and at this point I fear to be forced to catch(Throwable) right
into the listener, quite ugly:S

Thanks a lot, cheers
Francesco


/*** Trace ***/

main                ] INFO  org.apache.activemq.broker.BrokerService -
ActiveMQ 4.1-SNAPSHOT JMS Message Broker (brokerConfigTest) is starting
[main                ] INFO  org.apache.activemq.broker.BrokerService - For
help or more information please see: http://incubator.apache.org/activemq/
[main                ] INFO  org.apache.activemq.kaha.impl.KahaStore - Kaha
Store using data directory /tmp/activemq-data/kaha.db
[main                ] DEBUG org.apache.activemq.kaha.impl.data.DataManager
- End of data file reached at (header was invalid): offset = 680, file = 1,
size = 276
[JMX connector       ] INFO 
org.apache.activemq.broker.jmx.ManagementContext - JMX consoles can connect
to service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi
[main                ] DEBUG org.apache.activemq.kaha.impl.data.DataManager
- End of data file reached at (header was invalid): offset = 392784, file =
1, size = 370
[main                ] INFO 
org.apache.activemq.transport.TransportServerThreadSupport - Listening for
connections at:
tcp://villomac.local:61616?jms.dispatchAsync=true&jms.dispatchAsync=true
[main                ] INFO  org.apache.activemq.broker.TransportConnector -
Connector tcp Started
[main                ] INFO  org.apache.activemq.broker.BrokerService -
ActiveMQ JMS Message Broker (brokerConfigTest,
ID:villomac.local-52540-1181662829052-1:0) started
[main                ] DEBUG
org.apache.xbean.spring.context.ResourceXmlApplicationContext - Publishing
event in context
[org.apache.xbean.spring.context.ResourceXmlApplicationContext;hashCode=1839964]:
org.springframework.context.event.ContextRefreshedEvent[source=org.apache.xbean.spring.context.ResourceXmlApplicationContext:
display name
[org.apache.xbean.spring.context.ResourceXmlApplicationContext;hashCode=1839964];
startup date [Tue Jun 12 17:40:28 CEST 2007]; child of
[org.springframework.context.support.ClassPathXmlApplicationContext: display
name
[org.springframework.context.support.ClassPathXmlApplicationContext;hashCode=7610781];
startup date [Tue Jun 12 17:40:28 CEST 2007]; root of context hierarchy]]
[main                ] INFO 
org.springframework.transaction.jta.JtaTransactionManager - Using JTA
UserTransaction: org.jencks.GeronimoPlatformTransactionManager@a64b69
[main                ] INFO 
org.springframework.transaction.jta.JtaTransactionManager - Using JTA
TransactionManager: org.jencks.GeronimoPlatformTransactionManager@a64b69
[main                ] DEBUG
org.apache.geronimo.connector.outbound.AbstractSinglePoolConnectionInterceptor
- Connection Manager org.jencks.factory.ConnectionManagerFactoryBean
installed pool
org.apache.geronimo.connector.outbound.SinglePoolConnectionInterceptor@87ba9e
[main                ] INFO  org.jencks.JCAContainer - Jencks JCA Container
(http://jencks.org/) has started running version: null
[main                ] INFO  org.jencks.JCAConnector - Activating endpoint
for activationSpec:
ActiveMQActivationSpec{acknowledgeMode='Dups-ok-acknowledge',
destinationType='javax.jms.Queue', messageSelector='null',
destination='queue1', clientId='null', subscriptionName='null',
subscriptionDurability='NonDurable'} using endpointFactory:
org.jencks.DefaultEndpointFactory@aa2ee4[transactionManager=null]
[main                ] DEBUG org.apache.activemq.ra.ActiveMQEndpointWorker -
Starting
[main                ] DEBUG org.apache.activemq.ra.ActiveMQEndpointWorker -
Started
[main                ] INFO  org.jencks.JCAConnector - Activating endpoint
for activationSpec:
ActiveMQActivationSpec{acknowledgeMode='Dups-ok-acknowledge',
destinationType='javax.jms.Queue', messageSelector='null',
destination='queue2', clientId='null', subscriptionName='null',
subscriptionDurability='NonDurable'} using endpointFactory:
org.jencks.DefaultEndpointFactory@9e49c0[transactionManager=null]
[main                ] DEBUG org.apache.activemq.ra.ActiveMQEndpointWorker -
Starting
[main                ] DEBUG org.apache.activemq.ra.ActiveMQEndpointWorker -
Started
[pool-1-thread-1     ] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - Sending: WireFormatInfo
{ version=2, properties={TightEncodingEnabled=true, CacheSize=1024,
TcpNoDelayEnabled=true, SizePrefixDisabled=false, StackTraceEnabled=true,
MaxInactivityDuration=30000, CacheEnabled=true}, magic=[A,c,t,i,v,e,M,Q]}
[host/127.0.0.1:61616] DEBUG org.apache.activemq.transport.tcp.TcpTransport
- TCP consumer thread starting
[s.dispatchAsync=true] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - Sending: WireFormatInfo
{ version=2, properties={TightEncodingEnabled=true, CacheSize=1024,
TcpNoDelayEnabled=true, SizePrefixDisabled=false, StackTraceEnabled=true,
MaxInactivityDuration=30000, CacheEnabled=true}, magic=[A,c,t,i,v,e,M,Q]}
[p:///127.0.0.1:52545] DEBUG org.apache.activemq.transport.tcp.TcpTransport
- TCP consumer thread starting
[host/127.0.0.1:61616] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - Received WireFormat:
WireFormatInfo { version=2, properties={TightEncodingEnabled=true,
CacheSize=1024, TcpNoDelayEnabled=true, SizePrefixDisabled=false,
StackTraceEnabled=true, MaxInactivityDuration=30000, CacheEnabled=true},
magic=[A,c,t,i,v,e,M,Q]}
[host/127.0.0.1:61616] DEBUG
org.apache.activemq.transport.WireFormatNegotiator -
tcp://localhost/127.0.0.1:61616 before negotiation:
OpenWireFormat{version=2, cacheEnabled=false, stackTraceEnabled=false,
tightEncodingEnabled=false, sizePrefixDisabled=false}
[p:///127.0.0.1:52545] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - Received WireFormat:
WireFormatInfo { version=2, properties={TightEncodingEnabled=true,
CacheSize=1024, TcpNoDelayEnabled=true, SizePrefixDisabled=false,
StackTraceEnabled=true, MaxInactivityDuration=30000, CacheEnabled=true},
magic=[A,c,t,i,v,e,M,Q]}
[p:///127.0.0.1:52545] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - tcp:///127.0.0.1:52545
before negotiation: OpenWireFormat{version=2, cacheEnabled=false,
stackTraceEnabled=false, tightEncodingEnabled=false,
sizePrefixDisabled=false}
[host/127.0.0.1:61616] DEBUG
org.apache.activemq.transport.WireFormatNegotiator -
tcp://localhost/127.0.0.1:61616 after negotiation: OpenWireFormat{version=2,
cacheEnabled=true, stackTraceEnabled=true, tightEncodingEnabled=true,
sizePrefixDisabled=false}
[p:///127.0.0.1:52545] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - tcp:///127.0.0.1:52545
after negotiation: OpenWireFormat{version=2, cacheEnabled=true,
stackTraceEnabled=true, tightEncodingEnabled=true, sizePrefixDisabled=false}
[p:///127.0.0.1:52545] DEBUG org.apache.activemq.broker.TransportConnection
- Setting up new connection:
org.apache.activemq.broker.jmx.ManagedTransportConnection@c0bb4b
[p:///127.0.0.1:52545] DEBUG
org.apache.activemq.broker.region.AbstractRegion - Adding destination:
topic://ActiveMQ.Advisory.Connection
ARRIVED =false
SENDING
[p:///127.0.0.1:52545] DEBUG
org.apache.activemq.broker.region.AbstractRegion - Adding destination:
topic://ActiveMQ.Advisory.Topic
[p:///127.0.0.1:52545] DEBUG
org.apache.activemq.broker.region.AbstractRegion - Adding consumer:
ID:villomac.local-52540-1181662829052-3:0:-1:1
[main                ] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - Sending: WireFormatInfo
{ version=2, properties={TightEncodingEnabled=true, CacheSize=1024,
TcpNoDelayEnabled=true, SizePrefixDisabled=false, StackTraceEnabled=true,
MaxInactivityDuration=30000, CacheEnabled=true}, magic=[A,c,t,i,v,e,M,Q]}
[p:///127.0.0.1:52546] DEBUG org.apache.activemq.transport.tcp.TcpTransport
- TCP consumer thread starting
[s.dispatchAsync=true] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - Sending: WireFormatInfo
{ version=2, properties={TightEncodingEnabled=true, CacheSize=1024,
TcpNoDelayEnabled=true, SizePrefixDisabled=false, StackTraceEnabled=true,
MaxInactivityDuration=30000, CacheEnabled=true}, magic=[A,c,t,i,v,e,M,Q]}
[host/127.0.0.1:61616] DEBUG org.apache.activemq.transport.tcp.TcpTransport
- TCP consumer thread starting
[p:///127.0.0.1:52545] DEBUG
org.apache.activemq.broker.region.AbstractRegion - Adding consumer:
ID:villomac.local-52540-1181662829052-3:0:-1:2
[p:///127.0.0.1:52545] DEBUG
org.apache.activemq.broker.region.AbstractRegion - Adding destination:
queue://queue1
[p:///127.0.0.1:52546] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - Received WireFormat:
WireFormatInfo { version=2, properties={TightEncodingEnabled=true,
CacheSize=1024, TcpNoDelayEnabled=true, SizePrefixDisabled=false,
StackTraceEnabled=true, MaxInactivityDuration=30000, CacheEnabled=true},
magic=[A,c,t,i,v,e,M,Q]}
[p:///127.0.0.1:52546] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - tcp:///127.0.0.1:52546
before negotiation: OpenWireFormat{version=2, cacheEnabled=false,
stackTraceEnabled=false, tightEncodingEnabled=false,
sizePrefixDisabled=false}
[p:///127.0.0.1:52546] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - tcp:///127.0.0.1:52546
after negotiation: OpenWireFormat{version=2, cacheEnabled=true,
stackTraceEnabled=true, tightEncodingEnabled=true, sizePrefixDisabled=false}
[host/127.0.0.1:61616] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - Received WireFormat:
WireFormatInfo { version=2, properties={TightEncodingEnabled=true,
CacheSize=1024, TcpNoDelayEnabled=true, SizePrefixDisabled=false,
StackTraceEnabled=true, MaxInactivityDuration=30000, CacheEnabled=true},
magic=[A,c,t,i,v,e,M,Q]}
[host/127.0.0.1:61616] DEBUG
org.apache.activemq.transport.WireFormatNegotiator -
tcp://localhost/127.0.0.1:61616 before negotiation:
OpenWireFormat{version=2, cacheEnabled=false, stackTraceEnabled=false,
tightEncodingEnabled=false, sizePrefixDisabled=false}
[host/127.0.0.1:61616] DEBUG
org.apache.activemq.transport.WireFormatNegotiator -
tcp://localhost/127.0.0.1:61616 after negotiation: OpenWireFormat{version=2,
cacheEnabled=true, stackTraceEnabled=true, tightEncodingEnabled=true,
sizePrefixDisabled=false}
[p:///127.0.0.1:52545] DEBUG
org.apache.activemq.broker.region.AbstractRegion - Adding destination:
topic://ActiveMQ.Advisory.Queue
[p:///127.0.0.1:52545] DEBUG
org.apache.activemq.broker.region.AbstractRegion - Adding destination:
topic://ActiveMQ.Advisory.Consumer.Queue.queue1
[main                ] DEBUG
org.apache.geronimo.connector.outbound.SinglePoolConnectionInterceptor -
Supplying new connection MCI:
org.apache.geronimo.connector.outbound.ManagedConnectionInfo@585e93 MC:
org.apache.activemq.ra.ActiveMQManagedConnection@c11e58 from pool:
org.apache.geronimo.connector.outbound.SinglePoolConnectionInterceptor@87ba9e
[p:///127.0.0.1:52547] DEBUG org.apache.activemq.transport.tcp.TcpTransport
- TCP consumer thread starting
[pool-1-thread-1     ] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - Sending: WireFormatInfo
{ version=2, properties={TightEncodingEnabled=true, CacheSize=1024,
TcpNoDelayEnabled=true, SizePrefixDisabled=false, StackTraceEnabled=true,
MaxInactivityDuration=30000, CacheEnabled=true}, magic=[A,c,t,i,v,e,M,Q]}
[s.dispatchAsync=true] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - Sending: WireFormatInfo
{ version=2, properties={TightEncodingEnabled=true, CacheSize=1024,
TcpNoDelayEnabled=true, SizePrefixDisabled=false, StackTraceEnabled=true,
MaxInactivityDuration=30000, CacheEnabled=true}, magic=[A,c,t,i,v,e,M,Q]}
[p:///127.0.0.1:52547] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - Received WireFormat:
WireFormatInfo { version=2, properties={TightEncodingEnabled=true,
CacheSize=1024, TcpNoDelayEnabled=true, SizePrefixDisabled=false,
StackTraceEnabled=true, MaxInactivityDuration=30000, CacheEnabled=true},
magic=[A,c,t,i,v,e,M,Q]}
[p:///127.0.0.1:52547] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - tcp:///127.0.0.1:52547
before negotiation: OpenWireFormat{version=2, cacheEnabled=false,
stackTraceEnabled=false, tightEncodingEnabled=false,
sizePrefixDisabled=false}
[p:///127.0.0.1:52547] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - tcp:///127.0.0.1:52547
after negotiation: OpenWireFormat{version=2, cacheEnabled=true,
stackTraceEnabled=true, tightEncodingEnabled=true, sizePrefixDisabled=false}
[p:///127.0.0.1:52546] DEBUG org.apache.activemq.broker.TransportConnection
- Setting up new connection:
org.apache.activemq.broker.jmx.ManagedTransportConnection@854518
[host/127.0.0.1:61616] DEBUG org.apache.activemq.transport.tcp.TcpTransport
- TCP consumer thread starting
[p:///127.0.0.1:52546] DEBUG
org.apache.activemq.broker.region.AbstractRegion - Adding consumer:
ID:villomac.local-52540-1181662829052-3:1:-1:1
[host/127.0.0.1:61616] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - Received WireFormat:
WireFormatInfo { version=2, properties={TightEncodingEnabled=true,
CacheSize=1024, TcpNoDelayEnabled=true, SizePrefixDisabled=false,
StackTraceEnabled=true, MaxInactivityDuration=30000, CacheEnabled=true},
magic=[A,c,t,i,v,e,M,Q]}
[host/127.0.0.1:61616] DEBUG
org.apache.activemq.transport.WireFormatNegotiator -
tcp://localhost/127.0.0.1:61616 before negotiation:
OpenWireFormat{version=2, cacheEnabled=false, stackTraceEnabled=false,
tightEncodingEnabled=false, sizePrefixDisabled=false}
[host/127.0.0.1:61616] DEBUG
org.apache.activemq.transport.WireFormatNegotiator -
tcp://localhost/127.0.0.1:61616 after negotiation: OpenWireFormat{version=2,
cacheEnabled=true, stackTraceEnabled=true, tightEncodingEnabled=true,
sizePrefixDisabled=false}
[p:///127.0.0.1:52547] DEBUG org.apache.activemq.broker.TransportConnection
- Setting up new connection:
org.apache.activemq.broker.jmx.ManagedTransportConnection@203c7f
[p:///127.0.0.1:52547] DEBUG
org.apache.activemq.broker.region.AbstractRegion - Adding consumer:
ID:villomac.local-52540-1181662829052-3:2:-1:1
[p:///127.0.0.1:52547] DEBUG
org.apache.activemq.broker.region.AbstractRegion - Adding consumer:
ID:villomac.local-52540-1181662829052-3:2:-1:2
[p:///127.0.0.1:52547] DEBUG
org.apache.activemq.broker.region.AbstractRegion - Adding destination:
queue://queue2
[p:///127.0.0.1:52547] DEBUG
org.apache.activemq.broker.region.AbstractRegion - Adding destination:
topic://ActiveMQ.Advisory.Consumer.Queue.queue2
[host/127.0.0.1:61616] DEBUG org.apache.activemq.ra.ServerSessionPoolImpl -
ServerSession requested.
[p:///127.0.0.1:52546] DEBUG
org.apache.activemq.broker.region.AbstractRegion - Adding destination:
topic://ActiveMQ.Advisory.Producer.Queue.queue2
[host/127.0.0.1:61616] DEBUG org.apache.activemq.ra.ServerSessionPoolImpl -
Created a new session: ServerSessionImpl:0
[host/127.0.0.1:61616] DEBUG org.apache.activemq.ra.ServerSessionImpl:0 -
Starting run.
[main                ] DEBUG org.apache.activemq.ActiveMQSession - Sending
message: ActiveMQObjectMessage {commandId = 0, responseRequired = false,
messageId = ID:villomac.local-52540-1181662829052-3:1:1:1:1,
originalDestination = null, originalTransactionId = null, producerId =
ID:villomac.local-52540-1181662829052-3:1:1:1, destination = queue://queue2,
transactionId = null, expiration = 0, timestamp = 1181662830501, arrival =
0, correlationId = null, replyTo = null, persistent = true, type = null,
priority = 4, groupID = null, groupSequence = 0, targetConsumerId = null,
compressed = false, userID = null, content =
org.apache.activemq.util.ByteSequence@d15836, marshalledProperties = null,
dataStructure = null, redeliveryCounter = 0, size = 0, properties = null,
readOnlyProperties = true, readOnlyBody = true, droppable = false}
[host/127.0.0.1:61616] DEBUG org.apache.activemq.ra.ServerSessionImpl:0 -
Work accepted:
javax.resource.spi.work.WorkEvent[source=org.apache.geronimo.connector.work.GeronimoWorkManager@c90d92]
[host/127.0.0.1:61616] DEBUG org.apache.activemq.ra.ServerSessionPoolImpl -
ServerSession requested.
[host/127.0.0.1:61616] DEBUG org.apache.activemq.ra.ServerSessionPoolImpl -
Created a new session: ServerSessionImpl:1
[host/127.0.0.1:61616] DEBUG org.apache.activemq.ra.ServerSessionImpl:1 -
Starting run.
[host/127.0.0.1:61616] DEBUG org.apache.activemq.ra.ServerSessionImpl:1 -
Work accepted:
javax.resource.spi.work.WorkEvent[source=org.apache.geronimo.connector.work.GeronimoWorkManager@c90d92]
[host/127.0.0.1:61616] DEBUG org.apache.activemq.ra.ServerSessionPoolImpl -
ServerSession requested.
[host/127.0.0.1:61616] DEBUG org.apache.activemq.ra.ServerSessionPoolImpl -
Created a new session: ServerSessionImpl:2
[host/127.0.0.1:61616] DEBUG org.apache.activemq.ra.ServerSessionImpl:2 -
Starting run.
[host/127.0.0.1:61616] DEBUG org.apache.activemq.ra.ServerSessionImpl:2 -
Work accepted:
javax.resource.spi.work.WorkEvent[source=org.apache.geronimo.connector.work.GeronimoWorkManager@c90d92]
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:0 -
Work started: javax.resource.spi.work.WorkEvent[source=Work
:ServerSessionImpl:0]
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:0 -
Running
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:0 -
run loop start
[pool-1-thread-1     ] ERROR org.apache.activemq.ActiveMQSession - error
dispatching message: 
java.lang.NullPointerException
	at
net.ripe.hstcnt.bare.ThrowsExceptionMessage.getZone(ThrowsExceptionMessage.java:16)
	at
net.ripe.hstcnt.bare.RecordingMessageListener.onMessage(RecordingMessageListener.java:42)
	at
net.ripe.hstcnt.bare.BareMessageListener.onMessage(BareMessageListener.java:24)
	at
org.jencks.LocalTransactionEndpoint.onMessage(LocalTransactionEndpoint.java:68)
	at
org.apache.activemq.ra.MessageEndpointProxy$MessageEndpointAlive.onMessage(MessageEndpointProxy.java:121)
	at
org.apache.activemq.ra.MessageEndpointProxy.onMessage(MessageEndpointProxy.java:61)
	at org.apache.activemq.ActiveMQSession.run(ActiveMQSession.java:696)
	at org.apache.activemq.ra.ServerSessionImpl.run(ServerSessionImpl.java:165)
	at
org.apache.geronimo.connector.work.WorkerContext.run(WorkerContext.java:290)
	at
org.apache.geronimo.connector.work.pool.NamedRunnable.run(NamedRunnable.java:32)
	at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
	at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
	at java.lang.Thread.run(Thread.java:613)
[main                ] DEBUG
org.apache.geronimo.connector.outbound.GeronimoConnectionEventListener -
connectionClosed called with
org.apache.activemq.ra.ManagedConnectionProxy@aaf3cb for MCI:
org.apache.geronimo.connector.outbound.ManagedConnectionInfo@585e93 and MC:
org.apache.activemq.ra.ActiveMQManagedConnection@c11e58
[host/127.0.0.1:61616] DEBUG org.apache.activemq.ra.ActiveMQEndpointWorker -
Reconnect cause: 
javax.jms.JMSException: java.lang.NullPointerException
	at
org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:46)
	at
org.apache.activemq.ActiveMQConnection.onAsyncException(ActiveMQConnection.java:1525)
	at org.apache.activemq.ActiveMQSession.run(ActiveMQSession.java:700)
	at org.apache.activemq.ra.ServerSessionImpl.run(ServerSessionImpl.java:165)
	at
org.apache.geronimo.connector.work.WorkerContext.run(WorkerContext.java:290)
	at
org.apache.geronimo.connector.work.pool.NamedRunnable.run(NamedRunnable.java:32)
	at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
	at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
	at java.lang.Thread.run(Thread.java:613)
Caused by: java.lang.NullPointerException
	at
net.ripe.hstcnt.bare.ThrowsExceptionMessage.getZone(ThrowsExceptionMessage.java:16)
	at
net.ripe.hstcnt.bare.RecordingMessageListener.onMessage(RecordingMessageListener.java:42)
	at
net.ripe.hstcnt.bare.BareMessageListener.onMessage(BareMessageListener.java:24)
	at
org.jencks.LocalTransactionEndpoint.onMessage(LocalTransactionEndpoint.java:68)
	at
org.apache.activemq.ra.MessageEndpointProxy$MessageEndpointAlive.onMessage(MessageEndpointProxy.java:121)
	at
org.apache.activemq.ra.MessageEndpointProxy.onMessage(MessageEndpointProxy.java:61)
	at org.apache.activemq.ActiveMQSession.run(ActiveMQSession.java:696)
	... 6 more
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:0 -
run loop end
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionPoolImpl -
Session returned to pool: ServerSessionImpl:0
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:0 -
Run finished
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:0 -
Work completed: javax.resource.spi.work.WorkEvent[source=Work
:ServerSessionImpl:0]
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:1 -
Work started: javax.resource.spi.work.WorkEvent[source=Work
:ServerSessionImpl:1]
[p:///127.0.0.1:52547] DEBUG
org.apache.activemq.broker.region.AbstractRegion - Removing consumer:
ID:villomac.local-52540-1181662829052-3:2:-1:2
[main                ] DEBUG
org.apache.geronimo.connector.outbound.TransactionCachingInterceptor - tx
ended, returning
connectionorg.apache.activemq.ra.ManagedConnectionProxy@aaf3cb for managed
connection org.apache.activemq.ra.ActiveMQManagedConnection@c11e58 to tx
caching interceptor
org.apache.geronimo.connector.outbound.TransactionCachingInterceptor@683cc5
[main                ] DEBUG
org.apache.geronimo.connector.outbound.AbstractSinglePoolConnectionInterceptor
- returning connection org.apache.activemq.ra.ManagedConnectionProxy@aaf3cb
for MCI org.apache.geronimo.connector.outbound.ManagedConnectionInfo@585e93
and MC org.apache.activemq.ra.ActiveMQManagedConnection@c11e58 to pool
org.apache.geronimo.connector.outbound.SinglePoolConnectionInterceptor@87ba9e
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:1 -
Running
[p:///127.0.0.1:52547] DEBUG
org.apache.activemq.broker.region.AbstractRegion - Removing consumer:
ID:villomac.local-52540-1181662829052-3:2:-1:1
[p:///127.0.0.1:52546] DEBUG
org.apache.activemq.broker.region.AbstractRegion - Removing consumer:
ID:villomac.local-52540-1181662829052-3:1:-1:1
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:1 -
run loop start
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:1 -
run loop end
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionPoolImpl -
Session returned to pool: ServerSessionImpl:1
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:1 -
Run finished
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:1 -
Work completed: javax.resource.spi.work.WorkEvent[source=Work
:ServerSessionImpl:1]
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:2 -
Work started: javax.resource.spi.work.WorkEvent[source=Work
:ServerSessionImpl:2]
[main                ] DEBUG
org.apache.geronimo.connector.outbound.TransactionCachingInterceptor -
completed return of connection through tx cache
org.apache.activemq.ra.ManagedConnectionProxy@aaf3cb for MCI:
org.apache.geronimo.connector.outbound.ManagedConnectionInfo@585e93 and MC
org.apache.activemq.ra.ActiveMQManagedConnection@c11e58 to tx caching
interceptor
org.apache.geronimo.connector.outbound.TransactionCachingInterceptor@683cc5
[p:///127.0.0.1:52547] DEBUG org.apache.activemq.broker.TransportConnection
- Stopping connection: /127.0.0.1:52547
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:2 -
Running
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:2 -
run loop start
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:2 -
run loop end
[p:///127.0.0.1:52547] DEBUG org.apache.activemq.broker.TransportConnection
- Stopped connection: /127.0.0.1:52547
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionPoolImpl -
Session returned to pool: ServerSessionImpl:2
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:2 -
Run finished
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:2 -
Work completed: javax.resource.spi.work.WorkEvent[source=Work
:ServerSessionImpl:2]
[pool-1-thread-1     ] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - Sending: WireFormatInfo
{ version=2, properties={TightEncodingEnabled=true, CacheSize=1024,
TcpNoDelayEnabled=true, SizePrefixDisabled=false, StackTraceEnabled=true,
MaxInactivityDuration=30000, CacheEnabled=true}, magic=[A,c,t,i,v,e,M,Q]}
[s.dispatchAsync=true] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - Sending: WireFormatInfo
{ version=2, properties={TightEncodingEnabled=true, CacheSize=1024,
TcpNoDelayEnabled=true, SizePrefixDisabled=false, StackTraceEnabled=true,
MaxInactivityDuration=30000, CacheEnabled=true}, magic=[A,c,t,i,v,e,M,Q]}
[p:///127.0.0.1:52548] DEBUG org.apache.activemq.transport.tcp.TcpTransport
- TCP consumer thread starting
[host/127.0.0.1:61616] DEBUG org.apache.activemq.transport.tcp.TcpTransport
- TCP consumer thread starting
[p:///127.0.0.1:52548] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - Received WireFormat:
WireFormatInfo { version=2, properties={TightEncodingEnabled=true,
CacheSize=1024, TcpNoDelayEnabled=true, SizePrefixDisabled=false,
StackTraceEnabled=true, MaxInactivityDuration=30000, CacheEnabled=true},
magic=[A,c,t,i,v,e,M,Q]}
[p:///127.0.0.1:52548] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - tcp:///127.0.0.1:52548
before negotiation: OpenWireFormat{version=2, cacheEnabled=false,
stackTraceEnabled=false, tightEncodingEnabled=false,
sizePrefixDisabled=false}
[p:///127.0.0.1:52548] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - tcp:///127.0.0.1:52548
after negotiation: OpenWireFormat{version=2, cacheEnabled=true,
stackTraceEnabled=true, tightEncodingEnabled=true, sizePrefixDisabled=false}
[host/127.0.0.1:61616] DEBUG
org.apache.activemq.transport.WireFormatNegotiator - Received WireFormat:
WireFormatInfo { version=2, properties={TightEncodingEnabled=true,
CacheSize=1024, TcpNoDelayEnabled=true, SizePrefixDisabled=false,
StackTraceEnabled=true, MaxInactivityDuration=30000, CacheEnabled=true},
magic=[A,c,t,i,v,e,M,Q]}
[host/127.0.0.1:61616] DEBUG
org.apache.activemq.transport.WireFormatNegotiator -
tcp://localhost/127.0.0.1:61616 before negotiation:
OpenWireFormat{version=2, cacheEnabled=false, stackTraceEnabled=false,
tightEncodingEnabled=false, sizePrefixDisabled=false}
[host/127.0.0.1:61616] DEBUG
org.apache.activemq.transport.WireFormatNegotiator -
tcp://localhost/127.0.0.1:61616 after negotiation: OpenWireFormat{version=2,
cacheEnabled=true, stackTraceEnabled=true, tightEncodingEnabled=true,
sizePrefixDisabled=false}
[p:///127.0.0.1:52548] DEBUG org.apache.activemq.broker.TransportConnection
- Setting up new connection:
org.apache.activemq.broker.jmx.ManagedTransportConnection@e000bb
[p:///127.0.0.1:52548] DEBUG
org.apache.activemq.broker.region.AbstractRegion - Adding consumer:
ID:villomac.local-52540-1181662829052-3:3:-1:1
[p:///127.0.0.1:52548] DEBUG
org.apache.activemq.broker.region.AbstractRegion - Adding consumer:
ID:villomac.local-52540-1181662829052-3:3:-1:2
[host/127.0.0.1:61616] DEBUG org.apache.activemq.ra.ServerSessionPoolImpl -
ServerSession requested.
[host/127.0.0.1:61616] DEBUG org.apache.activemq.ra.ServerSessionPoolImpl -
Using idle session: ServerSessionImpl:2
[host/127.0.0.1:61616] DEBUG org.apache.activemq.ra.ServerSessionImpl:2 -
Starting run.
[host/127.0.0.1:61616] DEBUG org.apache.activemq.ra.ServerSessionImpl:2 -
Work accepted:
javax.resource.spi.work.WorkEvent[source=org.apache.geronimo.connector.work.GeronimoWorkManager@c90d92]
[host/127.0.0.1:61616] DEBUG org.apache.activemq.ra.ServerSessionPoolImpl -
ServerSession requested.
[host/127.0.0.1:61616] DEBUG org.apache.activemq.ra.ServerSessionPoolImpl -
Using idle session: ServerSessionImpl:1
[host/127.0.0.1:61616] DEBUG org.apache.activemq.ra.ServerSessionImpl:1 -
Starting run.
[host/127.0.0.1:61616] DEBUG org.apache.activemq.ra.ServerSessionImpl:1 -
Work accepted:
javax.resource.spi.work.WorkEvent[source=org.apache.geronimo.connector.work.GeronimoWorkManager@c90d92]
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:2 -
Work started: javax.resource.spi.work.WorkEvent[source=Work
:ServerSessionImpl:2]
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:2 -
Running
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:2 -
run loop start
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:2 -
run loop end
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionPoolImpl -
Session returned to pool: ServerSessionImpl:2
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:2 -
Run finished
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:2 -
Work completed: javax.resource.spi.work.WorkEvent[source=Work
:ServerSessionImpl:2]
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:1 -
Work started: javax.resource.spi.work.WorkEvent[source=Work
:ServerSessionImpl:1]
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:1 -
Running
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:1 -
run loop start
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:1 -
run loop end
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionPoolImpl -
Session returned to pool: ServerSessionImpl:1
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:1 -
Run finished
[pool-1-thread-1     ] DEBUG org.apache.activemq.ra.ServerSessionImpl:1 -
Work completed: javax.resource.spi.work.WorkEvent[source=Work
:ServerSessionImpl:1]


/*** Spring bean definitions ***/

    <bean id="transactionManager"
class="org.jencks.factory.TransactionManagerFactoryBean"/>


    <!-- Jencks Connection Manager -->
    <bean id="connectionManager"
class="org.jencks.factory.ConnectionManagerFactoryBean">
        <property name="transactionManager" ref="transactionManager"/>
        <property name="transaction" value="local"/>
        <property name="pooling" value="true"/>
        <property name="allConnectionsEqual" value="true"/>
        <property name="poolMaxSize" value="100"/>
        <property name="poolMinSize" value="1"/>
        <property name="connectionMaxWaitMilliseconds" value="60"/>
        <property name="connectionMaxIdleMinutes" value="60"/>
    </bean>

    <bean id="jmsResourceAdapter"
class="org.apache.activemq.ra.ActiveMQResourceAdapter" depends-on="broker">
        <!--<property name="serverUrl" value="vm://HCBroker"/>-->
        <property name="serverUrl"
value="tcp://localhost:61616?jms.useAsyncSend=true&amp;jms.dispatchAsync=true"/>
        <!--<property name="serverUrl"
value="vm://HCBroker?jms.useAsyncSend=true&amp;jms.dispatchAsync=true"/>-->
        <!--<property name="queuePrefetch" value="1000"/>-->
    </bean>

    <bean id="jmsManagedConnectionFactory"
class="org.apache.activemq.ra.ActiveMQManagedConnectionFactory"
          depends-on="jmsResourceAdapter">
        <property name="resourceAdapter" ref="jmsResourceAdapter"/>
    </bean>
    <bean id="jmsConnectionFactory"
class="org.jencks.factory.ConnectionFactoryFactoryBean">
        <property name="managedConnectionFactory"
ref="jmsManagedConnectionFactory"/>
        <property name="connectionManager" ref="connectionManager"/>
    </bean>


    <bean id="jencksJCAContainer" class="org.jencks.JCAContainer">
        <property name="lazyLoad" value="true"/>
        <property name="transactionManager" ref="transactionManager"/>
        <property name="threadPoolSize">
            <value>1</value>
        </property>
        <property name="resourceAdapter" ref="jmsResourceAdapter"/>
    </bean>


    <bean id="inboundConnector2" class="org.jencks.JCAConnector">
        <property name="jcaContainer" ref="jencksJCAContainer"/>
        <property name="activationSpec">
            <bean class="org.apache.activemq.ra.ActiveMQActivationSpec">
                <property name="destination" value="queue2"/>
                <property name="destinationType" value="javax.jms.Queue"/>
                <property name="acknowledgeMode"
value="Dups-ok-acknowledge"/>
                <property name="maxSessions" value="80"/>
                <property name="maxMessagesPerSessions" value="10000"/>
            </bean>
        </property>
        <property name="ref" value="listener2"/> 
    </bean>


/*** Test code ***/

    public void testRuntimeException() throws Exception {
        applicationContext = new ClassPathXmlApplicationContext(new
String[]{
                basePath + "jms-bare/jms.xml",
                basePath + "jms-bare/container.xml",
               basePath + "jms-bare/2queues-dupsok.xml"
        });

        JmsTemplate sender = new JmsTemplate((ConnectionFactory)
applicationContext.getBean("jmsConnectionFactory"));
        sender.setDefaultDestination((Destination)
applicationContext.getBean("queue2"));
        sender.setSessionAcknowledgeMode(Session.DUPS_OK_ACKNOWLEDGE);
        RecordingMessageListener l2 = (RecordingMessageListener)
applicationContext.getBean("listener2");
        l2.setExpected(1);
        MessageObserver observer = new MessageObserver();
        l2.setObserver(observer);

        observer.start();

        System.out.println("SENDING");
        sender.convertAndSend(new ThrowsExceptionMessage("testexception"));


        observer.join();
    }



-- 
View this message in context: http://www.nabble.com/No-redelivery-reconnect-after-unchecked-exception-tf3908350s2354.html#a11081437
Sent from the ActiveMQ - User mailing list archive at Nabble.com.