QPID-7627: [Java Broker] Change retention policy to CLASS for annotation DoOnConfigThread
diff --git a/broker-codegen/src/main/java/org/apache/qpid/server/model/ConfiguredObjectFactoryGenerator.java b/broker-codegen/src/main/java/org/apache/qpid/server/model/ConfiguredObjectFactoryGenerator.java
index 3d071dd..c3f8085 100644
--- a/broker-codegen/src/main/java/org/apache/qpid/server/model/ConfiguredObjectFactoryGenerator.java
+++ b/broker-codegen/src/main/java/org/apache/qpid/server/model/ConfiguredObjectFactoryGenerator.java
@@ -91,7 +91,16 @@
         }
         catch (Exception e)
         {
-            processingEnv.getMessager().printMessage(Diagnostic.Kind.ERROR, "Error: " + e.getLocalizedMessage());
+            try(StringWriter sw = new StringWriter();
+                PrintWriter pw = new PrintWriter(sw))
+            {
+                e.printStackTrace(pw);
+                processingEnv.getMessager().printMessage(Diagnostic.Kind.ERROR, "Unexpected Error: " + sw.toString());
+            }
+            catch (IOException ioe)
+            {
+                processingEnv.getMessager().printMessage(Diagnostic.Kind.ERROR, "Error: " + ioe.getLocalizedMessage());
+            }
         }
 
         return true;
diff --git a/broker-core/src/main/java/org/apache/qpid/server/model/DoOnConfigThread.java b/broker-core/src/main/java/org/apache/qpid/server/model/DoOnConfigThread.java
index 13621ea..1c9b39e 100644
--- a/broker-core/src/main/java/org/apache/qpid/server/model/DoOnConfigThread.java
+++ b/broker-core/src/main/java/org/apache/qpid/server/model/DoOnConfigThread.java
@@ -25,7 +25,7 @@
 import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
 
-@Retention(RetentionPolicy.SOURCE)
+@Retention(RetentionPolicy.CLASS)
 @Target(ElementType.METHOD)
 public @interface DoOnConfigThread
 {