diff --git a/tools/package/archetypes/ui/src/main/resources/archetype-resources/src/main/resources/app/view/sampleCustom/sampleCustom.js b/tools/package/archetypes/ui/src/main/resources/archetype-resources/src/main/resources/app/view/sampleCustom/sampleCustom.js
index df5b93a..2105864 100644
--- a/tools/package/archetypes/ui/src/main/resources/archetype-resources/src/main/resources/app/view/sampleCustom/sampleCustom.js
+++ b/tools/package/archetypes/ui/src/main/resources/archetype-resources/src/main/resources/app/view/sampleCustom/sampleCustom.js
@@ -35,35 +35,35 @@
         .controller('OvSampleCustomCtrl',
         ['$log', '$scope', 'WebSocketService', 'KeyService',
 
-            function (_$log_, _$scope_, _wss_, _ks_) {
-                $log = _$log_;
-                $scope = _$scope_;
-                wss = _wss_;
-                ks = _ks_;
+        function (_$log_, _$scope_, _wss_, _ks_) {
+            $log = _$log_;
+            $scope = _$scope_;
+            wss = _wss_;
+            ks = _ks_;
 
-                var handlers = {};
-                $scope.data = {};
+            var handlers = {};
+            $scope.data = {};
 
-                // data response handler
-                handlers[dataResp] = respDataCb;
-                wss.bindHandlers(handlers);
+            // data response handler
+            handlers[dataResp] = respDataCb;
+            wss.bindHandlers(handlers);
 
-                addKeyBindings();
+            addKeyBindings();
 
-                // custom click handler
-                $scope.getData = getData;
+            // custom click handler
+            $scope.getData = getData;
 
-                // get data the first time...
-                getData();
+            // get data the first time...
+            getData();
 
-                // cleanup
-                $scope.$on('$destroy', function () {
-                    wss.unbindHandlers(handlers);
-                    ks.unbindKeys();
-                    $log.log('OvSampleCustomCtrl has been destroyed');
-                });
+            // cleanup
+            $scope.$on('$destroy', function () {
+                wss.unbindHandlers(handlers);
+                ks.unbindKeys();
+                $log.log('OvSampleCustomCtrl has been destroyed');
+            });
 
-                $log.log('OvSampleCustomCtrl has been created');
-            }]);
+            $log.log('OvSampleCustomCtrl has been created');
+        }]);
 
 }());
diff --git a/tools/package/archetypes/uitab/src/main/resources/archetype-resources/src/main/java/AppUiTableMessageHandler.java b/tools/package/archetypes/uitab/src/main/resources/archetype-resources/src/main/java/AppUiTableMessageHandler.java
index 50eb76b..a673f1f 100644
--- a/tools/package/archetypes/uitab/src/main/resources/archetype-resources/src/main/java/AppUiTableMessageHandler.java
+++ b/tools/package/archetypes/uitab/src/main/resources/archetype-resources/src/main/java/AppUiTableMessageHandler.java
@@ -123,8 +123,8 @@
             // fake data for demonstration purposes...
             Item item = getItem(id);
 
-            ObjectNode rootNode = MAPPER.createObjectNode();
-            ObjectNode data = MAPPER.createObjectNode();
+            ObjectNode rootNode = objectNode();
+            ObjectNode data = objectNode();
             rootNode.set(DETAILS, data);
 
             if (item == null) {
diff --git a/tools/package/archetypes/uitab/src/main/resources/archetype-resources/src/main/resources/app/view/sampleTable/sampleTable.css b/tools/package/archetypes/uitab/src/main/resources/archetype-resources/src/main/resources/app/view/sampleTable/sampleTable.css
index 703ac4d..63203e6 100644
--- a/tools/package/archetypes/uitab/src/main/resources/archetype-resources/src/main/resources/app/view/sampleTable/sampleTable.css
+++ b/tools/package/archetypes/uitab/src/main/resources/archetype-resources/src/main/resources/app/view/sampleTable/sampleTable.css
@@ -1,9 +1,13 @@
 /* css for sample app view */
 
-#ov-sample h2 {
+#ov-sample-table h2 {
     display: inline-block;
 }
 
+#ov-sample-table div.ctrl-btns {
+    width: 45px;
+}
+
 /* Panel Styling */
 #ov-sample-table-item-details-panel.floatpanel {
     position: absolute;
