Repository: tomee Updated Branches: refs/heads/tomee-1.7.x b4c50a7e1 -> 8ce527a2e
TOMEE-1535 don't scan @Path on methods only to skip subresources Project: http://git-wip-us.apache.org/repos/asf/tomee/repo Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/8ce527a2 Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/8ce527a2 Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/8ce527a2 Branch: refs/heads/tomee-1.7.x Commit: 8ce527a2e86edc6af08f8232f6bbb33c09dcea2b Parents: b4c50a7 Author: Romain Manni-Bucau <[email protected]> Authored: Mon Mar 30 10:57:13 2015 +0200 Committer: Romain Manni-Bucau <[email protected]> Committed: Mon Mar 30 10:57:13 2015 +0200 ---------------------------------------------------------------------- .../openejb/config/AnnotationDeployer.java | 25 ++++++++++---------- 1 file changed, 13 insertions(+), 12 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tomee/blob/8ce527a2/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java ---------------------------------------------------------------------- diff --git a/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java b/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java index f9ee4ec..911a3a8 100644 --- a/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java +++ b/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java @@ -5432,20 +5432,21 @@ public class AnnotationDeployer implements DynamicDeployer { } } - // methods annotations: inheritance is managed like it to be more efficient - final List<Annotated<Method>> methods = finder.findMetaAnnotatedMethods(Path.class); - for (final Annotated<Method> aMethod : methods) { - final Method method = aMethod.get(); - final Class<?> clazz = method.getDeclaringClass(); - - if (isInstantiable(clazz)) { - if (!isEJB(clazz)) { + if ("true".equalsIgnoreCase(SystemInstance.get().getProperty("openejb.jaxrs.scanning.methods", "false"))) { + final List<Annotated<Method>> methods = finder.findMetaAnnotatedMethods(Path.class); + for (final Annotated<Method> aMethod : methods) { + final Method method = aMethod.get(); + final Class<?> clazz = method.getDeclaringClass(); + + if (isInstantiable(clazz)) { + if (!isEJB(clazz)) { + classes.add(clazz.getName()); + } else { + webModule.getEjbRestServices().add(clazz.getName()); + } + } else if (isEJB(clazz) && DynamicSubclass.isDynamic(clazz)) { classes.add(clazz.getName()); - } else { - webModule.getEjbRestServices().add(clazz.getName()); } - } else if (isEJB(clazz) && DynamicSubclass.isDynamic(clazz)) { - classes.add(clazz.getName()); } }
