Skip to content
This repository was archived by the owner on Nov 15, 2022. It is now read-only.

Commit cbf4aad

Browse files
mskdeepak-oracleyaminikb
authored andcommitted
Fix #22156: Bug in annotation handling in case of plural annotation handlers (#22164)
1 parent a5dc423 commit cbf4aad

13 files changed

Lines changed: 50 additions & 29 deletions

File tree

appserver/connectors/connectors-runtime/src/main/java/com/sun/enterprise/connectors/deployment/annotation/handlers/AdministeredObjectDefinitionHandler.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@
4949
import org.glassfish.apf.HandlerProcessingResult;
5050
import org.glassfish.deployment.common.JavaEEResourceType;
5151
import org.glassfish.deployment.common.RootDeploymentDescriptor;
52+
import org.glassfish.internal.deployment.AnnotationTypesProvider;
5253
import org.jvnet.hk2.annotations.Service;
5354

5455
import javax.interceptor.AroundInvoke;
@@ -69,7 +70,10 @@
6970
@AnnotationHandlerFor(AdministeredObjectDefinition.class)
7071
public class AdministeredObjectDefinitionHandler extends AbstractResourceHandler {
7172

72-
public AdministeredObjectDefinitionHandler() {
73+
public AdministeredObjectDefinitionHandler() {}
74+
75+
public AdministeredObjectDefinitionHandler(AnnotationTypesProvider ejbProvider) {
76+
super(ejbProvider);
7377
}
7478

7579
@Override

appserver/connectors/connectors-runtime/src/main/java/com/sun/enterprise/connectors/deployment/annotation/handlers/AdministeredObjectDefinitionsHandler.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -69,8 +69,7 @@ public class AdministeredObjectDefinitionsHandler extends AbstractResourceHandle
6969
protected final static LocalStringManagerImpl localStrings =
7070
new LocalStringManagerImpl(AdministeredObjectDefinitionsHandler.class);
7171

72-
public AdministeredObjectDefinitionsHandler() {
73-
}
72+
public AdministeredObjectDefinitionsHandler() {}
7473

7574
@Override
7675
protected HandlerProcessingResult processAnnotation(AnnotationInfo ainfo, ResourceContainerContext[] rcContexts)
@@ -92,7 +91,7 @@ protected HandlerProcessingResult processAnnotation(AnnotationInfo ainfo, Resou
9291
}else{
9392
duplicates.add(defnName);
9493
}
95-
AdministeredObjectDefinitionHandler handler = new AdministeredObjectDefinitionHandler();
94+
AdministeredObjectDefinitionHandler handler = new AdministeredObjectDefinitionHandler(ejbProvider);
9695
handler.processAnnotation(defn, ainfo, rcContexts);
9796
}
9897
duplicates.clear();

appserver/connectors/connectors-runtime/src/main/java/com/sun/enterprise/connectors/deployment/annotation/handlers/ConnectionFactoryDefinitionHandler.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@
4949
import org.glassfish.apf.HandlerProcessingResult;
5050
import org.glassfish.deployment.common.JavaEEResourceType;
5151
import org.glassfish.deployment.common.RootDeploymentDescriptor;
52+
import org.glassfish.internal.deployment.AnnotationTypesProvider;
5253
import org.jvnet.hk2.annotations.Service;
5354

5455
import javax.interceptor.AroundInvoke;
@@ -69,10 +70,11 @@
6970
@AnnotationHandlerFor(ConnectionFactoryDefinition.class)
7071
public class ConnectionFactoryDefinitionHandler extends AbstractResourceHandler {
7172

72-
73-
public ConnectionFactoryDefinitionHandler() {
74-
}
73+
public ConnectionFactoryDefinitionHandler() {}
7574

75+
public ConnectionFactoryDefinitionHandler(AnnotationTypesProvider ejbProvider) {
76+
super(ejbProvider);
77+
}
7678

7779
@Override
7880
protected HandlerProcessingResult processAnnotation(AnnotationInfo ainfo, ResourceContainerContext[] rcContexts)

appserver/connectors/connectors-runtime/src/main/java/com/sun/enterprise/connectors/deployment/annotation/handlers/ConnectionFactoryDefinitionsHandler.java

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -68,10 +68,7 @@ public class ConnectionFactoryDefinitionsHandler extends AbstractResourceHandler
6868
protected final static LocalStringManagerImpl localStrings =
6969
new LocalStringManagerImpl(ConnectionFactoryDefinitionsHandler.class);
7070

71-
72-
public ConnectionFactoryDefinitionsHandler() {
73-
}
74-
71+
public ConnectionFactoryDefinitionsHandler() {}
7572

7673
@Override
7774
protected HandlerProcessingResult processAnnotation(AnnotationInfo ainfo, ResourceContainerContext[] rcContexts)
@@ -98,7 +95,7 @@ protected HandlerProcessingResult processAnnotation(AnnotationInfo ainfo, Resou
9895
}else{
9996
duplicates.add(defnName);
10097
}
101-
ConnectionFactoryDefinitionHandler handler = new ConnectionFactoryDefinitionHandler();
98+
ConnectionFactoryDefinitionHandler handler = new ConnectionFactoryDefinitionHandler(ejbProvider);
10299
handler.processAnnotation(defn, ainfo, rcContexts);
103100
}
104101
duplicates.clear();

appserver/deployment/dol/src/main/java/com/sun/enterprise/deployment/annotation/handlers/AbstractResourceHandler.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@
5151
import org.glassfish.apf.AnnotationInfo;
5252
import org.glassfish.apf.AnnotationProcessorException;
5353
import org.glassfish.apf.HandlerProcessingResult;
54+
import org.glassfish.internal.deployment.AnnotationTypesProvider;
5455

5556
import java.lang.annotation.Annotation;
5657
import java.lang.reflect.Method;
@@ -71,6 +72,14 @@
7172
* @author Shing Wai Chan
7273
*/
7374
public abstract class AbstractResourceHandler extends AbstractHandler {
75+
76+
protected AbstractResourceHandler() {
77+
}
78+
79+
protected AbstractResourceHandler(AnnotationTypesProvider ejbProvider) {
80+
this.ejbProvider = ejbProvider;
81+
}
82+
7483
/**
7584
* Process Annotation with given ResourceContainerContexts.
7685
* @param ainfo

appserver/jdbc/jdbc-runtime/src/main/java/org/glassfish/jdbcruntime/deployment/annotation/handlers/DataSourceDefinitionHandler.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@
4949
import org.glassfish.apf.HandlerProcessingResult;
5050
import org.glassfish.deployment.common.JavaEEResourceType;
5151
import org.glassfish.deployment.common.RootDeploymentDescriptor;
52+
import org.glassfish.internal.deployment.AnnotationTypesProvider;
5253
import org.jvnet.hk2.annotations.Service;
5354

5455
import javax.annotation.sql.DataSourceDefinition;
@@ -68,7 +69,10 @@
6869
@AnnotationHandlerFor(DataSourceDefinition.class)
6970
public class DataSourceDefinitionHandler extends AbstractResourceHandler {
7071

71-
public DataSourceDefinitionHandler() {
72+
public DataSourceDefinitionHandler() {}
73+
74+
public DataSourceDefinitionHandler(AnnotationTypesProvider ejbProvider) {
75+
super(ejbProvider);
7276
}
7377

7478
protected HandlerProcessingResult processAnnotation(AnnotationInfo ainfo, ResourceContainerContext[] rcContexts)

appserver/jdbc/jdbc-runtime/src/main/java/org/glassfish/jdbcruntime/deployment/annotation/handlers/DataSourceDefinitionsHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ protected HandlerProcessingResult processAnnotation(AnnotationInfo ainfo, Resour
9494
}else{
9595
duplicates.add(defnName);
9696
}
97-
DataSourceDefinitionHandler handler = new DataSourceDefinitionHandler();
97+
DataSourceDefinitionHandler handler = new DataSourceDefinitionHandler(ejbProvider);
9898
handler.processAnnotation(defn, ainfo, rcContexts);
9999
}
100100
duplicates.clear();

appserver/jms/jms-core/src/main/java/com/sun/enterprise/connectors/jms/deployment/annotation/handlers/JMSConnectionFactoryDefinitionHandler.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@
4949
import org.glassfish.apf.HandlerProcessingResult;
5050
import org.glassfish.deployment.common.JavaEEResourceType;
5151
import org.glassfish.deployment.common.RootDeploymentDescriptor;
52+
import org.glassfish.internal.deployment.AnnotationTypesProvider;
5253
import org.jvnet.hk2.annotations.Service;
5354

5455
import javax.interceptor.AroundInvoke;
@@ -66,7 +67,10 @@
6667
@AnnotationHandlerFor(JMSConnectionFactoryDefinition.class)
6768
public class JMSConnectionFactoryDefinitionHandler extends AbstractResourceHandler {
6869

69-
public JMSConnectionFactoryDefinitionHandler() {
70+
public JMSConnectionFactoryDefinitionHandler() {}
71+
72+
public JMSConnectionFactoryDefinitionHandler(AnnotationTypesProvider ejbProvider) {
73+
super(ejbProvider);
7074
}
7175

7276
protected HandlerProcessingResult processAnnotation(AnnotationInfo ainfo, ResourceContainerContext[] rcContexts)

appserver/jms/jms-core/src/main/java/com/sun/enterprise/connectors/jms/deployment/annotation/handlers/JMSConnectionFactoryDefinitionsHandler.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@
5656
import org.glassfish.apf.AnnotationInfo;
5757
import org.glassfish.apf.AnnotationProcessorException;
5858
import org.glassfish.apf.HandlerProcessingResult;
59+
import org.glassfish.internal.deployment.AnnotationTypesProvider;
5960
import org.jvnet.hk2.annotations.Service;
6061

6162
@Service
@@ -65,9 +66,7 @@ public class JMSConnectionFactoryDefinitionsHandler extends AbstractResourceHand
6566
protected final static LocalStringManagerImpl localStrings =
6667
new LocalStringManagerImpl(JMSConnectionFactoryDefinitionsHandler.class);
6768

68-
69-
public JMSConnectionFactoryDefinitionsHandler() {
70-
}
69+
public JMSConnectionFactoryDefinitionsHandler() {}
7170

7271
@Override
7372
protected HandlerProcessingResult processAnnotation(AnnotationInfo ainfo, ResourceContainerContext[] rcContexts)
@@ -88,7 +87,7 @@ protected HandlerProcessingResult processAnnotation(AnnotationInfo ainfo, Resou
8887
} else {
8988
duplicates.add(defnName);
9089
}
91-
JMSConnectionFactoryDefinitionHandler handler = new JMSConnectionFactoryDefinitionHandler();
90+
JMSConnectionFactoryDefinitionHandler handler = new JMSConnectionFactoryDefinitionHandler(ejbProvider);
9291
handler.processAnnotation(defn, ainfo, rcContexts);
9392
}
9493
duplicates.clear();

appserver/jms/jms-core/src/main/java/com/sun/enterprise/connectors/jms/deployment/annotation/handlers/JMSDestinationDefinitionHandler.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@
4949
import org.glassfish.apf.HandlerProcessingResult;
5050
import org.glassfish.deployment.common.JavaEEResourceType;
5151
import org.glassfish.deployment.common.RootDeploymentDescriptor;
52+
import org.glassfish.internal.deployment.AnnotationTypesProvider;
5253
import org.jvnet.hk2.annotations.Service;
5354

5455
import javax.interceptor.AroundInvoke;
@@ -66,7 +67,10 @@
6667
@AnnotationHandlerFor(JMSDestinationDefinition.class)
6768
public class JMSDestinationDefinitionHandler extends AbstractResourceHandler {
6869

69-
public JMSDestinationDefinitionHandler() {
70+
public JMSDestinationDefinitionHandler() {}
71+
72+
public JMSDestinationDefinitionHandler(AnnotationTypesProvider ejbProvider) {
73+
super(ejbProvider);
7074
}
7175

7276
protected HandlerProcessingResult processAnnotation(AnnotationInfo ainfo, ResourceContainerContext[] rcContexts)

0 commit comments

Comments
 (0)