You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by ff...@apache.org on 2010/01/19 05:45:28 UTC

svn commit: r900659 - in /felix/trunk/karaf/webconsole: admin/src/main/java/org/apache/felix/karaf/webconsole/admin/ features/src/main/java/org/apache/felix/karaf/webconsole/features/ gogo/src/main/java/org/apache/felix/karaf/webconsole/gogo/

Author: ffang
Date: Tue Jan 19 04:45:27 2010
New Revision: 900659

URL: http://svn.apache.org/viewvc?rev=900659&view=rev
Log:
[FELIX-1994]Web Console admin,features and gogo plugins do not work with Equinox

Modified:
    felix/trunk/karaf/webconsole/admin/src/main/java/org/apache/felix/karaf/webconsole/admin/AdminPlugin.java
    felix/trunk/karaf/webconsole/features/src/main/java/org/apache/felix/karaf/webconsole/features/FeaturesPlugin.java
    felix/trunk/karaf/webconsole/gogo/src/main/java/org/apache/felix/karaf/webconsole/gogo/GogoPlugin.java

Modified: felix/trunk/karaf/webconsole/admin/src/main/java/org/apache/felix/karaf/webconsole/admin/AdminPlugin.java
URL: http://svn.apache.org/viewvc/felix/trunk/karaf/webconsole/admin/src/main/java/org/apache/felix/karaf/webconsole/admin/AdminPlugin.java?rev=900659&r1=900658&r2=900659&view=diff
==============================================================================
--- felix/trunk/karaf/webconsole/admin/src/main/java/org/apache/felix/karaf/webconsole/admin/AdminPlugin.java (original)
+++ felix/trunk/karaf/webconsole/admin/src/main/java/org/apache/felix/karaf/webconsole/admin/AdminPlugin.java Tue Jan 19 04:45:27 2010
@@ -174,6 +174,15 @@
 
     protected URL getResource(String path) {
         path = path.substring(NAME.length() + 1);
+        if (path.length() == 0) {
+            //it means input parameter path is just plugin name like /admin but not real resource path.
+            //on felix the return url would be null in this case, which is correct expected behavior.
+            //but on equinox the return url is like bundleresource://184.fwk1674485910/,
+            //which cause NPE in AbstractWebConsolePlugin.spoolResource
+            //so just return null ensure it works both with felix and equinox
+            return null;
+        }
+
         URL url = this.classLoader.getResource(path);
         try {
             InputStream ins = url.openStream();

Modified: felix/trunk/karaf/webconsole/features/src/main/java/org/apache/felix/karaf/webconsole/features/FeaturesPlugin.java
URL: http://svn.apache.org/viewvc/felix/trunk/karaf/webconsole/features/src/main/java/org/apache/felix/karaf/webconsole/features/FeaturesPlugin.java?rev=900659&r1=900658&r2=900659&view=diff
==============================================================================
--- felix/trunk/karaf/webconsole/features/src/main/java/org/apache/felix/karaf/webconsole/features/FeaturesPlugin.java (original)
+++ felix/trunk/karaf/webconsole/features/src/main/java/org/apache/felix/karaf/webconsole/features/FeaturesPlugin.java Tue Jan 19 04:45:27 2010
@@ -195,6 +195,15 @@
     protected URL getResource( String path )
     {
         path = path.substring( NAME.length() + 1 );
+        if (path.length() == 0) {
+            //it means input parameter path is just plugin name like /features but not real resource path.
+            //on felix the return url would be null in this case, which is correct expected behavior.
+            //but on equinox the return url is like bundleresource://184.fwk1674485910/,
+            //which cause NPE in AbstractWebConsolePlugin.spoolResource
+            //so just return null ensure it works both with felix and equinox
+            return null;
+        }
+
         URL url = this.classLoader.getResource( path );
         try
         {

Modified: felix/trunk/karaf/webconsole/gogo/src/main/java/org/apache/felix/karaf/webconsole/gogo/GogoPlugin.java
URL: http://svn.apache.org/viewvc/felix/trunk/karaf/webconsole/gogo/src/main/java/org/apache/felix/karaf/webconsole/gogo/GogoPlugin.java?rev=900659&r1=900658&r2=900659&view=diff
==============================================================================
--- felix/trunk/karaf/webconsole/gogo/src/main/java/org/apache/felix/karaf/webconsole/gogo/GogoPlugin.java (original)
+++ felix/trunk/karaf/webconsole/gogo/src/main/java/org/apache/felix/karaf/webconsole/gogo/GogoPlugin.java Tue Jan 19 04:45:27 2010
@@ -135,6 +135,15 @@
     protected URL getResource( String path )
     {
         path = path.substring( NAME.length() + 1 );
+        if (path.length() == 0) {
+            //it means input parameter path is just plugin name like /gogo but not real resource path.
+            //on felix the return url would be null in this case, which is correct expected behavior.
+            //but on equinox the return url is like bundleresource://184.fwk1674485910/,
+            //which cause NPE in AbstractWebConsolePlugin.spoolResource
+            //so just return null ensure it works both with felix and equinox
+            return null;
+        }
+
         URL url = this.getClass().getClassLoader().getResource( path );
         try
         {