FELIX-3077 : Abstract class is not detected as abstract

git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@1158706 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/scrplugin/annotations/changelog.txt b/scrplugin/annotations/changelog.txt
index d833929..e67450d 100644
--- a/scrplugin/annotations/changelog.txt
+++ b/scrplugin/annotations/changelog.txt
@@ -2,6 +2,13 @@
 ---------------------------
 
 ** Bug
+    * [FELIX-3077] - Abstract class is not detected as abstract
+
+
+Changes from 1.5.0 to 1.6.0
+---------------------------
+
+** Bug
     * [FELIX-2957] - Filter scope should be an array
     * [FELIX-2943] - Component generated by @SlingServlet does not match default settings of @Component
 
diff --git a/scrplugin/annotations/src/main/java/org/apache/felix/scrplugin/tags/annotation/defaulttag/ComponentTag.java b/scrplugin/annotations/src/main/java/org/apache/felix/scrplugin/tags/annotation/defaulttag/ComponentTag.java
index fc86865..669e45a 100644
--- a/scrplugin/annotations/src/main/java/org/apache/felix/scrplugin/tags/annotation/defaulttag/ComponentTag.java
+++ b/scrplugin/annotations/src/main/java/org/apache/felix/scrplugin/tags/annotation/defaulttag/ComponentTag.java
@@ -46,7 +46,12 @@
         this.annotation = new Component() {
 
             public boolean componentAbstract() {
-                return Util.getBooleanValue(annotation, desc, "componentAbstract", Component.class);
+                final String[] sValues = Util.getAnnotationValues(annotation, "componentAbstract", desc);
+                if ( sValues != null )
+                {
+                    return Boolean.valueOf(sValues[0]);
+                }
+                return desc.isAbstract();
             }
 
             public boolean createPid() {