You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by hn...@apache.org on 2021/04/13 14:56:01 UTC

[myfaces-tobago] branch master updated: fix(tobago-out): output text wrapping

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

hnoeth pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/myfaces-tobago.git


The following commit(s) were added to refs/heads/master by this push:
     new 9faffa0  fix(tobago-out): output text wrapping
9faffa0 is described below

commit 9faffa0f4c0986e48b0355398342397689e082f6
Author: Henning Noeth <hn...@apache.org>
AuthorDate: Tue Apr 13 16:23:58 2021 +0200

    fix(tobago-out): output text wrapping
    
    * The output text should be surrounded by a span.
    * adjust unit test
    * adjust jasmine tests
---
 .../internal/renderkit/renderer/OutRenderer.java   |  4 +-
 .../src/test/resources/renderer/out/out.html       |  4 +-
 .../20-component/010-input/10-in/In.test.js        |  2 +-
 .../010-input/50-input-group/Group.test.js         |  2 +-
 .../10-selectBooleanCheckbox/Checkbox.test.js      | 16 +++----
 .../15-selectBooleanToggle/Toggle.test.js          | 16 +++----
 .../030-select/20-selectOneChoice/Dropdown.test.js |  4 +-
 .../030-select/30-selectOneRadio/Radio.test.js     |  4 +-
 .../030-select/40-selectOneListbox/Listbox.test.js |  8 ++--
 .../50-selectManyCheckbox/Multi_Checkbox.test.js   |  8 ++--
 .../70-selectManyShuttle/Shuttle.test.js           |  4 +-
 .../content/20-component/060-popup/Popup.test.js   |  8 ++--
 .../090-tree/00-command/Tree_Command_Types.test.js |  4 +-
 .../090-tree/01-select/Tree_Select.test.js         | 10 ++--
 .../090-tree/04-listbox/Tree_Listbox.test.js       |  6 +--
 .../08-form/10-required/Required.test.js           | 24 +++++-----
 .../30-concept/08-form/20-ajax/Ajax.test.js        | 54 +++++++++++-----------
 .../webapp/content/30-concept/08-form/Form.test.js |  8 ++--
 .../30-concept/30-behavior/Behavior.test.js        |  8 ++--
 .../4050-ajax-dropdown/Ajax_Dropdown.test.js       |  2 +-
 .../40000-style/100-headings/Headings.test.js      |  2 +-
 .../4600-gridLayout/90-style-tag/Style_Tag.test.js |  4 +-
 .../Ajax_Special_Character.test.js                 |  6 +--
 23 files changed, 103 insertions(+), 105 deletions(-)

diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/OutRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/OutRenderer.java
index cc7ffdb..35f7b09 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/OutRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/OutRenderer.java
@@ -77,7 +77,7 @@ public class OutRenderer<T extends AbstractUIOut> extends MessageLayoutRendererB
     final TobagoResponseWriter writer = getResponseWriter(facesContext);
     final Markup markup = component.getMarkup();
 
-    writer.startElement(isInside(facesContext, HtmlElements.TOBAGO_IN) ? HtmlElements.TOBAGO_OUT : HtmlElements.DIV);
+    writer.startElement(isInside(facesContext, HtmlElements.TOBAGO_IN) ? HtmlElements.TOBAGO_OUT : HtmlElements.SPAN);
     HtmlRendererUtils.writeDataAttributes(facesContext, writer, component);
 
     writer.writeClassAttribute(
@@ -131,7 +131,7 @@ public class OutRenderer<T extends AbstractUIOut> extends MessageLayoutRendererB
   @Override
   public void encodeEndField(final FacesContext facesContext, final T component) throws IOException {
     final TobagoResponseWriter writer = getResponseWriter(facesContext);
-    writer.endElement(isInside(facesContext, HtmlElements.TOBAGO_IN) ? HtmlElements.TOBAGO_OUT : HtmlElements.DIV);
+    writer.endElement(isInside(facesContext, HtmlElements.TOBAGO_IN) ? HtmlElements.TOBAGO_OUT : HtmlElements.SPAN);
   }
 
   @Override
diff --git a/tobago-core/src/test/resources/renderer/out/out.html b/tobago-core/src/test/resources/renderer/out/out.html
index c10def0..6b0e232 100644
--- a/tobago-core/src/test/resources/renderer/out/out.html
+++ b/tobago-core/src/test/resources/renderer/out/out.html
@@ -15,6 +15,4 @@
  * limitations under the License.
 -->
 
-<tobago-out id='id' class='tobago-auto-spacing'>
-  <div class='form-control-plaintext'>out
-  </div></tobago-out>
\ No newline at end of file
+<tobago-out id='id' class='tobago-auto-spacing'><span class='form-control-plaintext'>out</span></tobago-out>
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/010-input/10-in/In.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/010-input/10-in/In.test.js
index 8734a17..a86e7f0 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/010-input/10-in/In.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/010-input/10-in/In.test.js
@@ -32,7 +32,7 @@ it("inputfield with label", function (done) {
 
 it("ajax change event", function (done) {
   let inputFieldFn = querySelectorFn("#page\\:mainForm\\:inputAjax\\:\\:field");
-  let outputFieldFn = querySelectorFn("#page\\:mainForm\\:outputAjax tobago-out");
+  let outputFieldFn = querySelectorFn("#page\\:mainForm\\:outputAjax .form-control-plaintext");
 
   const test = new JasmineTestTool(done);
   test.do(() => inputFieldFn().value = "some input text");
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/010-input/50-input-group/Group.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/010-input/50-input-group/Group.test.js
index 63e881f..5e78555 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/010-input/50-input-group/Group.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/010-input/50-input-group/Group.test.js
@@ -74,7 +74,7 @@ it("ajax: currency change event", function (done) {
   let inputFn = querySelectorFn("#page\\:mainForm\\:value\\:\\:field");
   let selectFn = querySelectorFn("#page\\:mainForm\\:currency\\:\\:field");
   let optionsFn = querySelectorAllFn("#page\\:mainForm\\:currency option");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:valueInEuro tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:valueInEuro .form-control-plaintext");
 
   const test = new JasmineTestTool(done);
   test.setup(() => convertInt(outputFn().textContent) === 100000,
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/10-selectBooleanCheckbox/Checkbox.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/10-selectBooleanCheckbox/Checkbox.test.js
index 9fd41eb..0b880de 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/10-selectBooleanCheckbox/Checkbox.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/10-selectBooleanCheckbox/Checkbox.test.js
@@ -23,7 +23,7 @@ it("submit: select A", function (done) {
   let selectBFn = querySelectorFn("#page\\:mainForm\\:selectB input");
   let selectCFn = querySelectorFn("#page\\:mainForm\\:selectC input");
   let submitFn = querySelectorFn("#page\\:mainForm\\:submit");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:submitOutput tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:submitOutput .form-control-plaintext");
 
   let test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent === "",
@@ -45,7 +45,7 @@ it("submit: select B and C", function (done) {
   let selectBFn = querySelectorFn("#page\\:mainForm\\:selectB input");
   let selectCFn = querySelectorFn("#page\\:mainForm\\:selectC input");
   let submitFn = querySelectorFn("#page\\:mainForm\\:submit");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:submitOutput tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:submitOutput .form-control-plaintext");
 
   let test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent === "",
@@ -64,7 +64,7 @@ it("submit: select B and C", function (done) {
 
 it("ajax: select D", function (done) {
   let selectFn = querySelectorFn("#page\\:mainForm\\:selectD input");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:outputD tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:outputD .form-control-plaintext");
 
   let test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent === "false",
@@ -78,7 +78,7 @@ it("ajax: select D", function (done) {
 
 it("ajax: deselect D", function (done) {
   let selectFn = querySelectorFn("#page\\:mainForm\\:selectD input");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:outputD tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:outputD .form-control-plaintext");
 
   let test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent === "true",
@@ -92,7 +92,7 @@ it("ajax: deselect D", function (done) {
 
 it("ajax: select E", function (done) {
   let selectFn = querySelectorFn("#page\\:mainForm\\:selectE input");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:outputE tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:outputE .form-control-plaintext");
 
   let test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent === "false",
@@ -106,7 +106,7 @@ it("ajax: select E", function (done) {
 
 it("ajax: deselect E", function (done) {
   let selectFn = querySelectorFn("#page\\:mainForm\\:selectE input");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:outputE tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:outputE .form-control-plaintext");
 
   let test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent === "true",
@@ -120,7 +120,7 @@ it("ajax: deselect E", function (done) {
 
 it("ajax: select F", function (done) {
   let selectFn = querySelectorFn("#page\\:mainForm\\:selectF input");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:outputF tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:outputF .form-control-plaintext");
 
   let test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent === "false",
@@ -134,7 +134,7 @@ it("ajax: select F", function (done) {
 
 it("ajax: deselect F", function (done) {
   let selectFn = querySelectorFn("#page\\:mainForm\\:selectF input");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:outputF tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:outputF .form-control-plaintext");
 
   let test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent === "true",
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/15-selectBooleanToggle/Toggle.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/15-selectBooleanToggle/Toggle.test.js
index 9fd41eb..0b880de 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/15-selectBooleanToggle/Toggle.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/15-selectBooleanToggle/Toggle.test.js
@@ -23,7 +23,7 @@ it("submit: select A", function (done) {
   let selectBFn = querySelectorFn("#page\\:mainForm\\:selectB input");
   let selectCFn = querySelectorFn("#page\\:mainForm\\:selectC input");
   let submitFn = querySelectorFn("#page\\:mainForm\\:submit");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:submitOutput tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:submitOutput .form-control-plaintext");
 
   let test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent === "",
@@ -45,7 +45,7 @@ it("submit: select B and C", function (done) {
   let selectBFn = querySelectorFn("#page\\:mainForm\\:selectB input");
   let selectCFn = querySelectorFn("#page\\:mainForm\\:selectC input");
   let submitFn = querySelectorFn("#page\\:mainForm\\:submit");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:submitOutput tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:submitOutput .form-control-plaintext");
 
   let test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent === "",
@@ -64,7 +64,7 @@ it("submit: select B and C", function (done) {
 
 it("ajax: select D", function (done) {
   let selectFn = querySelectorFn("#page\\:mainForm\\:selectD input");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:outputD tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:outputD .form-control-plaintext");
 
   let test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent === "false",
@@ -78,7 +78,7 @@ it("ajax: select D", function (done) {
 
 it("ajax: deselect D", function (done) {
   let selectFn = querySelectorFn("#page\\:mainForm\\:selectD input");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:outputD tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:outputD .form-control-plaintext");
 
   let test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent === "true",
@@ -92,7 +92,7 @@ it("ajax: deselect D", function (done) {
 
 it("ajax: select E", function (done) {
   let selectFn = querySelectorFn("#page\\:mainForm\\:selectE input");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:outputE tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:outputE .form-control-plaintext");
 
   let test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent === "false",
@@ -106,7 +106,7 @@ it("ajax: select E", function (done) {
 
 it("ajax: deselect E", function (done) {
   let selectFn = querySelectorFn("#page\\:mainForm\\:selectE input");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:outputE tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:outputE .form-control-plaintext");
 
   let test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent === "true",
@@ -120,7 +120,7 @@ it("ajax: deselect E", function (done) {
 
 it("ajax: select F", function (done) {
   let selectFn = querySelectorFn("#page\\:mainForm\\:selectF input");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:outputF tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:outputF .form-control-plaintext");
 
   let test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent === "false",
@@ -134,7 +134,7 @@ it("ajax: select F", function (done) {
 
 it("ajax: deselect F", function (done) {
   let selectFn = querySelectorFn("#page\\:mainForm\\:selectF input");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:outputF tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:outputF .form-control-plaintext");
 
   let test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent === "true",
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/20-selectOneChoice/Dropdown.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/20-selectOneChoice/Dropdown.test.js
index 8c5aa1f..163e973 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/20-selectOneChoice/Dropdown.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/20-selectOneChoice/Dropdown.test.js
@@ -22,7 +22,7 @@ it("submit: Alice", function (done) {
   let aliceFn = querySelectorFn("#page\\:mainForm\\:selectPerson\\:\\:field option[value^='Alice']");
   let bobFn = querySelectorFn("#page\\:mainForm\\:selectPerson\\:\\:field option[value^='Bob']");
   let submitFn = querySelectorFn("#page\\:mainForm\\:submit");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:outputPerson tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:outputPerson .form-control-plaintext");
 
   const test = new JasmineTestTool(done);
   test.setup(() => () => outputFn().textContent !== "Alice Anderson",
@@ -42,7 +42,7 @@ it("submit: Bob", function (done) {
   let aliceFn = querySelectorFn("#page\\:mainForm\\:selectPerson\\:\\:field option[value^='Alice']");
   let bobFn = querySelectorFn("#page\\:mainForm\\:selectPerson\\:\\:field option[value^='Bob']");
   let submitFn = querySelectorFn("#page\\:mainForm\\:submit");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:outputPerson tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:outputPerson .form-control-plaintext");
 
   const test = new JasmineTestTool(done);
   test.setup(() => () => outputFn().textContent !== "Bob Brunch",
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/30-selectOneRadio/Radio.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/30-selectOneRadio/Radio.test.js
index 65181af..9506c2a 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/30-selectOneRadio/Radio.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/30-selectOneRadio/Radio.test.js
@@ -22,7 +22,7 @@ it("submit: Addition (2 + 4)", function (done) {
   let number1Fn = querySelectorAllFn("#page\\:mainForm\\:selectNum1 input");
   let number2Fn = querySelectorAllFn("#page\\:mainForm\\:selectNum2 input");
   let submitAddFn = querySelectorFn("#page\\:mainForm\\:submitAdd");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:resultOutput tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:resultOutput .form-control-plaintext");
 
   const test = new JasmineTestTool(done);
   test.do(() => number1Fn().item(0).checked = false);
@@ -40,7 +40,7 @@ it("submit: Subtraction (4 - 1)", function (done) {
   let number1Fn = querySelectorAllFn("#page\\:mainForm\\:selectNum1 input");
   let number2Fn = querySelectorAllFn("#page\\:mainForm\\:selectNum2 input");
   let submitSubFn = querySelectorFn("#page\\:mainForm\\:submitSub");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:resultOutput tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:resultOutput .form-control-plaintext");
 
   const test = new JasmineTestTool(done);
   test.do(() => number1Fn().item(0).checked = false);
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/40-selectOneListbox/Listbox.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/40-selectOneListbox/Listbox.test.js
index 5987eca..f51fa38 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/40-selectOneListbox/Listbox.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/40-selectOneListbox/Listbox.test.js
@@ -21,7 +21,7 @@ import {querySelectorAllFn, querySelectorFn} from "/script/tobago-test.js";
 it("submit: select 'Nile'", function (done) {
   let riversFn = querySelectorAllFn("#page\\:mainForm\\:riverList option");
   let submitFn = querySelectorFn("#page\\:mainForm\\:riverSubmit");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:riverOutput tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:riverOutput .form-control-plaintext");
 
   const test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent !== "6853 km",
@@ -46,7 +46,7 @@ it("submit: select 'Nile'", function (done) {
 it("submit: select 'Yangtze'", function (done) {
   let riversFn = querySelectorAllFn("#page\\:mainForm\\:riverList option");
   let submitFn = querySelectorFn("#page\\:mainForm\\:riverSubmit");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:riverOutput tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:riverOutput .form-control-plaintext");
 
   const test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent !== "6300 km",
@@ -71,7 +71,7 @@ it("submit: select 'Yangtze'", function (done) {
 it("ajax: select Everest", function (done) {
   let mountainListFn = querySelectorFn("#page\\:mainForm\\:mountainList\\:\\:field");
   let mountainsFn = querySelectorAllFn("#page\\:mainForm\\:mountainList option");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:selectedMountain tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:selectedMountain .form-control-plaintext");
 
   const test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent !== "8848 m",
@@ -95,7 +95,7 @@ it("ajax: select Everest", function (done) {
 it("ajax: select Makalu", function (done) {
   let mountainListFn = querySelectorFn("#page\\:mainForm\\:mountainList\\:\\:field");
   let mountainsFn = querySelectorAllFn("#page\\:mainForm\\:mountainList option");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:selectedMountain tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:selectedMountain .form-control-plaintext");
 
   const test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent !== "8481 m",
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/50-selectManyCheckbox/Multi_Checkbox.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/50-selectManyCheckbox/Multi_Checkbox.test.js
index c5eb23d..e046062 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/50-selectManyCheckbox/Multi_Checkbox.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/50-selectManyCheckbox/Multi_Checkbox.test.js
@@ -21,7 +21,7 @@ import {querySelectorAllFn, querySelectorFn} from "/script/tobago-test.js";
 it("submit: select cat", function (done) {
   let animalsFn = querySelectorAllFn("#page\\:mainForm\\:animals input");
   let submitFn = querySelectorFn("#page\\:mainForm\\:submit");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:animalsOutput tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:animalsOutput .form-control-plaintext");
 
   const test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent.trim() !== "Cat",
@@ -44,7 +44,7 @@ it("submit: select cat", function (done) {
 it("submit: select fox and rabbit", function (done) {
   let animalsFn = querySelectorAllFn("#page\\:mainForm\\:animals input");
   let submitFn = querySelectorFn("#page\\:mainForm\\:submit");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:animalsOutput tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:animalsOutput .form-control-plaintext");
 
   const test = new JasmineTestTool(done);
   test.setup(() => outputFn().textContent.trim() !== "Fox Rabbit",
@@ -105,7 +105,7 @@ it("ajax: deselect 'Four'", function (done) {
 });
 
 function ajaxSelect(done, numberFn, number) {
-  let outputFn = querySelectorFn("#page\\:mainForm\\:resultOutput tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:resultOutput .form-control-plaintext");
   let newOutputValue = parseInt(outputFn().textContent);
   if (!numberFn().checked) {
     newOutputValue = parseInt(outputFn().textContent) + number;
@@ -122,7 +122,7 @@ function ajaxSelect(done, numberFn, number) {
 }
 
 function ajaxDeselect(done, numberFn, number) {
-  let outputFn = querySelectorFn("#page\\:mainForm\\:resultOutput tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:resultOutput .form-control-plaintext");
   let newOutputValue = parseInt(outputFn().textContent);
   if (numberFn().checked) {
     newOutputValue = parseInt(outputFn().textContent) - number;
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/70-selectManyShuttle/Shuttle.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/70-selectManyShuttle/Shuttle.test.js
index f43593e..80b643c 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/70-selectManyShuttle/Shuttle.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/70-selectManyShuttle/Shuttle.test.js
@@ -26,7 +26,7 @@ it("submit: addAll, removeAll, addItem0to4, removeItem2to3", function (done) {
   let removeButton = querySelectorFn("#page\\:mainForm\\:submitExample\\:\\:remove");
   let removeAllButton = querySelectorFn("#page\\:mainForm\\:submitExample\\:\\:removeAll");
   let submitButton = querySelectorFn("#page\\:mainForm\\:submitButton");
-  let output = querySelectorFn("#page\\:mainForm\\:submitExampleOutput tobago-out");
+  let output = querySelectorFn("#page\\:mainForm\\:submitExampleOutput .form-control-plaintext");
 
   const test = new JasmineTestTool(done);
   test.setup(() => selectedOptions().length === 0, null, "click", removeAllButton);
@@ -78,7 +78,7 @@ it("ajax: addAll, removeAll, addItem1to2, removeItem0", function (done) {
   let addButton = querySelectorFn("#page\\:mainForm\\:ajaxExample\\:\\:add");
   let removeButton = querySelectorFn("#page\\:mainForm\\:ajaxExample\\:\\:remove");
   let removeAllButton = querySelectorFn("#page\\:mainForm\\:ajaxExample\\:\\:removeAll");
-  let output = querySelectorFn("#page\\:mainForm\\:outputStars tobago-out");
+  let output = querySelectorFn("#page\\:mainForm\\:outputStars .form-control-plaintext");
   let submitButton = querySelectorFn("#page\\:mainForm\\:submitButton");
 
   const test = new JasmineTestTool(done);
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/060-popup/Popup.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/060-popup/Popup.test.js
index 9986bd5..11a1e16 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/060-popup/Popup.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/060-popup/Popup.test.js
@@ -53,7 +53,7 @@ it("Open 'Client Popup', press 'Submit' while field is empty. Press 'Cancel'.",
   let popupFn = elementByIdFn("page:mainForm:form2:clientPopup");
   let collapseFn = elementByIdFn("page:mainForm:form2:clientPopup::collapse");
   let openButtonFn = elementByIdFn("page:mainForm:form2:open");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:form2\\:out tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:form2\\:out .form-control-plaintext");
   let messagesFn = querySelectorAllFn("#page\\:mainForm\\:form2\\:clientPopup\\:messages div");
   let messageCloseFn = querySelectorFn("#page\\:mainForm\\:form2\\:clientPopup\\:messages .btn-close");
   let inputFieldFn = elementByIdFn("page:mainForm:form2:clientPopup:in2::field");
@@ -97,7 +97,7 @@ it("Open 'Client Popup', press 'Submit' while field has content. Press 'Cancel'.
   let popupFn = elementByIdFn("page:mainForm:form2:clientPopup");
   let collapseFn = elementByIdFn("page:mainForm:form2:clientPopup::collapse");
   let openButtonFn = elementByIdFn("page:mainForm:form2:open");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:form2\\:out tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:form2\\:out .form-control-plaintext");
   let messagesFn = querySelectorAllFn("#page\\:mainForm\\:form2\\:clientPopup\\:messages div");
   let inputFieldFn = elementByIdFn("page:mainForm:form2:clientPopup:in2::field");
   let submitButtonFn = elementByIdFn("page:mainForm:form2:clientPopup:submit2");
@@ -141,7 +141,7 @@ it("Open 'Client Popup', press 'Submit & Close' while field is empty.", function
   let popupFn = elementByIdFn("page:mainForm:form2:clientPopup");
   let collapseFn = elementByIdFn("page:mainForm:form2:clientPopup::collapse");
   let openButtonFn = elementByIdFn("page:mainForm:form2:open");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:form2\\:out tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:form2\\:out .form-control-plaintext");
   let messagesFn = querySelectorAllFn("#page\\:mainForm\\:form2\\:clientPopup\\:messages div");
   let messageCloseFn = querySelectorFn("#page\\:mainForm\\:form2\\:clientPopup\\:messages .btn-close");
   let inputFieldFn = elementByIdFn("page:mainForm:form2:clientPopup:in2::field");
@@ -183,7 +183,7 @@ it("Open 'Client Popup', press 'Submit & Close' while field has content.", funct
   let popupFn = elementByIdFn("page:mainForm:form2:clientPopup");
   let collapseFn = elementByIdFn("page:mainForm:form2:clientPopup::collapse");
   let openButtonFn = elementByIdFn("page:mainForm:form2:open");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:form2\\:out tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:form2\\:out .form-control-plaintext");
   let messagesFn = querySelectorAllFn("#page\\:mainForm\\:form2\\:clientPopup\\:messages div");
   let inputFieldFn = elementByIdFn("page:mainForm:form2:clientPopup:in2::field");
   let submitButtonFn = elementByIdFn("page:mainForm:form2:clientPopup:submit2");
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/090-tree/00-command/Tree_Command_Types.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/090-tree/00-command/Tree_Command_Types.test.js
index b5524fc..896a998 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/090-tree/00-command/Tree_Command_Types.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/090-tree/00-command/Tree_Command_Types.test.js
@@ -21,8 +21,8 @@ import {querySelectorFn} from "/script/tobago-test.js";
 it("not implemented yet", function (done) {
   let action1Fn = querySelectorFn("#page\\:mainForm\\:tree\\:2\\:actionCommand");
   let action2Fn = querySelectorFn("#page\\:mainForm\\:tree\\:3\\:actionCommand");
-  let actionCount1Fn = querySelectorFn("#page\\:mainForm\\:actionCount1 tobago-out");
-  let actionCount2Fn = querySelectorFn("#page\\:mainForm\\:actionCount2 tobago-out");
+  let actionCount1Fn = querySelectorFn("#page\\:mainForm\\:actionCount1 .form-control-plaintext");
+  let actionCount2Fn = querySelectorFn("#page\\:mainForm\\:actionCount2 .form-control-plaintext");
 
   const action1Count = Number(actionCount1Fn().textContent);
   const action2Count = Number(actionCount2Fn().textContent);
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/090-tree/01-select/Tree_Select.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/090-tree/01-select/Tree_Select.test.js
index cccb71e..9960900 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/090-tree/01-select/Tree_Select.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/090-tree/01-select/Tree_Select.test.js
@@ -25,7 +25,7 @@ it("single: select Music, select Mathematics", function (done) {
   let selectableSingleFn = elementByIdFn("page:mainForm:selectable::1");
   let musicFn = elementByIdFn("page:mainForm:categoriesTree:3:select");
   let mathematicsFn = elementByIdFn("page:mainForm:categoriesTree:9:select");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:selectedNodesOutput tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:selectedNodesOutput .form-control-plaintext");
 
   const test = new JasmineTestTool(done);
   test.setup(() => radiosFn().length === 0 && checkboxesFn().length === 0,
@@ -55,7 +55,7 @@ it("singleLeafOnly: select Classic, select Geography", function (done) {
   let selectableSingleLeafOnlyFn = elementByIdFn("page:mainForm:selectable::2");
   let classicFn = elementByIdFn("page:mainForm:categoriesTree:4:select");
   let geographyFn = elementByIdFn("page:mainForm:categoriesTree:10:select");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:selectedNodesOutput tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:selectedNodesOutput .form-control-plaintext");
 
   const test = new JasmineTestTool(done);
   test.setup(() => radiosFn().length === 0 && checkboxesFn().length === 0,
@@ -85,7 +85,7 @@ it("multi: select Music, select Geography, deselect Music", function (done) {
   let selectableMultiFn = elementByIdFn("page:mainForm:selectable::3");
   let musicFn = elementByIdFn("page:mainForm:categoriesTree:3:select");
   let geographyFn = elementByIdFn("page:mainForm:categoriesTree:10:select");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:selectedNodesOutput tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:selectedNodesOutput .form-control-plaintext");
 
   const test = new JasmineTestTool(done);
   test.setup(() => radiosFn().length === 0 && checkboxesFn().length === 0,
@@ -119,7 +119,7 @@ it("multiLeafOnly: select Classic, select Geography, deselect Classic", function
   let selectableMultiLeafOnlyFn = elementByIdFn("page:mainForm:selectable::4");
   let classicFn = elementByIdFn("page:mainForm:categoriesTree:4:select");
   let geographyFn = elementByIdFn("page:mainForm:categoriesTree:10:select");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:selectedNodesOutput tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:selectedNodesOutput .form-control-plaintext");
 
   const test = new JasmineTestTool(done);
   test.setup(() => radiosFn().length === 0 && checkboxesFn().length === 0,
@@ -154,7 +154,7 @@ it("multiCascade: select Music, select Mathematics, deselect Classic", function
   let musicFn = elementByIdFn("page:mainForm:categoriesTree:3:select");
   let classicFn = elementByIdFn("page:mainForm:categoriesTree:4:select");
   let mathematicsFn = elementByIdFn("page:mainForm:categoriesTree:9:select");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:selectedNodesOutput tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:selectedNodesOutput .form-control-plaintext");
 
   const test = new JasmineTestTool(done);
   test.setup(() => radiosFn().length === 0 && checkboxesFn().length === 0,
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/090-tree/04-listbox/Tree_Listbox.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/090-tree/04-listbox/Tree_Listbox.test.js
index 3dacdb5..51ba4ad 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/090-tree/04-listbox/Tree_Listbox.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/090-tree/04-listbox/Tree_Listbox.test.js
@@ -21,7 +21,7 @@ import {JasmineTestTool} from "/tobago/test/tobago-test-tool.js";
 it("Select 2,2,0 and submit", function (done) {
   const hiddenInput = elementByIdFn("page:mainForm:listbox::selected");
   const submit = elementByIdFn("page:mainForm:submit");
-  const output = querySelectorFn("#page\\:mainForm\\:output tobago-out");
+  const output = querySelectorFn("#page\\:mainForm\\:output .form-control-plaintext");
   const node1 = elementByIdFn("page:mainForm:listbox:1:node");
   const node3 = elementByIdFn("page:mainForm:listbox:3:node"); // 2
   const node6 = elementByIdFn("page:mainForm:listbox:6:node"); // 2,2
@@ -88,7 +88,7 @@ it("Select 2,2,0 and submit", function (done) {
 it("Select 3 and submit", function (done) {
   const hiddenInput = elementByIdFn("page:mainForm:listbox::selected");
   const submit = elementByIdFn("page:mainForm:submit");
-  const output = querySelectorFn("#page\\:mainForm\\:output tobago-out");
+  const output = querySelectorFn("#page\\:mainForm\\:output .form-control-plaintext");
   const node1 = elementByIdFn("page:mainForm:listbox:1:node");
   const node9 = elementByIdFn("page:mainForm:listbox:9:node"); // 3
 
@@ -123,7 +123,7 @@ it("Select 3 and submit", function (done) {
 it("Select 4,2,1,1 and submit", function (done) {
   const hiddenInput = elementByIdFn("page:mainForm:listbox::selected");
   const submit = elementByIdFn("page:mainForm:submit");
-  const output = querySelectorFn("#page\\:mainForm\\:output tobago-out");
+  const output = querySelectorFn("#page\\:mainForm\\:output .form-control-plaintext");
   const node1 = elementByIdFn("page:mainForm:listbox:1:node");
   const node10 = elementByIdFn("page:mainForm:listbox:10:node"); // 4
   const node15 = elementByIdFn("page:mainForm:listbox:15:node"); // 4,2
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/30-concept/08-form/10-required/Required.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/30-concept/08-form/10-required/Required.test.js
index a645d2a..e76110c 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/30-concept/08-form/10-required/Required.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/30-concept/08-form/10-required/Required.test.js
@@ -20,7 +20,7 @@ import {JasmineTestTool} from "/tobago/test/tobago-test-tool.js";
 
 it("submit inner form 1 without violations", function (done) {
   let form1InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm1\\:in1\\:\\:field");
-  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm1\\:out1 tobago-out");
+  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm1\\:out1 .form-control-plaintext");
   let form1SubmitFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm1\\:submit1");
   let alertFn = querySelectorAllFn("#page\\:messages .alert-danger label");
 
@@ -39,7 +39,7 @@ it("submit inner form 1 without violations", function (done) {
 it("submit inner form 2, violate required field", function (done) {
   let form2InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:in2\\:\\:field");
   let form2AlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:in2 .tobago-messages-container");
-  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:out2 tobago-out");
+  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:out2 .form-control-plaintext");
   let form2SubmitFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:submit2");
   let alertFn = querySelectorAllFn("#page\\:messages .alert-danger label");
   let form2OutputValue = form2OutputFn().textContent;
@@ -64,7 +64,7 @@ it("submit inner form 2, violate required field", function (done) {
 it("submit inner form 2 without violations", function (done) {
   let form2InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:in2\\:\\:field");
   let form2AlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:in2 .tobago-messages-container");
-  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:out2 tobago-out");
+  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:out2 .form-control-plaintext");
   let form2SubmitFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:submit2");
   let alertFn = querySelectorAllFn("#page\\:messages .alert-danger label");
 
@@ -84,10 +84,10 @@ it("submit inner form 2 without violations", function (done) {
 it("submit outer form, violate both required fields", function (done) {
   let form2InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:in2\\:\\:field");
   let form2AlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:in2 .tobago-messages-container");
-  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:out2 tobago-out");
+  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:out2 .form-control-plaintext");
   let outerFormInputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in\\:\\:field");
   let outerFormAlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in .tobago-messages-container");
-  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out tobago-out");
+  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out .form-control-plaintext");
   let outerFormSubmitFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:submit");
   let alertFn = querySelectorAllFn("#page\\:messages .alert-danger label");
   let form2OutputValue = form2OutputFn().textContent;
@@ -118,11 +118,11 @@ it("submit outer form, violate both required fields", function (done) {
 it("submit outer form, violate required field in form 2", function (done) {
   let form2InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:in2\\:\\:field");
   let form2AlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:in2 .tobago-messages-container");
-  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:out2 tobago-out");
+  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:out2 .form-control-plaintext");
   let form2SubmitFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:submit2");
   let outerFormInputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in\\:\\:field");
   let outerFormAlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in .tobago-messages-container");
-  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out tobago-out");
+  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out .form-control-plaintext");
   let outerFormSubmitFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:submit");
   let alertFn = querySelectorAllFn("#page\\:messages .alert-danger label");
   let form2OutputValue = form2OutputFn().textContent;
@@ -151,10 +151,10 @@ it("submit outer form, violate required field in form 2", function (done) {
 it("submit outer form, violate required field in outer form", function (done) {
   let form2InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:in2\\:\\:field");
   let form2AlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:in2 .tobago-messages-container");
-  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:out2 tobago-out");
+  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:out2 .form-control-plaintext");
   let outerFormInputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in\\:\\:field");
   let outerFormAlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in .tobago-messages-container");
-  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out tobago-out");
+  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out .form-control-plaintext");
   let outerFormSubmitFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:submit");
   let alertFn = querySelectorAllFn("#page\\:messages .alert-danger label");
   let form2OutputValue = form2OutputFn().textContent;
@@ -184,13 +184,13 @@ it("submit outer form, violate required field in outer form", function (done) {
 
 it("submit outer form without violations", function (done) {
   let form1InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm1\\:in1\\:\\:field");
-  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm1\\:out1 tobago-out");
+  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm1\\:out1 .form-control-plaintext");
   let form2InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:in2\\:\\:field");
   let form2AlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:in2 .tobago-messages-container");
-  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:out2 tobago-out");
+  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:innerForm2\\:out2 .form-control-plaintext");
   let outerFormInputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in\\:\\:field");
   let outerFormAlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in .tobago-messages-container");
-  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out tobago-out");
+  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out .form-control-plaintext");
   let outerFormSubmitFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:submit");
   let alertFn = querySelectorAllFn("#page\\:messages .alert-danger label");
 
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/30-concept/08-form/20-ajax/Ajax.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/30-concept/08-form/20-ajax/Ajax.test.js
index b6296b5..455d711 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/30-concept/08-form/20-ajax/Ajax.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/30-concept/08-form/20-ajax/Ajax.test.js
@@ -20,7 +20,7 @@ import {JasmineTestTool} from "/tobago/test/tobago-test-tool.js";
 
 it("submit inner form 1 without violations", function (done) {
   let form1InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:in1\\:\\:field");
-  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:out1 tobago-out");
+  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:out1 .form-control-plaintext");
   let form1SubmitFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:submit1");
   let alertFn = querySelectorAllFn("#page\\:messages .alert-danger label");
 
@@ -39,7 +39,7 @@ it("submit inner form 1 without violations", function (done) {
 it("submit inner form 2, violate required field", function (done) {
   let form2InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:in2\\:\\:field");
   let form2AlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:in2 .tobago-messages-container");
-  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:out2 tobago-out");
+  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:out2 .form-control-plaintext");
   let form2SubmitFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:submit2");
   let alertFn = querySelectorAllFn("#page\\:messages .alert-danger label");
   let form2OutputValue = form2OutputFn().textContent;
@@ -63,7 +63,7 @@ it("submit inner form 2, violate required field", function (done) {
 it("submit inner form 2 without violations", function (done) {
   let form2InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:in2\\:\\:field");
   let form2AlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:in2 .tobago-messages-container");
-  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:out2 tobago-out");
+  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:out2 .form-control-plaintext");
   let form2SubmitFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:submit2");
   let alertFn = querySelectorAllFn("#page\\:messages .alert-danger label");
 
@@ -82,13 +82,13 @@ it("submit inner form 2 without violations", function (done) {
 
 it("submit outer form, violate both required fields", function (done) {
   let form1InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:in1\\:\\:field");
-  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:out1 tobago-out");
+  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:out1 .form-control-plaintext");
   let form2InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:in2\\:\\:field");
   let form2AlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:in2 .tobago-messages-container");
-  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:out2 tobago-out");
+  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:out2 .form-control-plaintext");
   let outerFormInputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in\\:\\:field");
   let outerFormAlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in .tobago-messages-container");
-  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out tobago-out");
+  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out .form-control-plaintext");
   let outerFormSubmitFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:submit");
   let alertFn = querySelectorAllFn("#page\\:messages .alert-danger label");
   let form1OutputValue = form1OutputFn().textContent;
@@ -125,13 +125,13 @@ it("submit outer form, violate both required fields", function (done) {
 
 it("submit outer form, violate required field in form 2", function (done) {
   let form1InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:in1\\:\\:field");
-  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:out1 tobago-out");
+  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:out1 .form-control-plaintext");
   let form2InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:in2\\:\\:field");
   let form2AlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:in2 .tobago-messages-container");
-  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:out2 tobago-out");
+  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:out2 .form-control-plaintext");
   let outerFormInputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in\\:\\:field");
   let outerFormAlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in .tobago-messages-container");
-  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out tobago-out");
+  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out .form-control-plaintext");
   let outerFormSubmitFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:submit");
   let alertFn = querySelectorAllFn("#page\\:messages .alert-danger label");
   let form1OutputValue = form1OutputFn().textContent;
@@ -167,13 +167,13 @@ it("submit outer form, violate required field in form 2", function (done) {
 
 it("submit outer form, violate required field in outer form", function (done) {
   let form1InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:in1\\:\\:field");
-  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:out1 tobago-out");
+  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:out1 .form-control-plaintext");
   let form2InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:in2\\:\\:field");
   let form2AlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:in2 .tobago-messages-container");
-  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:out2 tobago-out");
+  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:out2 .form-control-plaintext");
   let outerFormInputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in\\:\\:field");
   let outerFormAlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in .tobago-messages-container");
-  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out tobago-out");
+  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out .form-control-plaintext");
   let outerFormSubmitFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:submit");
   let alertFn = querySelectorAllFn("#page\\:messages .alert-danger label");
   let form1OutputValue = form1OutputFn().textContent;
@@ -209,13 +209,13 @@ it("submit outer form, violate required field in outer form", function (done) {
 
 it("submit outer form without violations", function (done) {
   let form1InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:in1\\:\\:field");
-  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:out1 tobago-out");
+  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:out1 .form-control-plaintext");
   let form2InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:in2\\:\\:field");
   let form2AlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:in2 .tobago-messages-container");
-  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:out2 tobago-out");
+  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:out2 .form-control-plaintext");
   let outerFormInputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in\\:\\:field");
   let outerFormAlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in .tobago-messages-container");
-  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out tobago-out");
+  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out .form-control-plaintext");
   let outerFormSubmitFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:submit");
   let alertFn = querySelectorAllFn("#page\\:messages .alert-danger label");
 
@@ -248,12 +248,12 @@ it("submit outer form without violations", function (done) {
 
 it("submit inner forms, violate required field in form 2", function (done) {
   let form1InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:in1\\:\\:field");
-  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:out1 tobago-out");
+  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:out1 .form-control-plaintext");
   let form2InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:in2\\:\\:field");
   let form2AlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:in2 .tobago-messages-container");
-  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:out2 tobago-out");
+  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:out2 .form-control-plaintext");
   let outerFormInputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in\\:\\:field");
-  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out tobago-out");
+  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out .form-control-plaintext");
   let outerFormSubmitFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:submit");
   let submitInnerForms = querySelectorFn("#page\\:mainForm\\:outerForm\\:submitInnerForms");
   let alertFn = querySelectorAllFn("#page\\:messages .alert-danger label");
@@ -290,13 +290,13 @@ it("submit inner forms, violate required field in form 2", function (done) {
 
 it("submit inner forms without violations", function (done) {
   let form1InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:in1\\:\\:field");
-  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:out1 tobago-out");
+  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:out1 .form-control-plaintext");
   let form2InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:in2\\:\\:field");
   let form2AlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:in2 .tobago-messages-container");
-  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:out2 tobago-out");
+  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:out2 .form-control-plaintext");
   let outerFormInputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in\\:\\:field");
   let outerFormAlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in .tobago-messages-container");
-  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out tobago-out");
+  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out .form-control-plaintext");
   let outerFormSubmitFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:submit");
   let submitInnerForms = querySelectorFn("#page\\:mainForm\\:outerForm\\:submitInnerForms");
   let alertFn = querySelectorAllFn("#page\\:messages .alert-danger label");
@@ -332,13 +332,13 @@ it("submit inner forms without violations", function (done) {
 
 it("submit outer value, violate required field", function (done) {
   let form1InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:in1\\:\\:field");
-  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:out1 tobago-out");
+  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:out1 .form-control-plaintext");
   let form2InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:in2\\:\\:field");
   let form2AlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:in2 .tobago-messages-container");
-  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:out2 tobago-out");
+  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:out2 .form-control-plaintext");
   let outerFormInputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in\\:\\:field");
   let outerFormAlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in .tobago-messages-container");
-  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out tobago-out");
+  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out .form-control-plaintext");
   let outerFormSubmitFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:submit");
   let submitOuterValue = querySelectorFn("#page\\:mainForm\\:outerForm\\:submitOuterValue");
   let alertFn = querySelectorAllFn("#page\\:messages .alert-danger label");
@@ -375,13 +375,13 @@ it("submit outer value, violate required field", function (done) {
 
 it("submit outer value without violations", function (done) {
   let form1InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:in1\\:\\:field");
-  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:out1 tobago-out");
+  let form1OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form1\\:out1 .form-control-plaintext");
   let form2InputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:in2\\:\\:field");
   let form2AlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:in2 .tobago-messages-container");
-  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:out2 tobago-out");
+  let form2OutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:form2\\:out2 .form-control-plaintext");
   let outerFormInputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in\\:\\:field");
   let outerFormAlertFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:in .tobago-messages-container");
-  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out tobago-out");
+  let outerFormOutputFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:out .form-control-plaintext");
   let outerFormSubmitFn = querySelectorFn("#page\\:mainForm\\:outerForm\\:submit");
   let submitOuterValue = querySelectorFn("#page\\:mainForm\\:outerForm\\:submitOuterValue");
   let alertFn = querySelectorAllFn("#page\\:messages .alert-danger label");
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/30-concept/08-form/Form.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/30-concept/08-form/Form.test.js
index 243865b..c214773 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/30-concept/08-form/Form.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/30-concept/08-form/Form.test.js
@@ -21,8 +21,8 @@ import {JasmineTestTool} from "/tobago/test/tobago-test-tool.js";
 it("submit form 1", function (done) {
   let form1InputFieldFn = querySelectorFn("#page\\:mainForm\\:form1\\:in1\\:\\:field");
   let form2InputFieldFn = querySelectorFn("#page\\:mainForm\\:form2\\:in2\\:\\:field");
-  let form1OutputFieldFn = querySelectorFn("#page\\:mainForm\\:form1\\:out1 tobago-out");
-  let form2OutputFieldFn = querySelectorFn("#page\\:mainForm\\:form2\\:out2 tobago-out");
+  let form1OutputFieldFn = querySelectorFn("#page\\:mainForm\\:form1\\:out1 .form-control-plaintext");
+  let form2OutputFieldFn = querySelectorFn("#page\\:mainForm\\:form2\\:out2 .form-control-plaintext");
   let form1SubmitButtonFn = querySelectorFn("#page\\:mainForm\\:form1\\:submit1");
   let form2OutputFieldValue = form2OutputFieldFn().textContent;
 
@@ -43,8 +43,8 @@ it("submit form 1", function (done) {
 it("submit form 2", function (done) {
   let form1InputFieldFn = querySelectorFn("#page\\:mainForm\\:form1\\:in1\\:\\:field");
   let form2InputFieldFn = querySelectorFn("#page\\:mainForm\\:form2\\:in2\\:\\:field");
-  let form1OutputFieldFn = querySelectorFn("#page\\:mainForm\\:form1\\:out1 tobago-out");
-  let form2OutputFieldFn = querySelectorFn("#page\\:mainForm\\:form2\\:out2 tobago-out");
+  let form1OutputFieldFn = querySelectorFn("#page\\:mainForm\\:form1\\:out1 .form-control-plaintext");
+  let form2OutputFieldFn = querySelectorFn("#page\\:mainForm\\:form2\\:out2 .form-control-plaintext");
   let form2SubmitButtonFn = querySelectorFn("#page\\:mainForm\\:form2\\:submit2");
   let form1OutputFieldValue = form1OutputFieldFn().textContent;
 
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/30-concept/30-behavior/Behavior.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/30-concept/30-behavior/Behavior.test.js
index 96f3cd9..5c7083a 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/30-concept/30-behavior/Behavior.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/30-concept/30-behavior/Behavior.test.js
@@ -25,7 +25,7 @@ it("must be fixed first", function (done) {
 
 /*it("Ajax Input", function (done) {
   let ajaxInputFn = querySelectorFn("#page\\:mainForm\\:j_id_2g\\:\\:field");
-  let ajaxOutputFn = querySelectorFn("#page\\:mainForm\\:outAjax tobago-out");
+  let ajaxOutputFn = querySelectorFn("#page\\:mainForm\\:outAjax .form-control-plaintext");
 
   let test = new JasmineTestTool(done);
   test.do(() => ajaxInputFn().value = "Alice");
@@ -36,7 +36,7 @@ it("must be fixed first", function (done) {
 
 it("Event Input", function (done) {
   let eventInputFn = querySelectorFn("#page\\:mainForm\\:j_id_2k\\:\\:field");
-  let eventOutputFn = querySelectorFn("#page\\:mainForm\\:j_id_2m tobago-out");
+  let eventOutputFn = querySelectorFn("#page\\:mainForm\\:j_id_2m .form-control-plaintext");
 
   let test = new JasmineTestTool(done);
   test.do(() => eventInputFn().value = "Alice");
@@ -48,7 +48,7 @@ it("Event Input", function (done) {
 it("change the event name", function (done) {
   let ajaxFn = querySelectorFn("#page\\:mainForm\\:j_id_2p");
   let eventFn = querySelectorFn("#page\\:mainForm\\:j_id_2q");
-  let outCounterFn = querySelectorFn("#page\\:mainForm\\:outCounter tobago-out");
+  let outCounterFn = querySelectorFn("#page\\:mainForm\\:outCounter .form-control-plaintext");
   let counter = Number(outCounterFn().textContent);
 
   let test = new JasmineTestTool(done);
@@ -69,7 +69,7 @@ it("change the event name", function (done) {
 
 it("f:ajax and tc:event", function (done) {
   let submitFn = querySelectorFn("#page\\:mainForm\\:btnAjaxEvent");
-  let outFn = querySelectorFn("#page\\:mainForm\\:out tobago-out");
+  let outFn = querySelectorFn("#page\\:mainForm\\:out .form-control-plaintext");
 
   let test = new JasmineTestTool(done);
   test.setup(() => outFn().textContent === "Ajax",
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/4000-button-link/4050-ajax-dropdown/Ajax_Dropdown.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/4000-button-link/4050-ajax-dropdown/Ajax_Dropdown.test.js
index 63fca43..09dd8d9 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/4000-button-link/4050-ajax-dropdown/Ajax_Dropdown.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/4000-button-link/4050-ajax-dropdown/Ajax_Dropdown.test.js
@@ -23,7 +23,7 @@ it("Execute 'AJAX' entry in dropdown menu", function (done) {
   let dropdownMenuFn = querySelectorFn(".dropdown-menu[name=page\\:mainForm\\:dropdownButton]");
   let dropdownAjaxEntryFn = elementByIdFn("page:mainForm:ajaxEntry");
   let inputFn = elementByIdFn("page:mainForm:inputAjax::field");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:outputAjax tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:outputAjax .form-control-plaintext");
 
   const test = new JasmineTestTool(done);
   // no test.setup() because controller is @RequestScoped
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/40000-style/100-headings/Headings.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/40000-style/100-headings/Headings.test.js
index e82a7c1..c662ea7 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/40000-style/100-headings/Headings.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/40000-style/100-headings/Headings.test.js
@@ -75,7 +75,7 @@ function testFont(done, alinkFn, buttonlinkFn) {
 it("Ajax reload for section 2", function (done) {
   let reloadButtonFn = querySelectorFn("#page\\:mainForm\\:reloadSection2");
   let section2HeaderFn = querySelectorFn("#page\\:mainForm\\:levelTwoSection h3");
-  let timestampFn = querySelectorFn("#page\\:mainForm\\:timestamp tobago-out");
+  let timestampFn = querySelectorFn("#page\\:mainForm\\:timestamp .form-control-plaintext");
   let firstTimestamp = timestampFn().textContent;
 
   let test = new JasmineTestTool(done);
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/4600-gridLayout/90-style-tag/Style_Tag.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/4600-gridLayout/90-style-tag/Style_Tag.test.js
index d75ea32..c825fe9 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/4600-gridLayout/90-style-tag/Style_Tag.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/4600-gridLayout/90-style-tag/Style_Tag.test.js
@@ -20,8 +20,8 @@ import {elementByIdFn, querySelectorFn} from "/script/tobago-test.js";
 
 it("Style tag inside grid layout", function (done) {
   let submitFn = elementByIdFn("page:mainForm:submitButton");
-  let outputFn = querySelectorFn("#page\\:mainForm\\:output tobago-out");
-  let timestampFn = querySelectorFn("#page\\:mainForm\\:timestamp tobago-out");
+  let outputFn = querySelectorFn("#page\\:mainForm\\:output .form-control-plaintext");
+  let timestampFn = querySelectorFn("#page\\:mainForm\\:timestamp .form-control-plaintext");
   let timestamp;
 
   let test = new JasmineTestTool(done);
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/50000-java/30-ajax-special-character/Ajax_Special_Character.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/50000-java/30-ajax-special-character/Ajax_Special_Character.test.js
index 21dbc01..4cd2583 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/50000-java/30-ajax-special-character/Ajax_Special_Character.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/50000-java/30-ajax-special-character/Ajax_Special_Character.test.js
@@ -19,9 +19,9 @@ import {querySelectorFn} from "/script/tobago-test.js";
 import {JasmineTestTool} from "/tobago/test/tobago-test-tool.js";
 
 it("ajax execute", function (done) {
-  let timestampFn = querySelectorFn("#page\\:mainForm\\:timestamp tobago-out");
-  let textFn = querySelectorFn("#page\\:mainForm\\:outText tobago-out");
-  let tipFn = querySelectorFn("#page\\:mainForm\\:outTip tobago-out");
+  let timestampFn = querySelectorFn("#page\\:mainForm\\:timestamp .form-control-plaintext");
+  let textFn = querySelectorFn("#page\\:mainForm\\:outText .form-control-plaintext");
+  let tipFn = querySelectorFn("#page\\:mainForm\\:outTip .form-control-plaintext");
   let buttonFn = querySelectorFn("#page\\:mainForm\\:ajaxButton");
 
   let timestampValue = timestampFn().textContent;