summaryrefslogtreecommitdiffstats
path: root/java/sca/modules/implementation-java
diff options
context:
space:
mode:
authorantelder <antelder@13f79535-47bb-0310-9956-ffa450edef68>2009-10-15 20:16:40 +0000
committerantelder <antelder@13f79535-47bb-0310-9956-ffa450edef68>2009-10-15 20:16:40 +0000
commit5c5c84eb977eea76e9d72d951abae4f735f632f4 (patch)
tree01897ac4ef56dec4b0897970c9e86991bf66c90b /java/sca/modules/implementation-java
parentcad2a908f3377ecefce6d516c28246f90d5a3794 (diff)
Fix SCAJ CAA JCA_10047 - @Scope is not allowed on a service interface class
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@825631 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/sca/modules/implementation-java')
-rw-r--r--java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/ServiceProcessor.java9
1 files changed, 9 insertions, 0 deletions
diff --git a/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/ServiceProcessor.java b/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/ServiceProcessor.java
index e74fa8c537..797ffcf5d7 100644
--- a/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/ServiceProcessor.java
+++ b/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/ServiceProcessor.java
@@ -102,6 +102,15 @@ public class ServiceProcessor extends BaseJavaClassVisitor {
}
}
+ //validate no scope on servce interface
+ for (Class<?> iface : interfaces) {
+ for (Annotation aaa : iface.getAnnotations()) {
+ if (iface.getAnnotation(org.oasisopen.sca.annotation.Scope.class) != null) {
+ throw new IntrospectionException("JCA90041 @Scope annotation not allowed on service interface " + iface.getName());
+ }
+ }
+ }
+
//validate service methods implemented
Method[] ms = clazz.getMethods();
for (Class<?> iface : interfaces) {