You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2022/08/17 07:20:03 UTC

[isis] branch master updated: ISIS-3123: replace Double and Float showcase with generated files

This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git


The following commit(s) were added to refs/heads/master by this push:
     new 41abdd0d87 ISIS-3123: replace Double and Float showcase with generated files
41abdd0d87 is described below

commit 41abdd0d87844e6bfe6dc3837c2a8a7483f089a8
Author: andi-huber <ah...@apache.org>
AuthorDate: Wed Aug 17 09:19:55 2022 +0200

    ISIS-3123: replace Double and Float showcase with generated files
---
 .../javalang/doubles/WrapperDoubles-common.adoc    |  9 +++--
 .../doubles/WrapperDoubles-description.adoc        | 10 +++---
 .../dom/types/javalang/doubles/WrapperDoubles.java | 15 +++++---
 .../javalang/doubles/WrapperDoubles.layout.xml     |  2 ++
 .../doubles/holder/WrapperDoubleHolder.java        | 17 ++++-----
 .../doubles/holder/WrapperDoubleHolder2.java       | 11 +++---
 .../WrapperDoubleHolder_actionReturning.java       |  4 +--
 ...pperDoubleHolder_actionReturningCollection.java | 20 +++++------
 .../holder/WrapperDoubleHolder_mixinProperty.java  |  4 +--
 ...oubleHolder_updateReadOnlyOptionalProperty.java |  5 +--
 ...WrapperDoubleHolder_updateReadOnlyProperty.java |  5 +--
 ...leHolder_updateReadOnlyPropertyWithChoices.java | 13 +++----
 .../doubles/jdo/WrapperDoubleJdo-description.adoc  |  6 ++--
 .../javalang/doubles/jdo/WrapperDoubleJdo.java     | 13 +++----
 .../doubles/jdo/WrapperDoubleJdoEntities.java      |  5 +--
 .../doubles/jpa/WrapperDoubleJpa-description.adoc  | 15 ++++----
 .../javalang/doubles/jpa/WrapperDoubleJpa.java     | 15 ++++----
 .../doubles/jpa/WrapperDoubleJpaEntities.java      |  5 +--
 .../doubles/persistence/WrapperDoubleEntity.java   |  5 +--
 .../persistence/WrapperDoubleEntity.layout.xml     |  2 ++
 .../doubles/persistence/WrapperDoubleSeeding.java  |  7 ++--
 .../doubles/samples/WrapperDoubleSamples.java      |  9 +++--
 .../doubles/vm/WrapperDoubleVm-description.adoc    |  6 ++--
 .../types/javalang/doubles/vm/WrapperDoubleVm.java | 13 +++----
 .../javalang/doubles/vm/WrapperDoubleVm.layout.xml |  2 ++
 .../javalang/floats/WrapperFloats-common.adoc      |  7 ++--
 .../javalang/floats/WrapperFloats-description.adoc | 10 +++---
 .../dom/types/javalang/floats/WrapperFloats.java   | 15 +++++---
 .../types/javalang/floats/WrapperFloats.layout.xml |  2 ++
 .../javalang/floats/holder/WrapperFloatHolder.java | 17 ++++-----
 .../floats/holder/WrapperFloatHolder2.java         | 11 +++---
 .../holder/WrapperFloatHolder_actionReturning.java |  4 +--
 ...apperFloatHolder_actionReturningCollection.java | 10 +++---
 .../holder/WrapperFloatHolder_mixinProperty.java   |  4 +--
 ...FloatHolder_updateReadOnlyOptionalProperty.java |  5 +--
 .../WrapperFloatHolder_updateReadOnlyProperty.java |  5 +--
 ...atHolder_updateReadOnlyPropertyWithChoices.java | 13 +++----
 .../floats/jdo/WrapperFloatJdo-description.adoc    |  6 ++--
 .../types/javalang/floats/jdo/WrapperFloatJdo.java | 13 +++----
 .../floats/jdo/WrapperFloatJdoEntities.java        |  7 ++--
 .../floats/jpa/WrapperFloatJpa-description.adoc    | 15 ++++----
 .../types/javalang/floats/jpa/WrapperFloatJpa.java | 15 ++++----
 .../floats/jpa/WrapperFloatJpaEntities.java        |  7 ++--
 .../floats/persistence/WrapperFloatEntity.java     |  5 +--
 .../persistence/WrapperFloatEntity.layout.xml      |  2 ++
 .../floats/persistence/WrapperFloatSeeding.java    |  7 ++--
 .../floats/samples/WrapperFloatSamples.java        |  9 +++--
 .../floats/vm/WrapperFloatVm-description.adoc      |  6 ++--
 .../types/javalang/floats/vm/WrapperFloatVm.java   | 13 +++----
 .../javalang/floats/vm/WrapperFloatVm.layout.xml   |  2 ++
 .../value/ValueTypeGenTemplateTest.java            | 42 ++++++++++++++++++++++
 51 files changed, 288 insertions(+), 182 deletions(-)

diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/WrapperDoubles-common.adoc b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/WrapperDoubles-common.adoc
index 9e9977ba2d..1b1323af76 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/WrapperDoubles-common.adoc
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/WrapperDoubles-common.adoc
@@ -1,8 +1,10 @@
 :Notice: 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 ag [...]
 
+// // This file was GENERATED by the showcase generator (tooling). Do NOT edit!
+
 == Mixin actions
 
-A number of mixin actions contribute through the `WrapperDoubleHolder` interface, demonstrate the use of `Double` as a parameter and as a return type.
+A number of mixin actions contribute through the `WrapperDoubleHolder` interface, demonstrate the use of `java.lang.Double` as a parameter and as a return type.
 For example:
 
 * the `updateReadOnlyProperty` action is:
@@ -48,7 +50,7 @@ include::holder/WrapperDoubleHolder_mixinProperty.java[tags=class]
 
 == @PropertyLayout(labelPosition=...)
 
-There is also an extended interface, `WrapperDoubleHolder2`, with default methods demonstrating the use of label positions:
+To demonstrate support for label positions using `@PropertyLayout(labelPosition=...)`, the entity and view model objects both implement the extended `WrapperDoubleHolder2` interface:
 
 [source,java]
 ----
@@ -62,4 +64,5 @@ include::holder/WrapperDoubleHolder2.java[tags=class]
 <.> Position label to the right
 +
 CAUTION: currently not supported
-<.> Hide the label completely.
+<.> Hide the label compleely.
+
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/WrapperDoubles-description.adoc b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/WrapperDoubles-description.adoc
index f2d39ee70f..afd86a0e0c 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/WrapperDoubles-description.adoc
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/WrapperDoubles-description.adoc
@@ -1,11 +1,13 @@
 :Notice: 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 ag [...]
 
-The framework has built-in support for all of the Wrapper data types, including `Double`.
+// // This file was GENERATED by the showcase generator (tooling). Do NOT edit!
+
+The framework has built-in support for the `java.lang.Double` data type.
 
 From here you can:
 
-* navigate to an entity that uses the `Double` datatype
-* open a view model that uses the `Double` datatype
+* navigate to an entity that uses the `java.lang.Double` datatype
+* open a view model that uses the `java.lang.Double` datatype
 
 Some properties on these domain objects are mandatory, some optional.
 
@@ -26,4 +28,4 @@ include::holder/WrapperDoubleHolder.java[tags=class]
 
 The `WrapperDoubleHolder2` interface is used to demonstrate support for label positions using `@PropertyLayout(labelPosition=...)`.
 
-Further details, along with the effect of this annotation, can be seen on the entity and view model object pages.
\ No newline at end of file
+Further details, along with the effect of this annotation, can be seen on the entity and view model object pages.
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/WrapperDoubles.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/WrapperDoubles.java
index 6d41711a6f..6d64a07f66 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/WrapperDoubles.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/WrapperDoubles.java
@@ -41,9 +41,11 @@ import org.apache.isis.applib.annotation.SemanticsOf;
 
 import demoapp.dom._infra.asciidocdesc.HasAsciiDocDescription;
 import demoapp.dom._infra.values.ValueHolderRepository;
+import demoapp.dom.types.Samples;
 import demoapp.dom.types.javalang.doubles.persistence.WrapperDoubleEntity;
 import demoapp.dom.types.javalang.doubles.vm.WrapperDoubleVm;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 @XmlRootElement(name = "Demo")
 @XmlType
 @XmlAccessorType(XmlAccessType.FIELD)
@@ -53,16 +55,16 @@ import demoapp.dom.types.javalang.doubles.vm.WrapperDoubleVm;
 public class WrapperDoubles implements HasAsciiDocDescription {
 
     @ObjectSupport public String title() {
-        return "Double (wrapper) data type";
+        return "java.lang.Double data type";
     }
 
     @Action(semantics = SemanticsOf.SAFE)
     @ActionLayout(promptStyle = PromptStyle.DIALOG_MODAL)
-    public WrapperDoubleVm openViewModel(final Double initialValue) {
+    public WrapperDoubleVm openViewModel(final java.lang.Double initialValue) {
         return new WrapperDoubleVm(initialValue);
     }
-    @MemberSupport public Double default0OpenViewModel() {
-        return 12345678.1234;
+    @MemberSupport public java.lang.Double default0OpenViewModel() {
+        return samples.single();
     }
 
     @Collection
@@ -72,7 +74,10 @@ public class WrapperDoubles implements HasAsciiDocDescription {
 
     @Inject
     @XmlTransient
-    ValueHolderRepository<Double, ? extends WrapperDoubleEntity> entities;
+    ValueHolderRepository<java.lang.Double, ? extends WrapperDoubleEntity> entities;
 
+    @Inject
+    @XmlTransient
+    Samples<java.lang.Double> samples;
 
 }
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/WrapperDoubles.layout.xml b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/WrapperDoubles.layout.xml
index 74e0160a87..247ed17506 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/WrapperDoubles.layout.xml
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/WrapperDoubles.layout.xml
@@ -15,6 +15,8 @@
         xmlns:cpt="http://isis.apache.org/applib/layout/component"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 
+	<!-- This file was GENERATED by the showcase generator (tooling). Do NOT edit! -->
+
 	<bs3:row>
 		<bs3:col span="10" unreferencedActions="true">
 			<cpt:domainObject />
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder.java
index 8ba13b4e56..4778940810 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder.java
@@ -20,21 +20,22 @@ package demoapp.dom.types.javalang.doubles.holder;
 
 import javax.inject.Named;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 @Named("demo.WrapperDoubleHolder")
 //tag::class[]
 public interface WrapperDoubleHolder {
 
-    Double getReadOnlyProperty();
-    void setReadOnlyProperty(Double c);
+    java.lang.Double getReadOnlyProperty();
+    void setReadOnlyProperty(java.lang.Double c);
 
-    Double getReadWriteProperty();
-    void setReadWriteProperty(Double c);
+    java.lang.Double getReadWriteProperty();
+    void setReadWriteProperty(java.lang.Double c);
 
-    Double getReadOnlyOptionalProperty();
-    void setReadOnlyOptionalProperty(Double c);
+    java.lang.Double getReadOnlyOptionalProperty();
+    void setReadOnlyOptionalProperty(java.lang.Double c);
 
-    Double getReadWriteOptionalProperty();
-    void setReadWriteOptionalProperty(Double c);
+    java.lang.Double getReadWriteOptionalProperty();
+    void setReadWriteOptionalProperty(java.lang.Double c);
 
 }
 //end::class[]
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder2.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder2.java
index b18230eb87..a381437a2c 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder2.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder2.java
@@ -23,6 +23,7 @@ import org.apache.isis.applib.annotation.Property;
 import org.apache.isis.applib.annotation.PropertyLayout;
 import org.apache.isis.applib.annotation.Where;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 //tag::class[]
 public interface WrapperDoubleHolder2 extends WrapperDoubleHolder {
 
@@ -32,8 +33,8 @@ public interface WrapperDoubleHolder2 extends WrapperDoubleHolder {
         describedAs =
             "@PropertyLayout(labelPosition=LEFT)",
         hidden = Where.ALL_TABLES,
-        fieldSetId = "label-positions", sequence = "1")  // <.>
-    default Double getReadOnlyPropertyDerivedLabelPositionLeft() {
+        fieldSetId = "label-positions", sequence = "1")     // <.>
+    default java.lang.Double getReadOnlyPropertyDerivedLabelPositionLeft() {
         return getReadOnlyProperty();
     }
 
@@ -44,7 +45,7 @@ public interface WrapperDoubleHolder2 extends WrapperDoubleHolder {
             "@PropertyLayout(labelPosition=TOP)",
         hidden = Where.ALL_TABLES,
         fieldSetId = "label-positions", sequence = "2")
-    default Double getReadOnlyPropertyDerivedLabelPositionTop() {
+    default java.lang.Double getReadOnlyPropertyDerivedLabelPositionTop() {
         return getReadOnlyProperty();
     }
 
@@ -55,7 +56,7 @@ public interface WrapperDoubleHolder2 extends WrapperDoubleHolder {
             "@PropertyLayout(labelPosition=RIGHT)",
         hidden = Where.ALL_TABLES,
         fieldSetId = "label-positions", sequence = "3")
-    default Double getReadOnlyPropertyDerivedLabelPositionRight() {
+    default java.lang.Double getReadOnlyPropertyDerivedLabelPositionRight() {
         return getReadOnlyProperty();
     }
 
@@ -66,7 +67,7 @@ public interface WrapperDoubleHolder2 extends WrapperDoubleHolder {
             "@PropertyLayout(labelPosition=NONE)",
         hidden = Where.ALL_TABLES,
         fieldSetId = "label-positions", sequence = "4")
-    default Double getReadOnlyPropertyDerivedLabelPositionNone() {
+    default java.lang.Double getReadOnlyPropertyDerivedLabelPositionNone() {
         return getReadOnlyProperty();
     }
 
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_actionReturning.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_actionReturning.java
index 862a9f035a..0e4db700f4 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_actionReturning.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_actionReturning.java
@@ -23,7 +23,7 @@ import org.apache.isis.applib.annotation.SemanticsOf;
 
 import lombok.RequiredArgsConstructor;
 
-
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 //tag::class[]
 @Action(semantics = SemanticsOf.SAFE)
 @RequiredArgsConstructor
@@ -31,7 +31,7 @@ public class WrapperDoubleHolder_actionReturning {
 
     private final WrapperDoubleHolder holder;
 
-    public Double act() {
+    public java.lang.Double act() {
         return holder.getReadOnlyProperty();
     }
 
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_actionReturningCollection.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_actionReturningCollection.java
index f4419c57ca..628157b466 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_actionReturningCollection.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_actionReturningCollection.java
@@ -18,20 +18,18 @@
  */
 package demoapp.dom.types.javalang.doubles.holder;
 
-import java.util.ArrayList;
 import java.util.Collection;
+import java.util.stream.Collectors;
 
 import javax.inject.Inject;
 
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.SemanticsOf;
 
-import lombok.RequiredArgsConstructor;
-import lombok.val;
-
 import demoapp.dom.types.Samples;
+import lombok.RequiredArgsConstructor;
 
-
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 //tag::class[]
 @Action(semantics = SemanticsOf.SAFE)
 @RequiredArgsConstructor
@@ -39,15 +37,13 @@ public class WrapperDoubleHolder_actionReturningCollection {
 
     private final WrapperDoubleHolder holder;
 
-    public Collection<Double> act() {
-        final Collection<Double> doubles = new ArrayList<>();
-        val initial = holder.getReadOnlyProperty();
-        samples.stream()
-                .forEach(doubles::add);
-        return doubles;
+    public Collection<java.lang.Double> act() {
+        return samples.stream()
+                .collect(Collectors.toList());
     }
 
     @Inject
-    Samples<Double> samples;
+    Samples<java.lang.Double> samples;
+
 }
 //end::class[]
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_mixinProperty.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_mixinProperty.java
index 1d26a5064e..4c343f8f9d 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_mixinProperty.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_mixinProperty.java
@@ -24,7 +24,7 @@ import org.apache.isis.applib.annotation.Where;
 
 import lombok.RequiredArgsConstructor;
 
-
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 //tag::class[]
 @Property()
 @PropertyLayout(hidden = Where.ALL_TABLES, fieldSetId = "contributed", sequence = "1")
@@ -33,7 +33,7 @@ public class WrapperDoubleHolder_mixinProperty {
 
     private final WrapperDoubleHolder holder;
 
-    public Double prop() {
+    public java.lang.Double prop() {
         return holder.getReadOnlyProperty();
     }
 
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_updateReadOnlyOptionalProperty.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_updateReadOnlyOptionalProperty.java
index 91480109e7..ca21ba50e5 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_updateReadOnlyOptionalProperty.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_updateReadOnlyOptionalProperty.java
@@ -28,6 +28,7 @@ import org.apache.isis.applib.annotation.SemanticsOf;
 
 import lombok.RequiredArgsConstructor;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 //tag::class[]
 @Action(
         semantics = SemanticsOf.IDEMPOTENT
@@ -44,13 +45,13 @@ public class WrapperDoubleHolder_updateReadOnlyOptionalProperty {
 
     @MemberSupport public WrapperDoubleHolder act(
             @Parameter(optionality = Optionality.OPTIONAL)              // <.>
-            final Double newValue
+            final java.lang.Double newValue
     ) {
         holder.setReadOnlyOptionalProperty(newValue);
         return holder;
     }
 
-    @MemberSupport public Double default0Act() {
+    @MemberSupport public java.lang.Double default0Act() {
         return holder.getReadOnlyOptionalProperty();
     }
 
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_updateReadOnlyProperty.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_updateReadOnlyProperty.java
index 33597f1ccc..be0a9822e0 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_updateReadOnlyProperty.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_updateReadOnlyProperty.java
@@ -26,6 +26,7 @@ import org.apache.isis.applib.annotation.SemanticsOf;
 
 import lombok.RequiredArgsConstructor;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 //tag::class[]
 @Action(
         semantics = SemanticsOf.IDEMPOTENT
@@ -40,12 +41,12 @@ public class WrapperDoubleHolder_updateReadOnlyProperty {
 
     private final WrapperDoubleHolder holder;
 
-    @MemberSupport public WrapperDoubleHolder act(final Double newValue) {
+    @MemberSupport public WrapperDoubleHolder act(final java.lang.Double newValue) {
         holder.setReadOnlyProperty(newValue);
         return holder;
     }
 
-    @MemberSupport public Double default0Act() {
+    @MemberSupport public java.lang.Double default0Act() {
         return holder.getReadOnlyProperty();
     }
 
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_updateReadOnlyPropertyWithChoices.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_updateReadOnlyPropertyWithChoices.java
index de76959e55..e3d481a5f2 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_updateReadOnlyPropertyWithChoices.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/holder/WrapperDoubleHolder_updateReadOnlyPropertyWithChoices.java
@@ -29,10 +29,10 @@ import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.PromptStyle;
 import org.apache.isis.applib.annotation.SemanticsOf;
 
-import lombok.RequiredArgsConstructor;
-
 import demoapp.dom.types.Samples;
+import lombok.RequiredArgsConstructor;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 //tag::class[]
 @Action(
         semantics = SemanticsOf.IDEMPOTENT
@@ -47,21 +47,22 @@ public class WrapperDoubleHolder_updateReadOnlyPropertyWithChoices {
 
     private final WrapperDoubleHolder holder;
 
-    @MemberSupport public WrapperDoubleHolder act(final Double newValue) {
+    @MemberSupport public WrapperDoubleHolder act(final java.lang.Double newValue) {
         holder.setReadOnlyProperty(newValue);
         return holder;
     }
 
-    @MemberSupport public Double default0Act() {
+    @MemberSupport public java.lang.Double default0Act() {
         return holder.getReadOnlyProperty();
     }
 
-    @MemberSupport public List<Double> choices0Act() {
+    @MemberSupport public List<java.lang.Double> choices0Act() {
         return samples.stream()
                 .collect(Collectors.toList());
     }
 
     @Inject
-    Samples<Double> samples;
+    Samples<java.lang.Double> samples;
+
 }
 //end::class[]
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jdo/WrapperDoubleJdo-description.adoc b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jdo/WrapperDoubleJdo-description.adoc
index 7cc1363236..f6a2b379e7 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jdo/WrapperDoubleJdo-description.adoc
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jdo/WrapperDoubleJdo-description.adoc
@@ -1,6 +1,8 @@
 :Notice: 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 ag [...]
 
-JDO supports `Double` link:http://www.datanucleus.org:15080/products/accessplatform_5_2/jdo/mapping.html#_primitive_and_java_lang_types[out-of-the-box], so no special annotations are required.
+// // This file was GENERATED by the showcase generator (tooling). Do NOT edit!
+
+JDO supports `java.lang.Double` out-of-the-box, so no special annotations are required. see link:https://www.datanucleus.org/products/accessplatform_6_0/jdo/mapping.html#_primitive_and_java_lang_types[DataNucleus]
 
 [source,java]
 ----
@@ -15,4 +17,4 @@ Apache Isis assumes properties are mandatory, so no additional annotation is req
 <.> optional property as defined to JDO/DataNucleus
 
 
-include::../WrapperDoubles-common.adoc[]
\ No newline at end of file
+include::../WrapperDoubles-common.adoc[]
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jdo/WrapperDoubleJdo.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jdo/WrapperDoubleJdo.java
index 64959109a8..c869fe192d 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jdo/WrapperDoubleJdo.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jdo/WrapperDoubleJdo.java
@@ -39,6 +39,7 @@ import lombok.Setter;
 
 import demoapp.dom.types.javalang.doubles.persistence.WrapperDoubleEntity;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 @Profile("demo-jdo")
 //tag::class[]
 @PersistenceCapable(identityType = IdentityType.DATASTORE, schema = "demo")
@@ -49,35 +50,35 @@ public class WrapperDoubleJdo                                          // <.>
         extends WrapperDoubleEntity {
 
 //end::class[]
-    public WrapperDoubleJdo(final Double initialValue) {
+    public WrapperDoubleJdo(final java.lang.Double initialValue) {
         this.readOnlyProperty = initialValue;
         this.readWriteProperty = initialValue;
     }
 
 //tag::class[]
-    @Title(prepend = "Double (wrapper) JDO entity: ")
+    @Title(prepend = "java.lang.Double JDO entity: ")
     @PropertyLayout(fieldSetId = "read-only-properties", sequence = "1")
     @Column(allowsNull = "false")                                               // <.>
     @Getter @Setter
-    private Double readOnlyProperty;
+    private java.lang.Double readOnlyProperty;
 
     @Property(editing = Editing.ENABLED)                                        // <.>
     @PropertyLayout(fieldSetId = "editable-properties", sequence = "1")
     @Column(allowsNull = "false")
     @Getter @Setter
-    private Double readWriteProperty;
+    private java.lang.Double readWriteProperty;
 
     @Property(optionality = Optionality.OPTIONAL)                               // <.>
     @PropertyLayout(fieldSetId = "optional-properties", sequence = "1")
     @Column(allowsNull = "true")                                                // <.>
     @Getter @Setter
-    private Double readOnlyOptionalProperty;
+    private java.lang.Double readOnlyOptionalProperty;
 
     @Property(editing = Editing.ENABLED, optionality = Optionality.OPTIONAL)
     @PropertyLayout(fieldSetId = "optional-properties", sequence = "2")
     @Column(allowsNull = "true")
     @Getter @Setter
-    private Double readWriteOptionalProperty;
+    private java.lang.Double readWriteOptionalProperty;
 
 }
 //end::class[]
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jdo/WrapperDoubleJdoEntities.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jdo/WrapperDoubleJdoEntities.java
index 6efc180216..6b302f012d 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jdo/WrapperDoubleJdoEntities.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jdo/WrapperDoubleJdoEntities.java
@@ -23,17 +23,18 @@ import org.springframework.stereotype.Service;
 
 import demoapp.dom._infra.values.ValueHolderRepository;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 @Profile("demo-jdo")
 @Service
 public class WrapperDoubleJdoEntities
-extends ValueHolderRepository<Double, WrapperDoubleJdo> {
+extends ValueHolderRepository<java.lang.Double, WrapperDoubleJdo> {
 
     protected WrapperDoubleJdoEntities() {
         super(WrapperDoubleJdo.class);
     }
 
     @Override
-    protected WrapperDoubleJdo newDetachedEntity(Double value) {
+    protected WrapperDoubleJdo newDetachedEntity(java.lang.Double value) {
         return new WrapperDoubleJdo(value);
     }
 
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jpa/WrapperDoubleJpa-description.adoc b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jpa/WrapperDoubleJpa-description.adoc
index a9cc50c20c..dad52b5f19 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jpa/WrapperDoubleJpa-description.adoc
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jpa/WrapperDoubleJpa-description.adoc
@@ -1,23 +1,20 @@
 :Notice: 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 ag [...]
 
-[WARNING]
-==== 
-TODO this yet is just a copy from JDO
-====
+// // This file was GENERATED by the showcase generator (tooling). Do NOT edit!
 
-JDO supports `Double` link:http://www.datanucleus.org:15080/products/accessplatform_5_2/jdo/mapping.html#_primitive_and_java_lang_types[out-of-the-box], so no special annotations are required.
+JDO supports `java.lang.Double` out-of-the-box, so no special annotations are required. see link:https://www.objectdb.com/java/jpa/entity/types#simple_java_data_types[ObjectDB]
 
 [source,java]
 ----
 include::WrapperDoubleJpa.java[tags=class]
 ----
-<.> a no-arg constructor is introduced by JDO enhancer
-<.> required property as defined to JDO/DataNucleus.
+<.> a no-arg constructor for convenience
+<.> required property as defined to JPA.
 +
 Apache Isis assumes properties are mandatory, so no additional annotation is required.
 <.> directly editable property as defined to Apache Isis
 <.> optional property as defined to Apache Isis
-<.> optional property as defined to JDO/DataNucleus
+<.> optional property as defined to JPA
 
 
-include::../WrapperDoubles-common.adoc[]
\ No newline at end of file
+include::../WrapperDoubles-common.adoc[]
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jpa/WrapperDoubleJpa.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jpa/WrapperDoubleJpa.java
index 8c448953a3..bb141d1273 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jpa/WrapperDoubleJpa.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jpa/WrapperDoubleJpa.java
@@ -42,6 +42,7 @@ import lombok.Setter;
 
 import demoapp.dom.types.javalang.doubles.persistence.WrapperDoubleEntity;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 @Profile("demo-jpa")
 //tag::class[]
 @Entity
@@ -52,12 +53,12 @@ import demoapp.dom.types.javalang.doubles.persistence.WrapperDoubleEntity;
 @EntityListeners(IsisEntityListener.class)
 @Named("demo.WrapperDoubleEntity")
 @DomainObject
-@NoArgsConstructor
+@NoArgsConstructor                                                             // <.>
 public class WrapperDoubleJpa
         extends WrapperDoubleEntity {
 
 //end::class[]
-    public WrapperDoubleJpa(final Double initialValue) {
+    public WrapperDoubleJpa(final java.lang.Double initialValue) {
         this.readOnlyProperty = initialValue;
         this.readWriteProperty = initialValue;
     }
@@ -67,29 +68,29 @@ public class WrapperDoubleJpa
     @GeneratedValue
     private Long id;
 
-    @Title(prepend = "Double (wrapper) JPA entity: ")
+    @Title(prepend = "java.lang.Double JPA entity: ")
     @PropertyLayout(fieldSetId = "read-only-properties", sequence = "1")
     @Column(nullable = false)                                                   // <.>
     @Getter @Setter
-    private Double readOnlyProperty;
+    private java.lang.Double readOnlyProperty;
 
     @Property(editing = Editing.ENABLED)                                        // <.>
     @PropertyLayout(fieldSetId = "editable-properties", sequence = "1")
     @Column(nullable = false)
     @Getter @Setter
-    private Double readWriteProperty;
+    private java.lang.Double readWriteProperty;
 
     @Property(optionality = Optionality.OPTIONAL)                               // <.>
     @PropertyLayout(fieldSetId = "optional-properties", sequence = "1")
     @Column(nullable = true)                                                    // <.>
     @Getter @Setter
-    private Double readOnlyOptionalProperty;
+    private java.lang.Double readOnlyOptionalProperty;
 
     @Property(editing = Editing.ENABLED, optionality = Optionality.OPTIONAL)
     @PropertyLayout(fieldSetId = "optional-properties", sequence = "2")
     @Column(nullable = true)
     @Getter @Setter
-    private Double readWriteOptionalProperty;
+    private java.lang.Double readWriteOptionalProperty;
 
 }
 //end::class[]
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jpa/WrapperDoubleJpaEntities.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jpa/WrapperDoubleJpaEntities.java
index f1dba73be1..adab7dc112 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jpa/WrapperDoubleJpaEntities.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/jpa/WrapperDoubleJpaEntities.java
@@ -23,17 +23,18 @@ import org.springframework.stereotype.Service;
 
 import demoapp.dom._infra.values.ValueHolderRepository;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 @Profile("demo-jpa")
 @Service
 public class WrapperDoubleJpaEntities
-extends ValueHolderRepository<Double, WrapperDoubleJpa> {
+extends ValueHolderRepository<java.lang.Double, WrapperDoubleJpa> {
 
     protected WrapperDoubleJpaEntities() {
         super(WrapperDoubleJpa.class);
     }
 
     @Override
-    protected WrapperDoubleJpa newDetachedEntity(Double value) {
+    protected WrapperDoubleJpa newDetachedEntity(java.lang.Double value) {
         return new WrapperDoubleJpa(value);
     }
 
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/persistence/WrapperDoubleEntity.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/persistence/WrapperDoubleEntity.java
index a87fef51b0..256fd3aa04 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/persistence/WrapperDoubleEntity.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/persistence/WrapperDoubleEntity.java
@@ -26,16 +26,17 @@ import demoapp.dom._infra.asciidocdesc.HasAsciiDocDescription;
 import demoapp.dom._infra.values.ValueHolder;
 import demoapp.dom.types.javalang.doubles.holder.WrapperDoubleHolder2;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 @Named("demo.WrapperDoubleEntity") // shared permissions with concrete sub class
 @DomainObject
 public abstract class WrapperDoubleEntity
 implements
     HasAsciiDocDescription,
     WrapperDoubleHolder2,
-    ValueHolder<Double> {
+    ValueHolder<java.lang.Double> {
 
     @Override
-    public Double value() {
+    public java.lang.Double value() {
         return getReadOnlyProperty();
     }
 
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/persistence/WrapperDoubleEntity.layout.xml b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/persistence/WrapperDoubleEntity.layout.xml
index fe9ce77481..c58ffa61a0 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/persistence/WrapperDoubleEntity.layout.xml
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/persistence/WrapperDoubleEntity.layout.xml
@@ -15,6 +15,8 @@
         xmlns:cpt="http://isis.apache.org/applib/layout/component"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 
+	<!-- This file was GENERATED by the showcase generator (tooling). Do NOT edit! -->
+
 	<bs3:row>
 		<bs3:col span="10" unreferencedActions="true">
 			<cpt:domainObject />
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/persistence/WrapperDoubleSeeding.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/persistence/WrapperDoubleSeeding.java
index 4734d9301f..e829ef9d16 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/persistence/WrapperDoubleSeeding.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/persistence/WrapperDoubleSeeding.java
@@ -25,11 +25,14 @@ import org.springframework.stereotype.Service;
 import demoapp.dom._infra.seed.SeedServiceAbstract;
 import demoapp.dom._infra.values.ValueHolderRepository;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 @Service
-public class WrapperDoubleSeeding extends SeedServiceAbstract {
+public class WrapperDoubleSeeding
+extends SeedServiceAbstract {
 
     @Inject
-    public WrapperDoubleSeeding(ValueHolderRepository<Double, ? extends WrapperDoubleEntity> entities) {
+    public WrapperDoubleSeeding(ValueHolderRepository<java.lang.Double, ? extends WrapperDoubleEntity> entities) {
         super(entities);
     }
+
 }
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/samples/WrapperDoubleSamples.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/samples/WrapperDoubleSamples.java
index ebfe09d280..d4031bde30 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/samples/WrapperDoubleSamples.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/samples/WrapperDoubleSamples.java
@@ -24,12 +24,15 @@ import org.springframework.stereotype.Service;
 
 import demoapp.dom.types.Samples;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 @Service
-public class WrapperDoubleSamples implements Samples<Double> {
+public class WrapperDoubleSamples implements Samples<java.lang.Double> {
 
     @Override
-    public Stream<Double> stream() {
-        return Stream.of(1.1, 2.2, 3.3, 4.0, -9.9, -8.8, 123.4567, 762.1234, 9.00, -12.1314);
+    public Stream<java.lang.Double> stream() {
+        return new org.apache.isis.core.metamodel.valuesemantics.DoubleValueSemantics()
+                .getExamples()
+                .stream();
     }
 
 }
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/vm/WrapperDoubleVm-description.adoc b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/vm/WrapperDoubleVm-description.adoc
index 550f885862..0f79d977ca 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/vm/WrapperDoubleVm-description.adoc
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/vm/WrapperDoubleVm-description.adoc
@@ -1,6 +1,8 @@
 :Notice: 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 ag [...]
 
-JAXB supports `Double` link:https://docs.oracle.com/cd/E12840_01/wls/docs103/webserv/data_types.html#wp223908[out-of-the-box], so no special annotations are required.
+// // This file was GENERATED by the showcase generator (tooling). Do NOT edit!
+
+JAXB supports `java.lang.Double` out-of-the-box, so no special annotations are required. see link:https://docs.oracle.com/cd/E12840_01/wls/docs103/webserv/data_types.html#wp223908[Oracle]
 
 [source,java]
 ----
@@ -14,4 +16,4 @@ include::WrapperDoubleVm.java[tags=class]
 This is the default for JAXB so no additional annotation required.
 
 
-include::../WrapperDoubles-common.adoc[]
\ No newline at end of file
+include::../WrapperDoubles-common.adoc[]
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/vm/WrapperDoubleVm.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/vm/WrapperDoubleVm.java
index 04f283d7dd..d98264cea9 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/vm/WrapperDoubleVm.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/vm/WrapperDoubleVm.java
@@ -39,6 +39,7 @@ import lombok.Setter;
 import demoapp.dom._infra.asciidocdesc.HasAsciiDocDescription;
 import demoapp.dom.types.javalang.doubles.holder.WrapperDoubleHolder2;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 //tag::class[]
 @XmlRootElement(name = "root")
 @XmlType
@@ -51,33 +52,33 @@ public class WrapperDoubleVm
         implements HasAsciiDocDescription, WrapperDoubleHolder2 {
 
 //end::class[]
-    public WrapperDoubleVm(final Double initialValue) {
+    public WrapperDoubleVm(final java.lang.Double initialValue) {
         this.readOnlyProperty = initialValue;
         this.readWriteProperty = initialValue;
     }
 
 //tag::class[]
-    @Title(prepend = "Double (wrapper) view model: ")
+    @Title(prepend = "java.lang.Double view model: ")
     @PropertyLayout(fieldSetId = "read-only-properties", sequence = "1")
     @XmlElement(required = true)                                                // <.>
     @Getter @Setter
-    private Double readOnlyProperty;
+    private java.lang.Double readOnlyProperty;
 
     @Property(editing = Editing.ENABLED)                                        // <.>
     @PropertyLayout(fieldSetId = "editable-properties", sequence = "1")
     @XmlElement(required = true)
     @Getter @Setter
-    private Double readWriteProperty;
+    private java.lang.Double readWriteProperty;
 
     @Property(optionality = Optionality.OPTIONAL)                               // <.>
     @PropertyLayout(fieldSetId = "optional-properties", sequence = "1")
     @Getter @Setter
-    private Double readOnlyOptionalProperty;
+    private java.lang.Double readOnlyOptionalProperty;
 
     @Property(editing = Editing.ENABLED, optionality = Optionality.OPTIONAL)
     @PropertyLayout(fieldSetId = "optional-properties", sequence = "2")
     @Getter @Setter
-    private Double readWriteOptionalProperty;
+    private java.lang.Double readWriteOptionalProperty;
 
 }
 //end::class[]
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/vm/WrapperDoubleVm.layout.xml b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/vm/WrapperDoubleVm.layout.xml
index fe9ce77481..c58ffa61a0 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/vm/WrapperDoubleVm.layout.xml
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/doubles/vm/WrapperDoubleVm.layout.xml
@@ -15,6 +15,8 @@
         xmlns:cpt="http://isis.apache.org/applib/layout/component"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 
+	<!-- This file was GENERATED by the showcase generator (tooling). Do NOT edit! -->
+
 	<bs3:row>
 		<bs3:col span="10" unreferencedActions="true">
 			<cpt:domainObject />
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/WrapperFloats-common.adoc b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/WrapperFloats-common.adoc
index e67887b0cb..d1b738f478 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/WrapperFloats-common.adoc
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/WrapperFloats-common.adoc
@@ -1,8 +1,10 @@
 :Notice: 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 ag [...]
 
+// // This file was GENERATED by the showcase generator (tooling). Do NOT edit!
+
 == Mixin actions
 
-A number of mixin actions contribute through the `WrapperFloatHolder` interface, demonstrate the use of `Float` as a parameter and as a return type.
+A number of mixin actions contribute through the `WrapperFloatHolder` interface, demonstrate the use of `java.lang.Float` as a parameter and as a return type.
 For example:
 
 * the `updateReadOnlyProperty` action is:
@@ -48,7 +50,7 @@ include::holder/WrapperFloatHolder_mixinProperty.java[tags=class]
 
 == @PropertyLayout(labelPosition=...)
 
-There is also an extended interface, `WrapperFloatHolder2`, with default methods demonstrating the use of label positions:
+To demonstrate support for label positions using `@PropertyLayout(labelPosition=...)`, the entity and view model objects both implement the extended `WrapperFloatHolder2` interface:
 
 [source,java]
 ----
@@ -63,3 +65,4 @@ include::holder/WrapperFloatHolder2.java[tags=class]
 +
 CAUTION: currently not supported
 <.> Hide the label compleely.
+
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/WrapperFloats-description.adoc b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/WrapperFloats-description.adoc
index 131d4abed3..4febc8cbcb 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/WrapperFloats-description.adoc
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/WrapperFloats-description.adoc
@@ -1,11 +1,13 @@
 :Notice: 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 ag [...]
 
-The framework has built-in support for all of the Wrapper data types, including `Float`.
+// // This file was GENERATED by the showcase generator (tooling). Do NOT edit!
+
+The framework has built-in support for the `java.lang.Float` data type.
 
 From here you can:
 
-* navigate to an entity that uses the `Float` datatype
-* open a view model that uses the `Float` datatype
+* navigate to an entity that uses the `java.lang.Float` datatype
+* open a view model that uses the `java.lang.Float` datatype
 
 Some properties on these domain objects are mandatory, some optional.
 
@@ -26,4 +28,4 @@ include::holder/WrapperFloatHolder.java[tags=class]
 
 The `WrapperFloatHolder2` interface is used to demonstrate support for label positions using `@PropertyLayout(labelPosition=...)`.
 
-Further details, along with the effect of this annotation, can be seen on the entity and view model object pages.
\ No newline at end of file
+Further details, along with the effect of this annotation, can be seen on the entity and view model object pages.
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/WrapperFloats.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/WrapperFloats.java
index f9cf165839..ce4efce185 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/WrapperFloats.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/WrapperFloats.java
@@ -41,9 +41,11 @@ import org.apache.isis.applib.annotation.SemanticsOf;
 
 import demoapp.dom._infra.asciidocdesc.HasAsciiDocDescription;
 import demoapp.dom._infra.values.ValueHolderRepository;
+import demoapp.dom.types.Samples;
 import demoapp.dom.types.javalang.floats.persistence.WrapperFloatEntity;
 import demoapp.dom.types.javalang.floats.vm.WrapperFloatVm;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 @XmlRootElement(name = "Demo")
 @XmlType
 @XmlAccessorType(XmlAccessType.FIELD)
@@ -53,16 +55,16 @@ import demoapp.dom.types.javalang.floats.vm.WrapperFloatVm;
 public class WrapperFloats implements HasAsciiDocDescription {
 
     @ObjectSupport public String title() {
-        return "Float (wrapper) data type";
+        return "java.lang.Float data type";
     }
 
     @Action(semantics = SemanticsOf.SAFE)
     @ActionLayout(promptStyle = PromptStyle.DIALOG_MODAL)
-    public WrapperFloatVm openViewModel(final Float initialValue) {
+    public WrapperFloatVm openViewModel(final java.lang.Float initialValue) {
         return new WrapperFloatVm(initialValue);
     }
-    @MemberSupport public Float default0OpenViewModel() {
-        return 1234.1234f;
+    @MemberSupport public java.lang.Float default0OpenViewModel() {
+        return samples.single();
     }
 
     @Collection
@@ -72,7 +74,10 @@ public class WrapperFloats implements HasAsciiDocDescription {
 
     @Inject
     @XmlTransient
-    ValueHolderRepository<Float, ? extends WrapperFloatEntity> entities;
+    ValueHolderRepository<java.lang.Float, ? extends WrapperFloatEntity> entities;
 
+    @Inject
+    @XmlTransient
+    Samples<java.lang.Float> samples;
 
 }
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/WrapperFloats.layout.xml b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/WrapperFloats.layout.xml
index 74e0160a87..247ed17506 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/WrapperFloats.layout.xml
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/WrapperFloats.layout.xml
@@ -15,6 +15,8 @@
         xmlns:cpt="http://isis.apache.org/applib/layout/component"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 
+	<!-- This file was GENERATED by the showcase generator (tooling). Do NOT edit! -->
+
 	<bs3:row>
 		<bs3:col span="10" unreferencedActions="true">
 			<cpt:domainObject />
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder.java
index 14f1c1979a..736d88b5f7 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder.java
@@ -20,21 +20,22 @@ package demoapp.dom.types.javalang.floats.holder;
 
 import javax.inject.Named;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 @Named("demo.WrapperFloatHolder")
 //tag::class[]
 public interface WrapperFloatHolder {
 
-    Float getReadOnlyProperty();
-    void setReadOnlyProperty(Float c);
+    java.lang.Float getReadOnlyProperty();
+    void setReadOnlyProperty(java.lang.Float c);
 
-    Float getReadWriteProperty();
-    void setReadWriteProperty(Float c);
+    java.lang.Float getReadWriteProperty();
+    void setReadWriteProperty(java.lang.Float c);
 
-    Float getReadOnlyOptionalProperty();
-    void setReadOnlyOptionalProperty(Float c);
+    java.lang.Float getReadOnlyOptionalProperty();
+    void setReadOnlyOptionalProperty(java.lang.Float c);
 
-    Float getReadWriteOptionalProperty();
-    void setReadWriteOptionalProperty(Float c);
+    java.lang.Float getReadWriteOptionalProperty();
+    void setReadWriteOptionalProperty(java.lang.Float c);
 
 }
 //end::class[]
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder2.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder2.java
index 1bcc2b6737..1f4d35e2c3 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder2.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder2.java
@@ -23,6 +23,7 @@ import org.apache.isis.applib.annotation.Property;
 import org.apache.isis.applib.annotation.PropertyLayout;
 import org.apache.isis.applib.annotation.Where;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 //tag::class[]
 public interface WrapperFloatHolder2 extends WrapperFloatHolder {
 
@@ -32,8 +33,8 @@ public interface WrapperFloatHolder2 extends WrapperFloatHolder {
         describedAs =
             "@PropertyLayout(labelPosition=LEFT)",
         hidden = Where.ALL_TABLES,
-        fieldSetId = "label-positions", sequence = "1")  // <.>
-    default Float getReadOnlyPropertyDerivedLabelPositionLeft() {
+        fieldSetId = "label-positions", sequence = "1")     // <.>
+    default java.lang.Float getReadOnlyPropertyDerivedLabelPositionLeft() {
         return getReadOnlyProperty();
     }
 
@@ -44,7 +45,7 @@ public interface WrapperFloatHolder2 extends WrapperFloatHolder {
             "@PropertyLayout(labelPosition=TOP)",
         hidden = Where.ALL_TABLES,
         fieldSetId = "label-positions", sequence = "2")
-    default Float getReadOnlyPropertyDerivedLabelPositionTop() {
+    default java.lang.Float getReadOnlyPropertyDerivedLabelPositionTop() {
         return getReadOnlyProperty();
     }
 
@@ -55,7 +56,7 @@ public interface WrapperFloatHolder2 extends WrapperFloatHolder {
             "@PropertyLayout(labelPosition=RIGHT)",
         hidden = Where.ALL_TABLES,
         fieldSetId = "label-positions", sequence = "3")
-    default Float getReadOnlyPropertyDerivedLabelPositionRight() {
+    default java.lang.Float getReadOnlyPropertyDerivedLabelPositionRight() {
         return getReadOnlyProperty();
     }
 
@@ -66,7 +67,7 @@ public interface WrapperFloatHolder2 extends WrapperFloatHolder {
             "@PropertyLayout(labelPosition=NONE)",
         hidden = Where.ALL_TABLES,
         fieldSetId = "label-positions", sequence = "4")
-    default Float getReadOnlyPropertyDerivedLabelPositionNone() {
+    default java.lang.Float getReadOnlyPropertyDerivedLabelPositionNone() {
         return getReadOnlyProperty();
     }
 
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_actionReturning.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_actionReturning.java
index 3810910809..d5539627c5 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_actionReturning.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_actionReturning.java
@@ -23,7 +23,7 @@ import org.apache.isis.applib.annotation.SemanticsOf;
 
 import lombok.RequiredArgsConstructor;
 
-
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 //tag::class[]
 @Action(semantics = SemanticsOf.SAFE)
 @RequiredArgsConstructor
@@ -31,7 +31,7 @@ public class WrapperFloatHolder_actionReturning {
 
     private final WrapperFloatHolder holder;
 
-    public Float act() {
+    public java.lang.Float act() {
         return holder.getReadOnlyProperty();
     }
 
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_actionReturningCollection.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_actionReturningCollection.java
index 6df975ff4c..199ea54d92 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_actionReturningCollection.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_actionReturningCollection.java
@@ -26,11 +26,10 @@ import javax.inject.Inject;
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.SemanticsOf;
 
-import lombok.RequiredArgsConstructor;
-
 import demoapp.dom.types.Samples;
+import lombok.RequiredArgsConstructor;
 
-
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 //tag::class[]
 @Action(semantics = SemanticsOf.SAFE)
 @RequiredArgsConstructor
@@ -38,12 +37,13 @@ public class WrapperFloatHolder_actionReturningCollection {
 
     private final WrapperFloatHolder holder;
 
-    public Collection<Float> act() {
+    public Collection<java.lang.Float> act() {
         return samples.stream()
                 .collect(Collectors.toList());
     }
 
     @Inject
-    Samples<Float> samples;
+    Samples<java.lang.Float> samples;
+
 }
 //end::class[]
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_mixinProperty.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_mixinProperty.java
index 7a3bf85464..1368081591 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_mixinProperty.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_mixinProperty.java
@@ -24,7 +24,7 @@ import org.apache.isis.applib.annotation.Where;
 
 import lombok.RequiredArgsConstructor;
 
-
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 //tag::class[]
 @Property()
 @PropertyLayout(hidden = Where.ALL_TABLES, fieldSetId = "contributed", sequence = "1")
@@ -33,7 +33,7 @@ public class WrapperFloatHolder_mixinProperty {
 
     private final WrapperFloatHolder holder;
 
-    public Float prop() {
+    public java.lang.Float prop() {
         return holder.getReadOnlyProperty();
     }
 
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_updateReadOnlyOptionalProperty.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_updateReadOnlyOptionalProperty.java
index 37fdf95a0e..2c0575871a 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_updateReadOnlyOptionalProperty.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_updateReadOnlyOptionalProperty.java
@@ -28,6 +28,7 @@ import org.apache.isis.applib.annotation.SemanticsOf;
 
 import lombok.RequiredArgsConstructor;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 //tag::class[]
 @Action(
         semantics = SemanticsOf.IDEMPOTENT
@@ -44,13 +45,13 @@ public class WrapperFloatHolder_updateReadOnlyOptionalProperty {
 
     @MemberSupport public WrapperFloatHolder act(
             @Parameter(optionality = Optionality.OPTIONAL)              // <.>
-            final Float newValue
+            final java.lang.Float newValue
     ) {
         holder.setReadOnlyOptionalProperty(newValue);
         return holder;
     }
 
-    @MemberSupport public Float default0Act() {
+    @MemberSupport public java.lang.Float default0Act() {
         return holder.getReadOnlyOptionalProperty();
     }
 
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_updateReadOnlyProperty.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_updateReadOnlyProperty.java
index 0ba1c38175..5f5d9a57fa 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_updateReadOnlyProperty.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_updateReadOnlyProperty.java
@@ -26,6 +26,7 @@ import org.apache.isis.applib.annotation.SemanticsOf;
 
 import lombok.RequiredArgsConstructor;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 //tag::class[]
 @Action(
         semantics = SemanticsOf.IDEMPOTENT
@@ -40,12 +41,12 @@ public class WrapperFloatHolder_updateReadOnlyProperty {
 
     private final WrapperFloatHolder holder;
 
-    @MemberSupport public WrapperFloatHolder act(final Float newValue) {
+    @MemberSupport public WrapperFloatHolder act(final java.lang.Float newValue) {
         holder.setReadOnlyProperty(newValue);
         return holder;
     }
 
-    @MemberSupport public Float default0Act() {
+    @MemberSupport public java.lang.Float default0Act() {
         return holder.getReadOnlyProperty();
     }
 
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_updateReadOnlyPropertyWithChoices.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_updateReadOnlyPropertyWithChoices.java
index 9a69c8a4dd..3491744207 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_updateReadOnlyPropertyWithChoices.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/holder/WrapperFloatHolder_updateReadOnlyPropertyWithChoices.java
@@ -29,10 +29,10 @@ import org.apache.isis.applib.annotation.MemberSupport;
 import org.apache.isis.applib.annotation.PromptStyle;
 import org.apache.isis.applib.annotation.SemanticsOf;
 
-import lombok.RequiredArgsConstructor;
-
 import demoapp.dom.types.Samples;
+import lombok.RequiredArgsConstructor;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 //tag::class[]
 @Action(
         semantics = SemanticsOf.IDEMPOTENT
@@ -47,21 +47,22 @@ public class WrapperFloatHolder_updateReadOnlyPropertyWithChoices {
 
     private final WrapperFloatHolder holder;
 
-    @MemberSupport public WrapperFloatHolder act(final Float newValue) {
+    @MemberSupport public WrapperFloatHolder act(final java.lang.Float newValue) {
         holder.setReadOnlyProperty(newValue);
         return holder;
     }
 
-    @MemberSupport public Float default0Act() {
+    @MemberSupport public java.lang.Float default0Act() {
         return holder.getReadOnlyProperty();
     }
 
-    @MemberSupport public List<Float> choices0Act() {
+    @MemberSupport public List<java.lang.Float> choices0Act() {
         return samples.stream()
                 .collect(Collectors.toList());
     }
 
     @Inject
-    Samples<Float> samples;
+    Samples<java.lang.Float> samples;
+
 }
 //end::class[]
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jdo/WrapperFloatJdo-description.adoc b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jdo/WrapperFloatJdo-description.adoc
index 3dde9069c5..9a2c4b3da4 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jdo/WrapperFloatJdo-description.adoc
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jdo/WrapperFloatJdo-description.adoc
@@ -1,6 +1,8 @@
 :Notice: 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 ag [...]
 
-JDO supports `Float` link:http://www.datanucleus.org:15080/products/accessplatform_5_2/jdo/mapping.html#_primitive_and_java_lang_types[out-of-the-box], so no special annotations are required.
+// // This file was GENERATED by the showcase generator (tooling). Do NOT edit!
+
+JDO supports `java.lang.Float` out-of-the-box, so no special annotations are required. see link:https://www.datanucleus.org/products/accessplatform_6_0/jdo/mapping.html#_primitive_and_java_lang_types[DataNucleus]
 
 [source,java]
 ----
@@ -15,4 +17,4 @@ Apache Isis assumes properties are mandatory, so no additional annotation is req
 <.> optional property as defined to JDO/DataNucleus
 
 
-include::../WrapperFloats-common.adoc[]
\ No newline at end of file
+include::../WrapperFloats-common.adoc[]
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jdo/WrapperFloatJdo.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jdo/WrapperFloatJdo.java
index 8997126b2e..149dcd351e 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jdo/WrapperFloatJdo.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jdo/WrapperFloatJdo.java
@@ -39,6 +39,7 @@ import lombok.Setter;
 
 import demoapp.dom.types.javalang.floats.persistence.WrapperFloatEntity;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 @Profile("demo-jdo")
 //tag::class[]
 @PersistenceCapable(identityType = IdentityType.DATASTORE, schema = "demo")
@@ -49,35 +50,35 @@ public class WrapperFloatJdo                                          // <.>
         extends WrapperFloatEntity {
 
 //end::class[]
-    public WrapperFloatJdo(final Float initialValue) {
+    public WrapperFloatJdo(final java.lang.Float initialValue) {
         this.readOnlyProperty = initialValue;
         this.readWriteProperty = initialValue;
     }
 
 //tag::class[]
-    @Title(prepend = "Float (wrapper) JDO entity: ")
+    @Title(prepend = "java.lang.Float JDO entity: ")
     @PropertyLayout(fieldSetId = "read-only-properties", sequence = "1")
     @Column(allowsNull = "false")                                               // <.>
     @Getter @Setter
-    private Float readOnlyProperty;
+    private java.lang.Float readOnlyProperty;
 
     @Property(editing = Editing.ENABLED)                                        // <.>
     @PropertyLayout(fieldSetId = "editable-properties", sequence = "1")
     @Column(allowsNull = "false")
     @Getter @Setter
-    private Float readWriteProperty;
+    private java.lang.Float readWriteProperty;
 
     @Property(optionality = Optionality.OPTIONAL)                               // <.>
     @PropertyLayout(fieldSetId = "optional-properties", sequence = "1")
     @Column(allowsNull = "true")                                                // <.>
     @Getter @Setter
-    private Float readOnlyOptionalProperty;
+    private java.lang.Float readOnlyOptionalProperty;
 
     @Property(editing = Editing.ENABLED, optionality = Optionality.OPTIONAL)
     @PropertyLayout(fieldSetId = "optional-properties", sequence = "2")
     @Column(allowsNull = "true")
     @Getter @Setter
-    private Float readWriteOptionalProperty;
+    private java.lang.Float readWriteOptionalProperty;
 
 }
 //end::class[]
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jdo/WrapperFloatJdoEntities.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jdo/WrapperFloatJdoEntities.java
index 5d09930012..b3d8f2784d 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jdo/WrapperFloatJdoEntities.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jdo/WrapperFloatJdoEntities.java
@@ -23,18 +23,19 @@ import org.springframework.stereotype.Service;
 
 import demoapp.dom._infra.values.ValueHolderRepository;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 @Profile("demo-jdo")
 @Service
 public class WrapperFloatJdoEntities
-extends ValueHolderRepository<Float, WrapperFloatJdo> {
+extends ValueHolderRepository<java.lang.Float, WrapperFloatJdo> {
 
     protected WrapperFloatJdoEntities() {
         super(WrapperFloatJdo.class);
     }
 
     @Override
-    protected WrapperFloatJdo newDetachedEntity(Float value) {
+    protected WrapperFloatJdo newDetachedEntity(java.lang.Float value) {
         return new WrapperFloatJdo(value);
     }
 
-}
\ No newline at end of file
+}
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jpa/WrapperFloatJpa-description.adoc b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jpa/WrapperFloatJpa-description.adoc
index 0ecbb897af..ad2dd1bb0f 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jpa/WrapperFloatJpa-description.adoc
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jpa/WrapperFloatJpa-description.adoc
@@ -1,23 +1,20 @@
 :Notice: 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 ag [...]
 
-[WARNING]
-==== 
-TODO this yet is just a copy from JDO
-====
+// // This file was GENERATED by the showcase generator (tooling). Do NOT edit!
 
-JDO supports `Float` link:http://www.datanucleus.org:15080/products/accessplatform_5_2/jdo/mapping.html#_primitive_and_java_lang_types[out-of-the-box], so no special annotations are required.
+JDO supports `java.lang.Float` out-of-the-box, so no special annotations are required. see link:https://www.objectdb.com/java/jpa/entity/types#simple_java_data_types[ObjectDB]
 
 [source,java]
 ----
 include::WrapperFloatJpa.java[tags=class]
 ----
-<.> a no-arg constructor is introduced by JDO enhancer
-<.> required property as defined to JDO/DataNucleus.
+<.> a no-arg constructor for convenience
+<.> required property as defined to JPA.
 +
 Apache Isis assumes properties are mandatory, so no additional annotation is required.
 <.> directly editable property as defined to Apache Isis
 <.> optional property as defined to Apache Isis
-<.> optional property as defined to JDO/DataNucleus
+<.> optional property as defined to JPA
 
 
-include::../WrapperFloats-common.adoc[]
\ No newline at end of file
+include::../WrapperFloats-common.adoc[]
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jpa/WrapperFloatJpa.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jpa/WrapperFloatJpa.java
index 088f6db777..f1fbf00b14 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jpa/WrapperFloatJpa.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jpa/WrapperFloatJpa.java
@@ -42,6 +42,7 @@ import lombok.Setter;
 
 import demoapp.dom.types.javalang.floats.persistence.WrapperFloatEntity;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 @Profile("demo-jpa")
 //tag::class[]
 @Entity
@@ -52,12 +53,12 @@ import demoapp.dom.types.javalang.floats.persistence.WrapperFloatEntity;
 @EntityListeners(IsisEntityListener.class)
 @Named("demo.WrapperFloatEntity")
 @DomainObject
-@NoArgsConstructor
+@NoArgsConstructor                                                             // <.>
 public class WrapperFloatJpa
         extends WrapperFloatEntity {
 
 //end::class[]
-    public WrapperFloatJpa(final Float initialValue) {
+    public WrapperFloatJpa(final java.lang.Float initialValue) {
         this.readOnlyProperty = initialValue;
         this.readWriteProperty = initialValue;
     }
@@ -67,29 +68,29 @@ public class WrapperFloatJpa
     @GeneratedValue
     private Long id;
 
-    @Title(prepend = "Float (wrapper) JPA entity: ")
+    @Title(prepend = "java.lang.Float JPA entity: ")
     @PropertyLayout(fieldSetId = "read-only-properties", sequence = "1")
     @Column(nullable = false)                                                   // <.>
     @Getter @Setter
-    private Float readOnlyProperty;
+    private java.lang.Float readOnlyProperty;
 
     @Property(editing = Editing.ENABLED)                                        // <.>
     @PropertyLayout(fieldSetId = "editable-properties", sequence = "1")
     @Column(nullable = false)
     @Getter @Setter
-    private Float readWriteProperty;
+    private java.lang.Float readWriteProperty;
 
     @Property(optionality = Optionality.OPTIONAL)                               // <.>
     @PropertyLayout(fieldSetId = "optional-properties", sequence = "1")
     @Column(nullable = true)                                                    // <.>
     @Getter @Setter
-    private Float readOnlyOptionalProperty;
+    private java.lang.Float readOnlyOptionalProperty;
 
     @Property(editing = Editing.ENABLED, optionality = Optionality.OPTIONAL)
     @PropertyLayout(fieldSetId = "optional-properties", sequence = "2")
     @Column(nullable = true)
     @Getter @Setter
-    private Float readWriteOptionalProperty;
+    private java.lang.Float readWriteOptionalProperty;
 
 }
 //end::class[]
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jpa/WrapperFloatJpaEntities.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jpa/WrapperFloatJpaEntities.java
index 2d4f786320..7a037c744b 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jpa/WrapperFloatJpaEntities.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/jpa/WrapperFloatJpaEntities.java
@@ -23,18 +23,19 @@ import org.springframework.stereotype.Service;
 
 import demoapp.dom._infra.values.ValueHolderRepository;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 @Profile("demo-jpa")
 @Service
 public class WrapperFloatJpaEntities
-extends ValueHolderRepository<Float, WrapperFloatJpa> {
+extends ValueHolderRepository<java.lang.Float, WrapperFloatJpa> {
 
     protected WrapperFloatJpaEntities() {
         super(WrapperFloatJpa.class);
     }
 
     @Override
-    protected WrapperFloatJpa newDetachedEntity(Float value) {
+    protected WrapperFloatJpa newDetachedEntity(java.lang.Float value) {
         return new WrapperFloatJpa(value);
     }
 
-}
\ No newline at end of file
+}
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/persistence/WrapperFloatEntity.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/persistence/WrapperFloatEntity.java
index a6b0a5c257..de7e89d1ed 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/persistence/WrapperFloatEntity.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/persistence/WrapperFloatEntity.java
@@ -26,16 +26,17 @@ import demoapp.dom._infra.asciidocdesc.HasAsciiDocDescription;
 import demoapp.dom._infra.values.ValueHolder;
 import demoapp.dom.types.javalang.floats.holder.WrapperFloatHolder2;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 @Named("demo.WrapperFloatEntity") // shared permissions with concrete sub class
 @DomainObject
 public abstract class WrapperFloatEntity
 implements
     HasAsciiDocDescription,
     WrapperFloatHolder2,
-    ValueHolder<Float> {
+    ValueHolder<java.lang.Float> {
 
     @Override
-    public Float value() {
+    public java.lang.Float value() {
         return getReadOnlyProperty();
     }
 
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/persistence/WrapperFloatEntity.layout.xml b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/persistence/WrapperFloatEntity.layout.xml
index fe9ce77481..c58ffa61a0 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/persistence/WrapperFloatEntity.layout.xml
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/persistence/WrapperFloatEntity.layout.xml
@@ -15,6 +15,8 @@
         xmlns:cpt="http://isis.apache.org/applib/layout/component"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 
+	<!-- This file was GENERATED by the showcase generator (tooling). Do NOT edit! -->
+
 	<bs3:row>
 		<bs3:col span="10" unreferencedActions="true">
 			<cpt:domainObject />
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/persistence/WrapperFloatSeeding.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/persistence/WrapperFloatSeeding.java
index 6d0f9d53b4..1256e0d49a 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/persistence/WrapperFloatSeeding.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/persistence/WrapperFloatSeeding.java
@@ -25,11 +25,14 @@ import org.springframework.stereotype.Service;
 import demoapp.dom._infra.seed.SeedServiceAbstract;
 import demoapp.dom._infra.values.ValueHolderRepository;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 @Service
-public class WrapperFloatSeeding extends SeedServiceAbstract {
+public class WrapperFloatSeeding
+extends SeedServiceAbstract {
 
     @Inject
-    public WrapperFloatSeeding(ValueHolderRepository<Float, ? extends WrapperFloatEntity> entities) {
+    public WrapperFloatSeeding(ValueHolderRepository<java.lang.Float, ? extends WrapperFloatEntity> entities) {
         super(entities);
     }
+
 }
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/samples/WrapperFloatSamples.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/samples/WrapperFloatSamples.java
index 4a4f9423cb..b04625e082 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/samples/WrapperFloatSamples.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/samples/WrapperFloatSamples.java
@@ -24,12 +24,15 @@ import org.springframework.stereotype.Service;
 
 import demoapp.dom.types.Samples;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 @Service
-public class WrapperFloatSamples implements Samples<Float> {
+public class WrapperFloatSamples implements Samples<java.lang.Float> {
 
     @Override
-    public Stream<Float> stream() {
-        return Stream.of(1.1f, 2.2f, 3.3f, 4.0f, -9.9f, -8.8f);
+    public Stream<java.lang.Float> stream() {
+        return new org.apache.isis.core.metamodel.valuesemantics.FloatValueSemantics()
+                .getExamples()
+                .stream();
     }
 
 }
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/vm/WrapperFloatVm-description.adoc b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/vm/WrapperFloatVm-description.adoc
index d31083fa51..efa72c00cf 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/vm/WrapperFloatVm-description.adoc
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/vm/WrapperFloatVm-description.adoc
@@ -1,6 +1,8 @@
 :Notice: 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 ag [...]
 
-JAXB supports `Float` link:https://docs.oracle.com/cd/E12840_01/wls/docs103/webserv/data_types.html#wp223908[out-of-the-box], so no special annotations are required.
+// // This file was GENERATED by the showcase generator (tooling). Do NOT edit!
+
+JAXB supports `java.lang.Float` out-of-the-box, so no special annotations are required. see link:https://docs.oracle.com/cd/E12840_01/wls/docs103/webserv/data_types.html#wp223908[Oracle]
 
 [source,java]
 ----
@@ -14,4 +16,4 @@ include::WrapperFloatVm.java[tags=class]
 This is the default for JAXB so no additional annotation required.
 
 
-include::../WrapperFloats-common.adoc[]
\ No newline at end of file
+include::../WrapperFloats-common.adoc[]
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/vm/WrapperFloatVm.java b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/vm/WrapperFloatVm.java
index 304e0d9bbe..6d000f8646 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/vm/WrapperFloatVm.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/vm/WrapperFloatVm.java
@@ -39,6 +39,7 @@ import lombok.Setter;
 import demoapp.dom._infra.asciidocdesc.HasAsciiDocDescription;
 import demoapp.dom.types.javalang.floats.holder.WrapperFloatHolder2;
 
+/* This file was GENERATED by the showcase generator (tooling). Do NOT edit! */
 //tag::class[]
 @XmlRootElement(name = "root")
 @XmlType
@@ -51,33 +52,33 @@ public class WrapperFloatVm
         implements HasAsciiDocDescription, WrapperFloatHolder2 {
 
 //end::class[]
-    public WrapperFloatVm(final Float initialValue) {
+    public WrapperFloatVm(final java.lang.Float initialValue) {
         this.readOnlyProperty = initialValue;
         this.readWriteProperty = initialValue;
     }
 
 //tag::class[]
-    @Title(prepend = "Float (wrapper) view model: ")
+    @Title(prepend = "java.lang.Float view model: ")
     @PropertyLayout(fieldSetId = "read-only-properties", sequence = "1")
     @XmlElement(required = true)                                                // <.>
     @Getter @Setter
-    private Float readOnlyProperty;
+    private java.lang.Float readOnlyProperty;
 
     @Property(editing = Editing.ENABLED)                                        // <.>
     @PropertyLayout(fieldSetId = "editable-properties", sequence = "1")
     @XmlElement(required = true)
     @Getter @Setter
-    private Float readWriteProperty;
+    private java.lang.Float readWriteProperty;
 
     @Property(optionality = Optionality.OPTIONAL)                               // <.>
     @PropertyLayout(fieldSetId = "optional-properties", sequence = "1")
     @Getter @Setter
-    private Float readOnlyOptionalProperty;
+    private java.lang.Float readOnlyOptionalProperty;
 
     @Property(editing = Editing.ENABLED, optionality = Optionality.OPTIONAL)
     @PropertyLayout(fieldSetId = "optional-properties", sequence = "2")
     @Getter @Setter
-    private Float readWriteOptionalProperty;
+    private java.lang.Float readWriteOptionalProperty;
 
 }
 //end::class[]
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/vm/WrapperFloatVm.layout.xml b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/vm/WrapperFloatVm.layout.xml
index fe9ce77481..c58ffa61a0 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/vm/WrapperFloatVm.layout.xml
+++ b/examples/demo/domain/src/main/java/demoapp/dom/types/javalang/floats/vm/WrapperFloatVm.layout.xml
@@ -15,6 +15,8 @@
         xmlns:cpt="http://isis.apache.org/applib/layout/component"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 
+	<!-- This file was GENERATED by the showcase generator (tooling). Do NOT edit! -->
+
 	<bs3:row>
 		<bs3:col span="10" unreferencedActions="true">
 			<cpt:domainObject />
diff --git a/tooling/metaprog/src/test/java/org/apache/isis/tooling/metaprog/demoshowcases/value/ValueTypeGenTemplateTest.java b/tooling/metaprog/src/test/java/org/apache/isis/tooling/metaprog/demoshowcases/value/ValueTypeGenTemplateTest.java
index d4a85da7b0..0fa698f200 100644
--- a/tooling/metaprog/src/test/java/org/apache/isis/tooling/metaprog/demoshowcases/value/ValueTypeGenTemplateTest.java
+++ b/tooling/metaprog/src/test/java/org/apache/isis/tooling/metaprog/demoshowcases/value/ValueTypeGenTemplateTest.java
@@ -99,6 +99,48 @@ class ValueTypeGenTemplateTest {
         testShowcase(config);
     }
 
+    @Test
+    void testWDouble() throws IOException {
+
+        val config = fundamentalTypeSupportNotice()
+                .outputRootDir(outputDir("wdouble"))
+                .showcaseName("WrapperDouble")
+                .javaPackage("demoapp.dom.types.javalang.doubles")
+                .showcaseValueType("java.lang.Double")
+                .showcaseValueSemantics("org.apache.isis.core.metamodel.valuesemantics.DoubleValueSemantics")
+                .build();
+
+        testShowcase(config);
+    }
+
+    @Test
+    void testWFloat() throws IOException {
+
+        val config = fundamentalTypeSupportNotice()
+                .outputRootDir(outputDir("wfloat"))
+                .showcaseName("WrapperFloat")
+                .javaPackage("demoapp.dom.types.javalang.floats")
+                .showcaseValueType("java.lang.Float")
+                .showcaseValueSemantics("org.apache.isis.core.metamodel.valuesemantics.FloatValueSemantics")
+                .build();
+
+        testShowcase(config);
+    }
+
+//    @Test
+//    void testWBoolean() throws IOException {
+//
+//        val config = fundamentalTypeSupportNotice()
+//                .outputRootDir(outputDir("wbool"))
+//                .showcaseName("WrapperBoolean")
+//                .javaPackage("demoapp.dom.types.javalang.booleans")
+//                .showcaseValueType("java.lang.Boolean")
+//                .showcaseValueSemantics("org.apache.isis.core.metamodel.valuesemantics.BooleanValueSemantics")
+//                .build();
+//
+//        testShowcase(config);
+//    }
+
     // -- HELPER
 
     private ConfigBuilder fundamentalTypeSupportNotice() {