You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by cw...@apache.org on 2009/02/27 20:59:26 UTC
svn commit: r748666 -
/incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/UimaDefaultMessageListenerContainer.java
Author: cwiklik
Date: Fri Feb 27 19:59:26 2009
New Revision: 748666
URL: http://svn.apache.org/viewvc?rev=748666&view=rev
Log:
UIMA-1292 Force Spring to silently recover the connection to a Broker that is missing on startup
Modified:
incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/UimaDefaultMessageListenerContainer.java
Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/UimaDefaultMessageListenerContainer.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/UimaDefaultMessageListenerContainer.java?rev=748666&r1=748665&r2=748666&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/UimaDefaultMessageListenerContainer.java (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/UimaDefaultMessageListenerContainer.java Fri Feb 27 19:59:26 2009
@@ -80,7 +80,6 @@
setAcceptMessagesWhileStopping(false);
setExceptionListener(this);
threadGroup = new ThreadGroup("ListenerThreadGroup_"+Thread.currentThread().getThreadGroup().getName());
-
}
public UimaDefaultMessageListenerContainer(boolean freeCasQueueListener)
{
@@ -158,7 +157,6 @@
}
} else if ( disableListener(t)) {
handleQueueFailure(t);
-// terminate(t);
}
}
@@ -271,15 +269,33 @@
if ( controller != null && controller.isStopped()) {
return;
}
- t.printStackTrace();
-
-
if ( endpoint == null ) {
-
- super.handleListenerSetupFailure(t, false);
- terminate(t);
+ super.handleListenerSetupFailure(t, true);
+ String controllerId = "";
+ if (controller != null ) {
+ controllerId = "Uima AS Service:"+controller.getComponentName();
+ }
+ if ( UIMAFramework.getLogger(CLASS_NAME).isLoggable(Level.WARNING) ) {
+ UIMAFramework.getLogger(CLASS_NAME).logrb(Level.WARNING, this.getClass().getName(),
+ "handleListenerSetupFailure", JmsConstants.JMS_LOG_RESOURCE_BUNDLE, "UIMAJMS_listener_connection_failure__WARNING",
+ new Object[] { controllerId, getBrokerUrl() });
+ }
+ System.out.println(controllerId+" Listener Unable to Connect to Broker:" +getBrokerUrl()+" Retrying ....");
+ // This code executes during initialization of the service. The Endpoint is not yet
+ // available. The connection to a broker cannot be established. Keep trying until
+ // the broker becomes available.
+ refreshConnectionUntilSuccessful();
+ System.out.println(controllerId+" Listener Established Connection to Broker:" +getBrokerUrl());
+ if ( UIMAFramework.getLogger(CLASS_NAME).isLoggable(Level.WARNING) ) {
+ UIMAFramework.getLogger(CLASS_NAME).logrb(Level.WARNING, this.getClass().getName(),
+ "handleListenerSetupFailure", JmsConstants.JMS_LOG_RESOURCE_BUNDLE, "UIMAJMS_listener_connection_recovered__WARNING",
+ new Object[] { controllerId, getBrokerUrl() });
+ }
return;
}
+
+ // Connection failure that occurs AFTER the service initialized.
+ t.printStackTrace();
synchronized( mux ) {
if ( !failed ) {