You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by ld...@apache.org on 2011/08/26 02:39:49 UTC

svn commit: r1161947 - in /karaf/sandbox/pieber/karaf-webconsole/trunk: core/ core/src/main/java/org/apache/karaf/webconsole/core/ core/src/main/java/org/apache/karaf/webconsole/core/table/ karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal...

Author: ldywicki
Date: Fri Aug 26 00:39:48 2011
New Revision: 1161947

URL: http://svn.apache.org/viewvc?rev=1161947&view=rev
Log:
Fix serialization issues in osgi/karaf modules. Mostly by removal of final variables

Modified:
    karaf/sandbox/pieber/karaf-webconsole/trunk/core/pom.xml
    karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/BasePage.java
    karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/table/ActionsPanel.java
    karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/feature/FeaturesActionsPanel.java
    karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/repository/RepositoriesActionPanel.java
    karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/bundle/BundlesPage.java
    karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/bundle/DetailsPage.java
    karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/bundle/view/BundleActionsPanel.java
    karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationEditPage.java
    karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationProvider.java
    karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/model/ConfigurationModel.java
    karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/resources/org/apache/karaf/webconsole/osgi/internal/bundle/DetailsPage.html

Modified: karaf/sandbox/pieber/karaf-webconsole/trunk/core/pom.xml
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/core/pom.xml?rev=1161947&r1=1161946&r2=1161947&view=diff
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/core/pom.xml (original)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/core/pom.xml Fri Aug 26 00:39:48 2011
@@ -25,12 +25,12 @@
         <dependency>
             <groupId>org.apache.wicket</groupId>
             <artifactId>wicket</artifactId>
-            <version>1.4.17</version>
+            <version>1.4.18</version>
         </dependency>
         <dependency>
             <groupId>org.apache.wicket</groupId>
             <artifactId>wicket-extensions</artifactId>
-            <version>1.4.17</version>
+            <version>1.4.18</version>
         </dependency>
 
         <dependency>

Modified: karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/BasePage.java
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/BasePage.java?rev=1161947&r1=1161946&r2=1161947&view=diff
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/BasePage.java (original)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/BasePage.java Fri Aug 26 00:39:48 2011
@@ -40,7 +40,7 @@ public class BasePage extends WebPage {
 
         add(new LanguagePanel("languagePanel", supportedLocales));
 
-        add(new NavigationPanel("navigationPanel", new LoadableDetachableModel<List<ConsoleTab>>() {
+       add(new NavigationPanel("navigationPanel", new LoadableDetachableModel<List<ConsoleTab>>() {
             @Override
             protected List<ConsoleTab> load() {
                 return tabs;

Modified: karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/table/ActionsPanel.java
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/table/ActionsPanel.java?rev=1161947&r1=1161946&r2=1161947&view=diff
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/table/ActionsPanel.java (original)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/table/ActionsPanel.java Fri Aug 26 00:39:48 2011
@@ -43,4 +43,6 @@ public class ActionsPanel<T> extends Pan
     protected List<Link> getLinks(T object, String id) {
         return Collections.emptyList();
     }
+
+    
 }

Modified: karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/feature/FeaturesActionsPanel.java
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/feature/FeaturesActionsPanel.java?rev=1161947&r1=1161946&r2=1161947&view=diff
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/feature/FeaturesActionsPanel.java (original)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/feature/FeaturesActionsPanel.java Fri Aug 26 00:39:48 2011
@@ -22,13 +22,14 @@ public class FeaturesActionsPanel extend
     }
 
     @Override
-    protected List<Link> getLinks(final Feature object, String id) {
+    protected List<Link> getLinks(Feature object, String id) {
         Link link = new Link(id) {
 
             @Override
             public void onClick() {
 
                 try {
+                    Feature object = (Feature) FeaturesActionsPanel.this.getDefaultModelObject();
                     if (isInstalled(object)) {
                         featuresService.uninstallFeature(object.getName());
                     } else {

Modified: karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/repository/RepositoriesActionPanel.java
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/repository/RepositoriesActionPanel.java?rev=1161947&r1=1161946&r2=1161947&view=diff
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/repository/RepositoriesActionPanel.java (original)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/repository/RepositoriesActionPanel.java Fri Aug 26 00:39:48 2011
@@ -22,12 +22,14 @@ public class RepositoriesActionPanel ext
     }
 
     @Override
-    protected List<Link> getLinks(final Repository object, String id) {
+    protected List<Link> getLinks(Repository object, String id) {
         List<Link> links = new ArrayList<Link>();
 
         Link remove = new Link(id) {
             @Override
             public void onClick() {
+                Repository object = (Repository) RepositoriesActionPanel.this.getDefaultModelObject();
+
                 featuresService.removeRepository(object.getURI());
 
                 Session.get().info("Repository " + object.getURI() + " was removed");

Modified: karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/bundle/BundlesPage.java
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/bundle/BundlesPage.java?rev=1161947&r1=1161946&r2=1161947&view=diff
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/bundle/BundlesPage.java (original)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/bundle/BundlesPage.java Fri Aug 26 00:39:48 2011
@@ -10,6 +10,7 @@ import org.apache.karaf.webconsole.osgi.
 import org.apache.karaf.webconsole.osgi.bundle.IColumnProvider;
 import org.apache.karaf.webconsole.osgi.bundle.IDecorationProvider;
 import org.apache.karaf.webconsole.osgi.internal.OsgiPage;
+import org.apache.karaf.webconsole.osgi.internal.bundle.view.BundleActionsPanel;
 import org.apache.karaf.webconsole.osgi.internal.bundle.view.BundlesDataTable;
 import org.apache.karaf.webconsole.osgi.internal.bundle.view.DecorationPanel;
 import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
@@ -18,6 +19,7 @@ import org.apache.wicket.extensions.mark
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.repeater.Item;
 import org.apache.wicket.model.IModel;
+import org.apache.wicket.model.Model;
 import org.ops4j.pax.wicket.api.PaxWicketBean;
 import org.ops4j.pax.wicket.api.PaxWicketMountPoint;
 import org.osgi.framework.Bundle;
@@ -59,11 +61,11 @@ public class BundlesPage extends OsgiPag
 
         columns.add(new PropertyColumnExt<Bundle>("Name", "symbolicName"));
         columns.add(new PropertyColumnExt<Bundle>("Version", "version.toString"));
-//        columns.add(new AbstractColumn<Bundle>(Model.of("Operations")) {
-//            public void populateItem(Item<ICellPopulator<Bundle>> cellItem, final String componentId, final IModel<Bundle> rowModel) {
-//                cellItem.add(new BundleActionsPanel(componentId, rowModel, actionProviders));
-//            }
-//        });
+        columns.add(new AbstractColumn<Bundle>(Model.of("Operations")) {
+            public void populateItem(Item<ICellPopulator<Bundle>> cellItem, final String componentId, final IModel<Bundle> rowModel) {
+                cellItem.add(new BundleActionsPanel(componentId, rowModel, actionProviders));
+            }
+        });
 
         add(new BundlesDataTable("bundles", columns, new BundlesDataProvider(context), 100));
     }

Modified: karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/bundle/DetailsPage.java
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/bundle/DetailsPage.java?rev=1161947&r1=1161946&r2=1161947&view=diff
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/bundle/DetailsPage.java (original)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/bundle/DetailsPage.java Fri Aug 26 00:39:48 2011
@@ -1,12 +1,15 @@
 package org.apache.karaf.webconsole.osgi.internal.bundle;
 
 import java.util.Arrays;
+import java.util.List;
 
 import org.apache.karaf.webconsole.core.BasePage;
 import org.apache.wicket.PageParameters;
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.list.ListItem;
 import org.apache.wicket.markup.html.list.ListView;
+import org.apache.wicket.model.IModel;
+import org.apache.wicket.model.LoadableDetachableModel;
 import org.ops4j.pax.wicket.api.PaxWicketBean;
 import org.ops4j.pax.wicket.api.PaxWicketMountPoint;
 import org.osgi.framework.Bundle;
@@ -17,62 +20,65 @@ import org.osgi.framework.ServiceReferen
 @PaxWicketMountPoint(mountPoint = "/osgi/bundle/detail")
 public class DetailsPage extends BasePage {
 
-	@PaxWicketBean(name = "blueprintBundleContext")
-	private BundleContext context;
-
-	public DetailsPage(PageParameters params) {
-		long bundleId = params.getLong("bundleId");
-		Bundle bundle = context.getBundle(bundleId);
-
-		add(new Label("name", bundle.getSymbolicName()));
-
-		String object = (String) bundle.getHeaders().get(Constants.IMPORT_PACKAGE);
-		if (object == null) object = "";
-
-		add(new ListView<String>("imports", Arrays.asList(object.split(","))) {
-			@Override
-			protected void populateItem(ListItem<String> item) {
-				item.add(new Label("importPackage", item.getModel()));
-			}
-		});
-
-		object = (String) bundle.getHeaders().get(Constants.EXPORT_PACKAGE);
-		if (object == null) object = "";
-		add(new ListView<String>("exports", Arrays.asList(object.split(","))) {
-			@Override
-			protected void populateItem(ListItem<String> item) {
-				item.add(new Label("exportPackage", item.getModel()));
-			}
-		});
-
-		ServiceReference[] servicesInUse = bundle.getServicesInUse();
-		if (servicesInUse == null) {
-			servicesInUse = new ServiceReference[0];
-		}
-
-		add(new ListView<ServiceReference>("servicesInUse", Arrays.asList(servicesInUse)) {
-
-			@Override
-			protected void populateItem(ListItem<ServiceReference> item) {
-				final ServiceReference reference = item.getModelObject();
-				item.add(new Label("serviceInUse", Arrays.toString((String[]) reference.getProperty("objectClass"))));
-
-				item.add(new ListView<String>("serviceInUseProperty", Arrays.asList(reference.getPropertyKeys())) {
-					@Override
-					protected void populateItem(ListItem<String> item) {
-						item.add(new Label("propertyName", item.getModelObject()));
-						Object property = reference.getProperty(item.getModelObject());
-						if (property instanceof Object[]) {
-							property = Arrays.toString((Object[]) property);
-						}
-						item.add(new Label("propertyValue", "" + property));
-					}
-				});
-				
-			}
-			
-		});
-	}
+    @PaxWicketBean(name = "blueprintBundleContext")
+    private BundleContext context;
+    private long bundleId;
+
+    public DetailsPage(PageParameters params) {
+        bundleId = params.getLong("bundleId");
+        Bundle bundle = context.getBundle(bundleId);
+
+        add(new Label("name", bundle.getSymbolicName()));
+
+        String object = (String) bundle.getHeaders().get(Constants.IMPORT_PACKAGE);
+        if (object == null) object = "";
+
+        add(new ListView<String>("imports", Arrays.asList(object.split(","))) {
+            @Override
+            protected void populateItem(ListItem<String> item) {
+                item.add(new Label("importPackage", item.getModel()));
+            }
+        });
+
+        object = (String) bundle.getHeaders().get(Constants.EXPORT_PACKAGE);
+        if (object == null) object = "";
+        add(new ListView<String>("exports", Arrays.asList(object.split(","))) {
+            @Override
+            protected void populateItem(ListItem<String> item) {
+                item.add(new Label("exportPackage", item.getModel()));
+            }
+        });
+
+        IModel<List<ServiceReference>> model = new LoadableDetachableModel<List<ServiceReference>>() {
+            @Override
+            protected List<ServiceReference> load() {
+                return Arrays.asList(context.getBundle(bundleId).getServicesInUse());
+            }
+        };
+
+        add(new ListView<ServiceReference>("servicesInUse", model) {
+            @Override
+            protected void populateItem(ListItem<ServiceReference> item) {
+                ServiceReference reference = item.getModelObject();
+                item.add(new Label("serviceInUse", Arrays.toString((String[]) reference.getProperty("objectClass"))));
+            }
+        });
+
+        model = new LoadableDetachableModel<List<ServiceReference>>() {
+            @Override
+            protected List<ServiceReference> load() {
+                return Arrays.asList(context.getBundle(bundleId).getRegisteredServices());
+            }
+        };
+
+        add(new ListView<ServiceReference>("servicesExported", model) {
+            @Override
+            protected void populateItem(ListItem<ServiceReference> item) {
+                ServiceReference reference = item.getModelObject();
+                item.add(new Label("serviceExported", Arrays.toString((String[]) reference.getProperty("objectClass"))));
+            }
+        });
+    }
 
 
 }

Modified: karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/bundle/view/BundleActionsPanel.java
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/bundle/view/BundleActionsPanel.java?rev=1161947&r1=1161946&r2=1161947&view=diff
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/bundle/view/BundleActionsPanel.java (original)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/bundle/view/BundleActionsPanel.java Fri Aug 26 00:39:48 2011
@@ -10,10 +10,7 @@ import org.apache.wicket.PageParameters;
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.link.BookmarkablePageLink;
 import org.apache.wicket.markup.html.link.Link;
-import org.apache.wicket.markup.html.list.ListItem;
-import org.apache.wicket.markup.html.list.ListView;
 import org.apache.wicket.model.IModel;
-import org.apache.wicket.model.util.ListModel;
 import org.osgi.framework.Bundle;
 
 public class BundleActionsPanel extends ActionsPanel<Bundle> {
@@ -21,12 +18,14 @@ public class BundleActionsPanel extends 
     public BundleActionsPanel(String componentId, final IModel<Bundle> model, List<IActionProvider> actionProviders) {
         super(componentId, model);
 
+        /*
         add(new ListView<IActionProvider>("extensions", new ListModel<IActionProvider>(actionProviders)) {
             @Override
             protected void populateItem(ListItem<IActionProvider> item) {
                 item.add(item.getModelObject().create("extension", model.getObject()));
             }
         });
+        */
     }
 
     @Override

Modified: karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationEditPage.java
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationEditPage.java?rev=1161947&r1=1161946&r2=1161947&view=diff
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationEditPage.java (original)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationEditPage.java Fri Aug 26 00:39:48 2011
@@ -31,7 +31,7 @@ public class ConfigurationEditPage exten
         pid = params.getString("pid");
 
         add(new Label("pid", pid));
-        final Configuration configuration = new ConfigurationModel(pid, configurationAdmin).getObject();
+        Configuration configuration = new ConfigurationModel(pid, configurationAdmin).getObject();
 
         @SuppressWarnings("unchecked")
         Map<String, String> properties = DictionaryUtils.map(configuration.getProperties());
@@ -44,6 +44,7 @@ public class ConfigurationEditPage exten
                 Map<String, String> map = getModelObject();
 
                 try {
+                    Configuration configuration = new ConfigurationModel(pid, configurationAdmin).getObject();
                     configuration.update(DictionaryUtils.dictionary(map));
 
                     Session.get().info("Configuration " + pid + " updated.");

Modified: karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationProvider.java
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationProvider.java?rev=1161947&r1=1161946&r2=1161947&view=diff
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationProvider.java (original)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationProvider.java Fri Aug 26 00:39:48 2011
@@ -36,4 +36,9 @@ public class ConfigurationProvider exten
         return configurations.length;
     }
 
+    @Override
+    public void detach() {
+        super.detach();
+        configurations = null;
+    }
 }

Modified: karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/model/ConfigurationModel.java
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/model/ConfigurationModel.java?rev=1161947&r1=1161946&r2=1161947&view=diff
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/model/ConfigurationModel.java (original)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/model/ConfigurationModel.java Fri Aug 26 00:39:48 2011
@@ -31,4 +31,9 @@ public class ConfigurationModel extends 
         }
     }
 
+    @Override
+    protected void onDetach() {
+        super.onDetach();
+        setObject(null);
+    }
 }

Modified: karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/resources/org/apache/karaf/webconsole/osgi/internal/bundle/DetailsPage.html
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/resources/org/apache/karaf/webconsole/osgi/internal/bundle/DetailsPage.html?rev=1161947&r1=1161946&r2=1161947&view=diff
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/resources/org/apache/karaf/webconsole/osgi/internal/bundle/DetailsPage.html (original)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/resources/org/apache/karaf/webconsole/osgi/internal/bundle/DetailsPage.html Fri Aug 26 00:39:48 2011
@@ -23,6 +23,7 @@
             <ul>
                 <li wicket:id="servicesInUse">
                     <span wicket:id="serviceInUse">org.osgi.framework</span>
+                    <!--
                     <table>
                         <tr>
                             <th>Property Name</th>
@@ -33,14 +34,16 @@
                             <td wicket:id="propertyValue">Property Value</td>
                         </tr>
                     </table>
+                    -->
                 </li>
             </ul>
-            <!-- 
+
+            <h3>Services provided by bundle</h3>
             <ul>
                 <li wicket:id="servicesExported">
                     <span wicket:id="serviceExported">org.osgi.framework</span>
                 </li>
-            </ul> -->
+            </ul>
         </wicket:extend>
     </body>
 </html>