You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2013/05/31 16:06:50 UTC

[2/5] git commit: ISIS-406, ISIS-416, ISIS-417: updating poms; 'select all' checkbox; disable concurrency checking; make spinning-icon configurable; remove defunct code

ISIS-406, ISIS-416, ISIS-417: updating poms; 'select all' checkbox; disable concurrency checking; make spinning-icon configurable; remove defunct code

* updating poms to latest snapshot;
* select all on standalone tables in wicket viewer
* moved spinning-icon.gif (for veil) out into WEB-INF dir, so pluggable
* fixed some concurrency issues.


Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/9644f925
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/9644f925
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/9644f925

Branch: refs/heads/master
Commit: 9644f9255f9bcbf143fe113986b70bebfd0f501a
Parents: a4fabe6
Author: Dan Haywood <da...@apache.org>
Authored: Fri May 31 14:15:08 2013 +0100
Committer: Dan Haywood <da...@apache.org>
Committed: Fri May 31 14:15:08 2013 +0100

----------------------------------------------------------------------
 component/objectstore/nosql/pom.xml                |    2 +-
 component/objectstore/sql/pom.xml                  |    2 +-
 component/objectstore/xml/pom.xml                  |    2 +-
 component/profilestore/xml/pom.xml                 |    2 +-
 component/progmodel/groovy/pom.xml                 |    2 +-
 component/viewer/bdd/pom.xml                       |    4 +-
 component/viewer/bdd/tck/pom.xml                   |    2 +-
 component/viewer/dnd/pom.xml                       |    2 +-
 component/viewer/dnd/tck/pom.xml                   |    2 +-
 component/viewer/scimpi/pom.xml                    |    2 +-
 component/viewer/scimpi/tck/pom.xml                |    4 +-
 .../viewer/wicket/model/models/ActionModel.java    |   23 +--
 .../wicket/model/models/EntityCollectionModel.java |   21 --
 .../wicket/ui/components/actions/ActionPanel.java  |    7 -
 .../actions/ActionParametersFormPanel.html         |    2 +-
 .../ui/components/actions/spinning-icon-blue.gif   |  Bin 2693 -> 0 bytes
 .../ajaxtable/BulkActionsLinkFactory.java          |    3 +-
 .../CollectionContentsAsAjaxTablePanel.java        |   14 --
 .../ajaxtable/MyAjaxFallbackDefaultDataTable.java  |    2 +-
 .../ajaxtable/MyAjaxFallbackHeadersToolbar.java    |   73 ++++++
 .../ajaxtable/MyHeadersToolbar.html                |   29 +++
 .../ajaxtable/MyHeadersToolbar.java                |  183 +++++++++++++++
 .../columns/ObjectAdapterSelectColumn.java         |   57 -----
 .../columns/ObjectAdapterToggleboxColumn.java      |   39 +++-
 .../CollectionContentsAsIconsPanelFactory.java     |    4 -
 .../entity/properties/EntityPropertiesPanel.html   |    2 +-
 .../widgets/checkbox/ContainedToggleboxPanel.java  |   14 +-
 example/application/claims/dom/pom.xml             |    2 +-
 example/application/claims/pom.xml                 |    6 +-
 .../ide/eclipse/launch/claims-viewer-dnd.launch    |    2 -
 .../ide/eclipse/launch/claims-viewer-scimpi.launch |    2 -
 .../ide/eclipse/launch/claims-viewer-wicket.launch |    2 -
 example/application/claims/viewer-wicket/pom.xml   |    1 -
 .../application/quickstart_dnd_junit_bdd/pom.xml   |    5 +-
 .../tests-junit/isis.properties                    |   29 ---
 .../quickstart_dnd_junit_bdd/tests-junit/pom.xml   |   82 -------
 .../src/test/java/junit/AbstractTest.java          |  101 --------
 .../java/junit/todo/ToDoItemRepositoryTest.java    |   57 -----
 .../src/test/java/junit/todo/ToDoItemTest.java     |   66 ------
 .../quickstart_dnd_junit_bdd-viewer-dnd.launch     |    2 -
 .../application/quickstart_scimpi_nosql/pom.xml    |    4 +-
 .../eclipse/launch/quickstart-viewer-scimpi.launch |    2 +-
 .../dom/src/main/java/dom/todo/ToDoItem.java       |    8 +-
 .../quickstart_wicket_restful_jdo/pom.xml          |    2 +-
 .../src/main/java/app/QuickStartApplication.java   |   52 +++--
 .../src/main/webapp/images/spinning-icon.gif       |  Bin 0 -> 5266 bytes
 example/domain-service/email-service/pom.xml       |    2 +-
 example/misc/metamodel/namefile/pom.xml            |    2 +-
 tool/maven-plugin/pom.xml                          |    2 +-
 49 files changed, 401 insertions(+), 529 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/objectstore/nosql/pom.xml
----------------------------------------------------------------------
diff --git a/component/objectstore/nosql/pom.xml b/component/objectstore/nosql/pom.xml
index 8ad54e8..fe28304 100644
--- a/component/objectstore/nosql/pom.xml
+++ b/component/objectstore/nosql/pom.xml
@@ -23,7 +23,7 @@
     <parent>
 		<groupId>org.apache.isis.core</groupId>
 		<artifactId>isis</artifactId>
-        <version>1.2.0-SNAPSHOT</version>
+        <version>1.3.0-SNAPSHOT</version>
 		<relativePath>../../../core/pom.xml</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/objectstore/sql/pom.xml
----------------------------------------------------------------------
diff --git a/component/objectstore/sql/pom.xml b/component/objectstore/sql/pom.xml
index 1929c6e..2240e6c 100644
--- a/component/objectstore/sql/pom.xml
+++ b/component/objectstore/sql/pom.xml
@@ -15,7 +15,7 @@
     <parent>
 		<groupId>org.apache.isis.core</groupId>
 		<artifactId>isis</artifactId>
-        <version>1.2.0-SNAPSHOT</version>
+        <version>1.3.0-SNAPSHOT</version>
 		<relativePath>../../../core/pom.xml</relativePath>
    </parent>
 

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/objectstore/xml/pom.xml
----------------------------------------------------------------------
diff --git a/component/objectstore/xml/pom.xml b/component/objectstore/xml/pom.xml
index b9f9f16..0e608b2 100644
--- a/component/objectstore/xml/pom.xml
+++ b/component/objectstore/xml/pom.xml
@@ -23,7 +23,7 @@
     <parent>
 		<groupId>org.apache.isis.core</groupId>
 		<artifactId>isis</artifactId>
-        <version>1.2.0-SNAPSHOT</version>
+        <version>1.3.0-SNAPSHOT</version>
 		<relativePath>../../../core/pom.xml</relativePath>
 	</parent>
 

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/profilestore/xml/pom.xml
----------------------------------------------------------------------
diff --git a/component/profilestore/xml/pom.xml b/component/profilestore/xml/pom.xml
index b8cbf2f..74dca29 100644
--- a/component/profilestore/xml/pom.xml
+++ b/component/profilestore/xml/pom.xml
@@ -23,7 +23,7 @@
     <parent>
 		<groupId>org.apache.isis.core</groupId>
 		<artifactId>isis</artifactId>
-        <version>1.2.0-SNAPSHOT</version>
+        <version>1.3.0-SNAPSHOT</version>
 		<relativePath>../../../core/pom.xml</relativePath>
 	</parent>
 

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/progmodel/groovy/pom.xml
----------------------------------------------------------------------
diff --git a/component/progmodel/groovy/pom.xml b/component/progmodel/groovy/pom.xml
index 59f3522..3105d45 100644
--- a/component/progmodel/groovy/pom.xml
+++ b/component/progmodel/groovy/pom.xml
@@ -24,7 +24,7 @@
 	<parent>
 		<groupId>org.apache.isis.core</groupId>
 		<artifactId>isis</artifactId>
-        <version>1.2.0-SNAPSHOT</version>
+        <version>1.3.0-SNAPSHOT</version>
 		<relativePath>../../../core/pom.xml</relativePath>
 	</parent>
 

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/bdd/pom.xml
----------------------------------------------------------------------
diff --git a/component/viewer/bdd/pom.xml b/component/viewer/bdd/pom.xml
index fcb600e..d8b31fb 100644
--- a/component/viewer/bdd/pom.xml
+++ b/component/viewer/bdd/pom.xml
@@ -23,7 +23,7 @@
 	<parent>
 		<groupId>org.apache.isis.core</groupId>
 		<artifactId>isis</artifactId>
-        <version>1.2.0-SNAPSHOT</version>
+        <version>1.3.0-SNAPSHOT</version>
 		<relativePath>../../../core/pom.xml</relativePath>
 	</parent>
 
@@ -43,7 +43,7 @@
         <docbkxGuideSubTitle>Acceptance Testing using BDD Frameworks</docbkxGuideSubTitle>
         <docbkxGuideName>isis-bdd-integration</docbkxGuideName>
         
-        <isis-security-file.version>1.0.1-SNAPSHOT</isis-security-file.version>
+        <isis-security-file.version>1.0.2-SNAPSHOT</isis-security-file.version>
     </properties>
 
     <!-- used in Site generation for relative references. -->

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/bdd/tck/pom.xml
----------------------------------------------------------------------
diff --git a/component/viewer/bdd/tck/pom.xml b/component/viewer/bdd/tck/pom.xml
index bf2646e..46793e3 100644
--- a/component/viewer/bdd/tck/pom.xml
+++ b/component/viewer/bdd/tck/pom.xml
@@ -22,7 +22,7 @@
     <parent>
         <groupId>org.apache.isis.core</groupId>
         <artifactId>isis-core-tck</artifactId>
-        <version>1.2.0-SNAPSHOT</version>
+        <version>1.3.0-SNAPSHOT</version>
         <relativePath>../../../../core/tck/pom.xml</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/dnd/pom.xml
----------------------------------------------------------------------
diff --git a/component/viewer/dnd/pom.xml b/component/viewer/dnd/pom.xml
index 7ae116a..d2a5437 100644
--- a/component/viewer/dnd/pom.xml
+++ b/component/viewer/dnd/pom.xml
@@ -23,7 +23,7 @@
 	<parent>
 		<groupId>org.apache.isis.core</groupId>
 		<artifactId>isis</artifactId>
-        <version>1.2.0-SNAPSHOT</version>
+        <version>1.3.0-SNAPSHOT</version>
 		<relativePath>../../../core/pom.xml</relativePath>
 	</parent>
 

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/dnd/tck/pom.xml
----------------------------------------------------------------------
diff --git a/component/viewer/dnd/tck/pom.xml b/component/viewer/dnd/tck/pom.xml
index bea5fc5..d5d9480 100644
--- a/component/viewer/dnd/tck/pom.xml
+++ b/component/viewer/dnd/tck/pom.xml
@@ -27,7 +27,7 @@
     <parent>
         <groupId>org.apache.isis.core</groupId>
         <artifactId>isis-core-tck</artifactId>
-        <version>1.2.0-SNAPSHOT</version>
+        <version>1.3.0-SNAPSHOT</version>
         <relativePath>../../../../core/tck/pom.xml</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/scimpi/pom.xml
----------------------------------------------------------------------
diff --git a/component/viewer/scimpi/pom.xml b/component/viewer/scimpi/pom.xml
index ccea900..a4f1dc9 100644
--- a/component/viewer/scimpi/pom.xml
+++ b/component/viewer/scimpi/pom.xml
@@ -23,7 +23,7 @@
 	<parent>
 		<groupId>org.apache.isis.core</groupId>
 		<artifactId>isis</artifactId>
-        <version>1.2.0-SNAPSHOT</version>
+        <version>1.3.0-SNAPSHOT</version>
 		<relativePath>../../../core/pom.xml</relativePath>
 	</parent>
 

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/scimpi/tck/pom.xml
----------------------------------------------------------------------
diff --git a/component/viewer/scimpi/tck/pom.xml b/component/viewer/scimpi/tck/pom.xml
index 737f319..4031b9c 100644
--- a/component/viewer/scimpi/tck/pom.xml
+++ b/component/viewer/scimpi/tck/pom.xml
@@ -23,7 +23,7 @@
     <parent>
         <groupId>org.apache.isis.core</groupId>
         <artifactId>isis-core-tck</artifactId>
-        <version>1.2.0-SNAPSHOT</version>
+        <version>1.3.0-SNAPSHOT</version>
         <relativePath>../../../../core/tck/pom.xml</relativePath>
     </parent>
 
@@ -35,7 +35,7 @@
         <isis-viewer-scimpi.version>1.0.0-SNAPSHOT</isis-viewer-scimpi.version>
         <isis-objectstore-xml.version>1.0.0-SNAPSHOT</isis-objectstore-xml.version>
         <isis-profilestore-xml.version>1.0.0-SNAPSHOT</isis-profilestore-xml.version>
-        <isis-security-file.version>1.0.1-SNAPSHOT</isis-security-file.version>
+        <isis-security-file.version>1.0.2-SNAPSHOT</isis-security-file.version>
 
         <siteBaseDir>..</siteBaseDir>
         <relativeUrl>scimpi-tck/</relativeUrl>

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/ActionModel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/ActionModel.java b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/ActionModel.java
index 1492fee..8983e3f 100644
--- a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/ActionModel.java
+++ b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/ActionModel.java
@@ -87,11 +87,7 @@ public class ActionModel extends BookmarkableModel<ObjectAdapter> {
         /**
          * Redirect to <tt>EntityPage</tt>.
          */
-        REDIRECT,
-        /**
-         * Select, ie call the provided {@link SelectionHandler}.
-         */
-        SELECT
+        REDIRECT
     }
 
     
@@ -287,7 +283,6 @@ public class ActionModel extends BookmarkableModel<ObjectAdapter> {
     private Mode actionMode;
     private final SingleResultsMode singleResultsMode;
 
-    private SelectionHandler selectionHandler;
     private NoResultsHandler noResultsHandler;
 
     /**
@@ -499,22 +494,6 @@ public class ActionModel extends BookmarkableModel<ObjectAdapter> {
         return arguments;
     }
 
-    /**
-     * The {@link SelectionHandler}, if any.
-     * 
-     * <p>
-     * If specified, then
-     * {@link EntityCollectionModel#setSelectionHandler(SelectionHandler)
-     * propogated} if the results is a {@link EntityCollectionModel collection},
-     * or used directly if the results is an {@link EntityModel}.
-     */
-    public SelectionHandler getSelectionHandler() {
-        return selectionHandler;
-    }
-
-    public void setSelectionHandler(final SelectionHandler selectionHandler) {
-        this.selectionHandler = selectionHandler;
-    }
 
     /**
      * The {@link NoResultsHandler}, if any,

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityCollectionModel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityCollectionModel.java b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityCollectionModel.java
index 59dc791..3d7b880 100644
--- a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityCollectionModel.java
+++ b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityCollectionModel.java
@@ -182,8 +182,6 @@ public class EntityCollectionModel extends ModelAbstract<List<ObjectAdapter>> im
      */
     private CollectionMemento collectionMemento;
 
-    private SelectionHandler selectionHandler;
-
     private final int pageSize;
 
     /**
@@ -275,25 +273,6 @@ public class EntityCollectionModel extends ModelAbstract<List<ObjectAdapter>> im
         return collectionMemento;
     }
 
-    /**
-     * The {@link SelectionHandler}, if any.
-     * 
-     * <p>
-     * If specified, then view {@link Component}s are expected to render the
-     * collection so that one of the entities can be selected.
-     */
-    public SelectionHandler getSelectionHandler() {
-        return selectionHandler;
-    }
-
-    public void setSelectionHandler(final SelectionHandler selectionHandler) {
-        this.selectionHandler = selectionHandler;
-    }
-
-    public boolean hasSelectionHandler() {
-        return getSelectionHandler() != null;
-    }
-
     @SuppressWarnings("unchecked")
     public static Iterable<Object> asIterable(final ObjectAdapter resultAdapter) {
         return (Iterable<Object>) resultAdapter.getObject();

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionPanel.java
index d3db6bd..ea6dc0e 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionPanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionPanel.java
@@ -332,9 +332,6 @@ public class ActionPanel extends PanelAbstract<ActionModel> implements ActionExe
                     // panel.setRedirect(true); // no longer required, http://mail-archives.apache.org/mod_mbox/wicket-users/201103.mbox/%3CAANLkTin3NmEBaMY9CF8diXA+wTMamQPc2O+tWvG_HCiW@mail.gmail.com%3E
                     panel.setResponsePage(entityPage);
                     
-                } else if (singleResultsMode == ActionModel.SingleResultsMode.SELECT) {
-                    panel.hideAll();
-                    actionModel.getSelectionHandler().onSelected(panel, actualAdapter);
                 } else if (singleResultsMode == ActionModel.SingleResultsMode.INLINE) {
                     final ComponentType componentType = ComponentType.ENTITY;
                     panel.hideAllBut(componentType);
@@ -362,10 +359,6 @@ public class ActionPanel extends PanelAbstract<ActionModel> implements ActionExe
 
             private void addOrReplaceCollectionResultsPanel(final ActionPanel panel, final ObjectAdapter resultAdapter) {
                 final EntityCollectionModel collectionModel = EntityCollectionModel.createStandalone(resultAdapter);
-                final SelectionHandler selectionHandler = panel.getModel().getSelectionHandler();
-                if (selectionHandler != null) {
-                    collectionModel.setSelectionHandler(selectionHandler);
-                }
                 final ComponentFactoryRegistry componentFactoryRegistry = panel.getComponentFactoryRegistry();
                 componentFactoryRegistry.addOrReplaceComponent(panel, ComponentType.COLLECTION_CONTENTS, collectionModel);
 

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.html
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.html b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.html
index 5684190..89032c6 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.html
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.html
@@ -33,7 +33,7 @@
                             <div id="veil"> 
                                 <div class="imgHolder">
                                     <wicket:link>
-                                        <img src="./spinning-icon.gif"/>
+                                        <img src="/images/spinning-icon.gif"/>
                                     </wicket:link>
                                 </div>
                             </div>

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/spinning-icon-blue.gif
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/spinning-icon-blue.gif b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/spinning-icon-blue.gif
deleted file mode 100644
index 0e2b686..0000000
Binary files a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/spinning-icon-blue.gif and /dev/null differ

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/BulkActionsLinkFactory.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/BulkActionsLinkFactory.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/BulkActionsLinkFactory.java
index f519a1a..53aafb5 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/BulkActionsLinkFactory.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/BulkActionsLinkFactory.java
@@ -62,7 +62,8 @@ final class BulkActionsLinkFactory implements CssMenuLinkFactory {
                 final ObjectAction objectAction = actionMemento.getAction();
                 
                 for(ObjectAdapterMemento entityAdapterMemento: model.getToggleMementosList()) {
-                    final ObjectAdapter entityAdapter = entityAdapterMemento.getObjectAdapter(ConcurrencyChecking.CHECK);
+                    // REVIEW: have disabled concurrency checking here...
+                    final ObjectAdapter entityAdapter = entityAdapterMemento.getObjectAdapter(ConcurrencyChecking.NO_CHECK);
 
                     int numParameters = objectAction.getParameterCount();
                     if(objectAction.isContributed()) {

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/CollectionContentsAsAjaxTablePanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/CollectionContentsAsAjaxTablePanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/CollectionContentsAsAjaxTablePanel.java
index 88091e9..ac66e1b 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/CollectionContentsAsAjaxTablePanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/CollectionContentsAsAjaxTablePanel.java
@@ -53,7 +53,6 @@ import org.apache.isis.viewer.wicket.model.mementos.ObjectAdapterMemento;
 import org.apache.isis.viewer.wicket.model.models.EntityCollectionModel;
 import org.apache.isis.viewer.wicket.ui.components.collectioncontents.ajaxtable.columns.ColumnAbstract;
 import org.apache.isis.viewer.wicket.ui.components.collectioncontents.ajaxtable.columns.ObjectAdapterPropertyColumn;
-import org.apache.isis.viewer.wicket.ui.components.collectioncontents.ajaxtable.columns.ObjectAdapterSelectColumn;
 import org.apache.isis.viewer.wicket.ui.components.collectioncontents.ajaxtable.columns.ObjectAdapterTitleColumn;
 import org.apache.isis.viewer.wicket.ui.components.collectioncontents.ajaxtable.columns.ObjectAdapterToggleboxColumn;
 import org.apache.isis.viewer.wicket.ui.components.widgets.cssmenu.CssMenuBuilder;
@@ -92,7 +91,6 @@ public class CollectionContentsAsAjaxTablePanel extends PanelAbstract<EntityColl
         addToggleboxColumnIfRequired(columns, bulkActions);
         addTitleColumn(columns, model.getParentObjectAdapterMemento());
         addPropertyColumnsIfRequired(columns);
-        addSelectedButtonIfRequired(columns);
 
         final SortableDataProvider<ObjectAdapter,String> dataProvider = new CollectionContentsSortableDataProvider(model);
         dataTable = new MyAjaxFallbackDefaultDataTable<ObjectAdapter,String>(ID_TABLE, columns, dataProvider, model.getPageSize());
@@ -192,9 +190,6 @@ public class CollectionContentsAsAjaxTablePanel extends PanelAbstract<EntityColl
 
     private void addPropertyColumnsIfRequired(final List<IColumn<ObjectAdapter,String>> columns) {
         final ObjectSpecification typeOfSpec = getModel().getTypeOfSpecification();
-        if (getModel().hasSelectionHandler()) {
-            return;
-        }
 
         final ObjectSpecification parentSpecIfAny = 
                 getModel().isParented() 
@@ -235,15 +230,6 @@ public class CollectionContentsAsAjaxTablePanel extends PanelAbstract<EntityColl
         };
     }
 
-    private void addSelectedButtonIfRequired(final List<IColumn<ObjectAdapter,String>> columns) {
-        if (!getModel().hasSelectionHandler()) {
-            return;
-        }
-        final SelectionHandler handler = getModel().getSelectionHandler();
-
-        columns.add(new ObjectAdapterSelectColumn(Model.of(""), handler));
-    }
-
     private ObjectAdapterPropertyColumn createObjectAdapterPropertyColumn(final ObjectAssociation property) {
         return new ObjectAdapterPropertyColumn(Model.of(property.getName()), property.getId(), property.getId());
     }

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/MyAjaxFallbackDefaultDataTable.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/MyAjaxFallbackDefaultDataTable.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/MyAjaxFallbackDefaultDataTable.java
index 9a3b92d..dd11ffe 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/MyAjaxFallbackDefaultDataTable.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/MyAjaxFallbackDefaultDataTable.java
@@ -40,7 +40,7 @@ public class MyAjaxFallbackDefaultDataTable<T, S> extends DataTable<T, S>
         super(id, columns, dataProvider, rowsPerPage);
         setOutputMarkupId(true);
         setVersioned(false);
-        addTopToolbar(new AjaxFallbackHeadersToolbar<S>(this, dataProvider));
+        addTopToolbar(new MyAjaxFallbackHeadersToolbar<S>(this, dataProvider));
         addBottomToolbar(new AjaxNavigationToolbar(this));
         addBottomToolbar(new NoRecordsToolbar(this));
     }

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/MyAjaxFallbackHeadersToolbar.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/MyAjaxFallbackHeadersToolbar.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/MyAjaxFallbackHeadersToolbar.java
new file mode 100644
index 0000000..e14c496
--- /dev/null
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/MyAjaxFallbackHeadersToolbar.java
@@ -0,0 +1,73 @@
+/**
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You under the Apache License, Version 2.0
+ *  (the "License"); you may not use this file except in compliance with
+ *  the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.isis.viewer.wicket.ui.components.collectioncontents.ajaxtable;
+
+import org.apache.wicket.ajax.AjaxRequestTarget;
+import org.apache.wicket.ajax.attributes.IAjaxCallListener;
+import org.apache.wicket.extensions.ajax.markup.html.repeater.data.sort.AjaxFallbackOrderByBorder;
+import org.apache.wicket.extensions.ajax.markup.html.repeater.data.table.AjaxFallbackHeadersToolbar;
+import org.apache.wicket.extensions.markup.html.repeater.data.sort.ISortStateLocator;
+import org.apache.wicket.extensions.markup.html.repeater.data.table.DataTable;
+import org.apache.wicket.markup.html.WebMarkupContainer;
+
+
+/**
+ * Adapted from Wicket's own {@link AjaxFallbackHeadersToolbar}.
+ */
+public class MyAjaxFallbackHeadersToolbar<S> extends MyHeadersToolbar<S>
+{
+    private static final long serialVersionUID = 1L;
+
+    public MyAjaxFallbackHeadersToolbar(final DataTable<?, S> table, final ISortStateLocator<S> stateLocator)
+    {
+        super(table, stateLocator);
+        table.setOutputMarkupId(true);
+    }
+
+    @Override
+    protected WebMarkupContainer newSortableHeader(final String borderId, final S property,
+        final ISortStateLocator<S> locator)
+    {
+        return new AjaxFallbackOrderByBorder<S>(borderId, property, locator, getAjaxCallListener())
+        {
+            private static final long serialVersionUID = 1L;
+
+            @Override
+            protected void onAjaxClick(final AjaxRequestTarget target)
+            {
+                target.add(getTable());
+            }
+
+            @Override
+            protected void onSortChanged()
+            {
+                super.onSortChanged();
+                getTable().setCurrentPage(0);
+            }
+        };
+    }
+
+    /**
+     * Returns a decorator that will be used to decorate ajax links used in sortable headers
+     * 
+     * @return decorator or null for none
+     */
+    protected IAjaxCallListener getAjaxCallListener()
+    {
+        return null;
+    }
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/MyHeadersToolbar.html
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/MyHeadersToolbar.html b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/MyHeadersToolbar.html
new file mode 100644
index 0000000..1a744eb
--- /dev/null
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/MyHeadersToolbar.html
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+        http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
+<wicket:panel xmlns:wicket="http://wicket.apache.org">
+    <tr class="headers">
+        <wicket:container wicket:id="headers">
+            <th wicket:id="header">
+                <!-- 
+                 input type="checkbox" xxxwicket:id="checkbox"/>
+                 -->
+                <span wicket:id="label">[header-label]</span>
+            </th>
+        </wicket:container>
+    </tr>
+</wicket:panel>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/MyHeadersToolbar.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/MyHeadersToolbar.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/MyHeadersToolbar.java
new file mode 100644
index 0000000..40885e7
--- /dev/null
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/MyHeadersToolbar.java
@@ -0,0 +1,183 @@
+/**
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You under the Apache License, Version 2.0
+ *  (the "License"); you may not use this file except in compliance with
+ *  the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.isis.viewer.wicket.ui.components.collectioncontents.ajaxtable;
+
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+
+import org.apache.wicket.Component;
+import org.apache.wicket.behavior.Behavior;
+import org.apache.wicket.extensions.markup.html.repeater.data.sort.ISortStateLocator;
+import org.apache.wicket.extensions.markup.html.repeater.data.sort.OrderByBorder;
+import org.apache.wicket.extensions.markup.html.repeater.data.table.AbstractToolbar;
+import org.apache.wicket.extensions.markup.html.repeater.data.table.DataTable;
+import org.apache.wicket.extensions.markup.html.repeater.data.table.HeadersToolbar;
+import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
+import org.apache.wicket.extensions.markup.html.repeater.data.table.IStyledColumn;
+import org.apache.wicket.markup.ComponentTag;
+import org.apache.wicket.markup.html.WebMarkupContainer;
+import org.apache.wicket.markup.html.basic.Label;
+import org.apache.wicket.markup.html.form.CheckBox;
+import org.apache.wicket.markup.repeater.Item;
+import org.apache.wicket.markup.repeater.RefreshingView;
+import org.apache.wicket.model.IModel;
+import org.apache.wicket.model.Model;
+import org.apache.wicket.util.string.Strings;
+
+import org.apache.isis.viewer.wicket.ui.components.collectioncontents.ajaxtable.columns.ObjectAdapterTitleColumn;
+import org.apache.isis.viewer.wicket.ui.components.collectioncontents.ajaxtable.columns.ObjectAdapterToggleboxColumn;
+
+
+/**
+ * Adapted from Wicket's own {@link HeadersToolbar}.
+ */
+public class MyHeadersToolbar<S> extends AbstractToolbar
+{
+    private static final long serialVersionUID = 1L;
+
+    static abstract class CssAttributeBehavior extends Behavior
+    {
+        private static final long serialVersionUID = 1L;
+
+        protected abstract String getCssClass();
+
+        /**
+         * @see Behavior#onComponentTag(Component, ComponentTag)
+         */
+        @Override
+        public void onComponentTag(final Component component, final ComponentTag tag)
+        {
+            String className = getCssClass();
+            if (!Strings.isEmpty(className))
+            {
+                tag.append("class", className, " ");
+            }
+        }
+    }
+
+    /**
+     * Constructor
+     * 
+     * @param <T>
+     *            the column data type
+     * @param table
+     *            data table this toolbar will be attached to
+     * @param stateLocator
+     *            locator for the ISortState implementation used by sortable headers
+     */
+    public <T> MyHeadersToolbar(final DataTable<T, S> table, final ISortStateLocator<S> stateLocator)
+    {
+        super(table);
+
+        RefreshingView<IColumn<T, S>> headers = new RefreshingView<IColumn<T, S>>("headers")
+        {
+            private static final long serialVersionUID = 1L;
+
+            @Override
+            protected Iterator<IModel<IColumn<T, S>>> getItemModels()
+            {
+                List<IModel<IColumn<T, S>>> columnsModels = new LinkedList<IModel<IColumn<T, S>>>();
+
+                for (IColumn<T, S> column : table.getColumns())
+                {
+                    columnsModels.add(Model.of(column));
+                }
+
+                return columnsModels.iterator();
+            }
+
+            @Override
+            protected void populateItem(Item<IColumn<T, S>> item)
+            {
+                final IColumn<T, S> column = item.getModelObject();
+
+                WebMarkupContainer header = null;
+
+                if (column.isSortable())
+                {
+                    header = newSortableHeader("header", column.getSortProperty(), stateLocator);
+                }
+                else
+                {
+                    header = new WebMarkupContainer("header");
+                }
+
+                if (column instanceof IStyledColumn)
+                {
+                    CssAttributeBehavior cssAttributeBehavior = new CssAttributeBehavior()
+                    {
+                        private static final long serialVersionUID = 1L;
+
+                        @Override
+                        protected String getCssClass()
+                        {
+                            return ((IStyledColumn<?, S>)column).getCssClass();
+                        }
+                    };
+
+                    header.add(cssAttributeBehavior);
+                }
+
+                item.add(header);
+                item.setRenderBodyOnly(true);
+                
+                Component label;
+                //Component checkBox;
+                //if(column instanceof ObjectAdapterToggleboxColumn) {
+                    label = new Label("label");
+                //    checkBox = column.getHeader("checkbox");
+                //    label.setVisible(false);
+                //} else {
+                    label = column.getHeader("label");
+                //    checkBox = new CheckBox("checkbox");
+                //    checkBox.setVisible(false);
+                // }
+                header.add(label);
+                //header.add(checkBox);
+            }
+        };
+        add(headers);
+    }
+
+    /**
+     * Factory method for sortable header components. A sortable header component must have id of
+     * <code>headerId</code> and conform to markup specified in <code>HeadersToolbar.html</code>
+     * 
+     * @param headerId
+     *            header component id
+     * @param property
+     *            property this header represents
+     * @param locator
+     *            sort state locator
+     * @return created header component
+     */
+    protected WebMarkupContainer newSortableHeader(final String headerId, final S property,
+        final ISortStateLocator<S> locator)
+    {
+        return new OrderByBorder<S>(headerId, property, locator)
+        {
+            private static final long serialVersionUID = 1L;
+
+            @Override
+            protected void onSortChanged()
+            {
+                getTable().setCurrentPage(0);
+            }
+        };
+    }
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/ObjectAdapterSelectColumn.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/ObjectAdapterSelectColumn.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/ObjectAdapterSelectColumn.java
deleted file mode 100644
index e9f9be1..0000000
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/ObjectAdapterSelectColumn.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-package org.apache.isis.viewer.wicket.ui.components.collectioncontents.ajaxtable.columns;
-
-import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
-import org.apache.wicket.markup.repeater.Item;
-import org.apache.wicket.model.IModel;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.viewer.wicket.model.common.SelectionHandler;
-import org.apache.isis.viewer.wicket.ui.components.widgets.buttons.ContainedButtonPanel;
-
-public final class ObjectAdapterSelectColumn extends ColumnAbstract<ObjectAdapter> {
-
-    private static final long serialVersionUID = 1L;
-
-    private final SelectionHandler handler;
-
-    public ObjectAdapterSelectColumn(final IModel<String> columnNameModel, final SelectionHandler handler) {
-        super(columnNameModel);
-        this.handler = handler;
-    }
-
-    @Override
-    public void populateItem(final Item<ICellPopulator<ObjectAdapter>> cellItem, final String componentId, final IModel<ObjectAdapter> rowModel) {
-
-        // TODO: i18n
-        cellItem.add(new ContainedButtonPanel(componentId, "select") {
-
-            private static final long serialVersionUID = 1L;
-
-            @Override
-            public void onSubmit() {
-                final IModel<ObjectAdapter> o = rowModel;
-                final ObjectAdapter selectedAdapter = o.getObject();
-                handler.onSelected(this, selectedAdapter);
-            }
-        });
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/ObjectAdapterToggleboxColumn.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/ObjectAdapterToggleboxColumn.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/ObjectAdapterToggleboxColumn.java
index 3f82d33..8ce2cfc 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/ObjectAdapterToggleboxColumn.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/ObjectAdapterToggleboxColumn.java
@@ -19,12 +19,20 @@
 
 package org.apache.isis.viewer.wicket.ui.components.collectioncontents.ajaxtable.columns;
 
+import java.util.List;
+
+import com.google.common.collect.Lists;
+
+import org.apache.wicket.Component;
+import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
 import org.apache.wicket.markup.repeater.Item;
 import org.apache.wicket.model.IModel;
 
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
+import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager.ConcurrencyChecking;
 import org.apache.isis.viewer.wicket.model.common.SelectionHandler;
+import org.apache.isis.viewer.wicket.model.models.EntityModel;
 import org.apache.isis.viewer.wicket.ui.components.widgets.checkbox.ContainedToggleboxPanel;
 
 public final class ObjectAdapterToggleboxColumn extends ColumnAbstract<ObjectAdapter> {
@@ -37,17 +45,38 @@ public final class ObjectAdapterToggleboxColumn extends ColumnAbstract<ObjectAda
         super("");
         this.handler = handler;
     }
+    
+    @Override
+    public Component getHeader(String componentId) {
+        
+        final ContainedToggleboxPanel toggle = new ContainedToggleboxPanel(componentId) {
+            private static final long serialVersionUID = 1L;
+            @Override
+            public void onSubmit(AjaxRequestTarget target) {
+                for (ContainedToggleboxPanel toggle : rowToggles) {
+                    toggle.toggle(target);
+                    target.add(toggle);
+                }
+            }
+        };
+        return toggle; 
+    }
 
+    private final List<ContainedToggleboxPanel> rowToggles = Lists.newArrayList(); 
+            
     @Override
     public void populateItem(final Item<ICellPopulator<ObjectAdapter>> cellItem, final String componentId, final IModel<ObjectAdapter> rowModel) {
-        cellItem.add(new ContainedToggleboxPanel(componentId) {
+        final ContainedToggleboxPanel toggle = new ContainedToggleboxPanel(componentId) {
             private static final long serialVersionUID = 1L;
             @Override
-            public void onSubmit() {
-                final IModel<ObjectAdapter> o = rowModel;
-                final ObjectAdapter selectedAdapter = o.getObject();
+            public void onSubmit(AjaxRequestTarget target) {
+                final EntityModel o = (EntityModel) rowModel;
+                final ObjectAdapter selectedAdapter = o.load(ConcurrencyChecking.NO_CHECK);
                 handler.onSelected(this, selectedAdapter);
             }
-        });
+        };
+        rowToggles.add(toggle);
+        toggle.setOutputMarkupId(true);
+        cellItem.add(toggle);
     }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/icons/CollectionContentsAsIconsPanelFactory.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/icons/CollectionContentsAsIconsPanelFactory.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/icons/CollectionContentsAsIconsPanelFactory.java
index 1bb4d96..3503f32 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/icons/CollectionContentsAsIconsPanelFactory.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/icons/CollectionContentsAsIconsPanelFactory.java
@@ -49,10 +49,6 @@ public class CollectionContentsAsIconsPanelFactory extends ComponentFactoryAbstr
         }
 
         final EntityCollectionModel entityCollectionModel = (EntityCollectionModel) model;
-        if (entityCollectionModel.hasSelectionHandler()) {
-            return ApplicationAdvice.DOES_NOT_APPLY;
-        }
-
         final ObjectSpecification typeOfSpec = entityCollectionModel.getTypeOfSpecification();
         if (typeOfSpec.getFacet(IconFacet.class) == null) {
             return ApplicationAdvice.DOES_NOT_APPLY;

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesPanel.html
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesPanel.html b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesPanel.html
index 107215a..e988bae 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesPanel.html
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesPanel.html
@@ -41,7 +41,7 @@
                         <div id="veil" style="position:fixed;"> 
                             <div class="imgHolder">
                                 <wicket:link>
-                                    <img src="./spinning-icon.gif"/>
+                                    <img src="/images/spinning-icon.gif"/>
                                 </wicket:link>
                             </div>
                         </div>

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/checkbox/ContainedToggleboxPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/checkbox/ContainedToggleboxPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/checkbox/ContainedToggleboxPanel.java
index bdb567f..4d0b4fe 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/checkbox/ContainedToggleboxPanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/checkbox/ContainedToggleboxPanel.java
@@ -28,6 +28,7 @@ import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.markup.html.form.AjaxCheckBox;
 import org.apache.wicket.markup.html.WebMarkupContainer;
 import org.apache.wicket.markup.html.form.Form;
+import org.apache.wicket.model.IModel;
 import org.apache.wicket.model.Model;
 
 import org.apache.isis.viewer.wicket.ui.panels.PanelAbstract;
@@ -59,7 +60,7 @@ public class ContainedToggleboxPanel extends PanelAbstract<Model<Boolean>> {
 
             @Override
             protected void onUpdate(AjaxRequestTarget target) {
-                ContainedToggleboxPanel.this.onSubmit();
+                ContainedToggleboxPanel.this.onSubmit(target);
             }
         };
         form.add(checkbox);
@@ -73,6 +74,15 @@ public class ContainedToggleboxPanel extends PanelAbstract<Model<Boolean>> {
     /**
      * Hook method for (typically anonymous) subclasses to override.
      */
-    public void onSubmit() {
+    public void onSubmit(AjaxRequestTarget target) {
+    }
+
+    /**
+     * Programmatic toggling. 
+     * @param target 
+     */
+    public void toggle(AjaxRequestTarget target) {
+        checkbox.setModelObject(!checkbox.getModelObject());
+        onSubmit(target);
     }
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/example/application/claims/dom/pom.xml
----------------------------------------------------------------------
diff --git a/example/application/claims/dom/pom.xml b/example/application/claims/dom/pom.xml
index 9d18470..49918d8 100644
--- a/example/application/claims/dom/pom.xml
+++ b/example/application/claims/dom/pom.xml
@@ -95,7 +95,7 @@
 			<dependency>
 	            <groupId>org.apache.isis.objectstore</groupId>
 				<artifactId>isis-objectstore-jdo</artifactId>
-				<version>1.1.0-SNAPSHOT</version>
+				<version>1.2.0-SNAPSHOT</version>
 				<type>pom</type>
 				<scope>import</scope>						
 			</dependency>

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/example/application/claims/pom.xml
----------------------------------------------------------------------
diff --git a/example/application/claims/pom.xml b/example/application/claims/pom.xml
index 6babb5e..fa65c2d 100644
--- a/example/application/claims/pom.xml
+++ b/example/application/claims/pom.xml
@@ -26,12 +26,12 @@
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
 
-        <isis.version>1.2.0-SNAPSHOT</isis.version>
+        <isis.version>1.3.0-SNAPSHOT</isis.version>
         <isis-objectstore-xml.version>1.0.0-SNAPSHOT</isis-objectstore-xml.version>
         <isis-profilestore-xml.version>1.0.0-SNAPSHOT</isis-profilestore-xml.version>
-        <isis-security-file.version>1.0.1-SNAPSHOT</isis-security-file.version>
+        <isis-security-file.version>1.0.2-SNAPSHOT</isis-security-file.version>
         <isis-viewer-dnd.version>1.0.0-SNAPSHOT</isis-viewer-dnd.version>
-        <isis-viewer-wicket.version>1.2.0-SNAPSHOT</isis-viewer-wicket.version>
+        <isis-viewer-wicket.version>1.3.0-SNAPSHOT</isis-viewer-wicket.version>
         <isis-viewer-scimpi.version>1.0.0-SNAPSHOT</isis-viewer-scimpi.version>
     </properties>
 

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/example/application/claims/viewer-dnd/ide/eclipse/launch/claims-viewer-dnd.launch
----------------------------------------------------------------------
diff --git a/example/application/claims/viewer-dnd/ide/eclipse/launch/claims-viewer-dnd.launch b/example/application/claims/viewer-dnd/ide/eclipse/launch/claims-viewer-dnd.launch
index c60635b..185395e 100644
--- a/example/application/claims/viewer-dnd/ide/eclipse/launch/claims-viewer-dnd.launch
+++ b/example/application/claims/viewer-dnd/ide/eclipse/launch/claims-viewer-dnd.launch
@@ -13,9 +13,7 @@
 <stringAttribute key="org.eclipse.debug.core.source_locator_id" value="org.eclipse.jdt.launching.sourceLocator.JavaSourceLookupDirector"/>
 <stringAttribute key="org.eclipse.debug.core.source_locator_memento" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#10;&lt;sourceLookupDirector&gt;&#10;&lt;sourceContainers duplicates=&quot;false&quot;&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;applib&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;berkeley-persistor&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;qu
 ot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;bytecode-cglib&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;bytecode-javassist&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;claims-commandline&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;q
 uot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;claims-dom&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;claims-fixture&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;claims-service&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;
 no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;claims-webapp&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;classic-skin&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;commons&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&a
 mp;lt;javaProject name=&amp;quot;core&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;dnd-viewer&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;example-claims&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;exa
 mples&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;headless&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;headless-applib&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;headless-embedded&amp;quot;/&amp;gt;
 &amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;headless-junit&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;headless-viewer&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;hibernate-persistor&amp;quot;/&amp;gt;&amp;#10;&quot; 
 typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;html-viewer&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;http-remoting&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;http-remoting-client&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.ecl
 ipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;http-remoting-server&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;metamodel&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;isis-parent&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourc
 eContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;plugins&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;release&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;remoting&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;
 container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;runtime&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;scimpi&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;scimpi-dispatcher&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?x
 ml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;scimpi-servlet&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;sql&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;sql-integrationtests&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&am
 p;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;sql-persistor&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;trunk&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;webapp&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quo
 t; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;webserver&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;xml-persistor&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;javaProject name=&amp;quot;xstream-marshalling&amp;quot;/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.jdt.launching.sourceContainer.javaProject&quot;/&gt;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot
 ;no&amp;quot;?&amp;gt;&amp;#10;&amp;lt;default/&amp;gt;&amp;#10;&quot; typeId=&quot;org.eclipse.debug.core.containerType.default&quot;/&gt;&#10;&lt;/sourceContainers&gt;&#10;&lt;/sourceLookupDirector&gt;&#10;"/>
 <booleanAttribute key="org.eclipse.jdt.debug.ui.INCLUDE_EXTERNAL_JARS" value="true"/>
-<stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.eclipse.m2e.launchconfig.classpathProvider"/>
 <stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.apache.isis.Isis"/>
 <stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="--type exploration --viewer dnd"/>
 <stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="claims-viewer-dnd"/>
-<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.m2e.launchconfig.sourcepathProvider"/>
 </launchConfiguration>

http://git-wip-us.apache.org/repos/asf/isis/blob/9644f925/example/application/claims/viewer-scimpi/ide/eclipse/launch/claims-viewer-scimpi.launch
----------------------------------------------------------------------
diff --git a/example/application/claims/viewer-scimpi/ide/eclipse/launch/claims-viewer-scimpi.launch b/example/application/claims/viewer-scimpi/ide/eclipse/launch/claims-viewer-scimpi.launch
index 206b682..959db1e 100644
--- a/example/application/claims/viewer-scimpi/ide/eclipse/launch/claims-viewer-scimpi.launch
+++ b/example/application/claims/viewer-scimpi/ide/eclipse/launch/claims-viewer-scimpi.launch
@@ -12,8 +12,6 @@
 </mapAttribute>
 <stringAttribute key="org.eclipse.debug.core.source_locator_id" value="org.eclipse.jdt.launching.sourceLocator.JavaSourceLookupDirector"/>
 <booleanAttribute key="org.eclipse.jdt.debug.ui.INCLUDE_EXTERNAL_JARS" value="true"/>
-<stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.eclipse.m2e.launchconfig.classpathProvider"/>
 <stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.apache.isis.WebServer"/>
 <stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="claims-viewer-scimpi"/>
-<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.m2e.launchconfig.sourcepathProvider"/>
 </launchConfiguration>