WebForms.java Update to WebFormsJS 1.6

Good news for Java developers: You can now experience WebForms Core technology in Java. Elanat has update the WebForms class for Java with the latest version of WebFormsJS, 1.6. The WebForms class on the server and the WebFormsJS library on the client constitute the WebForms Core technology.

By using WebForms Core technology, you don’t need to develop a front-end, because all HTML tags are managed from the server.

The video below demonstrates the functionality of WebForms Core technology for content management.

Download Links

You can download the WebForms classes for the Java programming language from the link below.

WebForms.java

To download the latest version of WebFormsJS, visit the following link.

Download WebFormsJS

Example: Using WebForms Core in Spring Boot

Below is an example demonstrating how to use Webforms Core with Spring Boot. In this example, the background color and text color of the “form” tag will change to the colors selected in the TextBoxes after clicking the button.

In the view below, after the “form” tag, there is a “p” tag that holds the value of the “WebFormsTag” variable. The value of the “WebFormsTag” variable will be set through the controller.

View (default.html file)

<span><!DOCTYPE html></span>
<span><html></span>
<span><head></span>
<span><title></span>Using WebForms Core<span></title></span>
<span><script </span><span>type=</span><span>"text/javascript"</span> <span>src=</span><span>"/script/web-forms.js"</span><span>></script></span>
<span></head></span>
<span><body></span>
<span><h1></span>WebForms Core Technology in JAVA<span></h1></span>
<span><form</span> <span>method=</span><span>"post"</span> <span>action=</span><span>"/"</span> <span>></span>
<span><label</span> <span>for=</span><span>"TextColor"</span><span>></span>Set Text Color<span></label></span>
<span><input</span> <span>name=</span><span>"TextColor"</span> <span>id=</span><span>"TextColor"</span> <span>type=</span><span>"text"</span> <span>/><br><br></span>
<span><label</span> <span>for=</span><span>"BackgroundColor"</span><span>></span>Set Background Color<span></label></span>
<span><input</span> <span>name=</span><span>"BackgroundColor"</span> <span>id=</span><span>"BackgroundColor"</span> <span>type=</span><span>"text"</span> <span>/><br><br></span>
<span><input</span> <span>name=</span><span>"Button"</span> <span>type=</span><span>"submit"</span> <span>value=</span><span>"Click to send data"</span> <span>/></span>
<span></form></span>
<span><p</span> <span>th:utext=</span><span>"${WebFormsTag}"</span><span>></p></span>
<span></body></span>
<span></html></span>
<span><!DOCTYPE html></span>
<span><html></span>
<span><head></span>
  <span><title></span>Using WebForms Core<span></title></span>
  <span><script </span><span>type=</span><span>"text/javascript"</span> <span>src=</span><span>"/script/web-forms.js"</span><span>></script></span>
<span></head></span>
<span><body></span>
    <span><h1></span>WebForms Core Technology in JAVA<span></h1></span>
    <span><form</span> <span>method=</span><span>"post"</span> <span>action=</span><span>"/"</span> <span>></span>
        <span><label</span> <span>for=</span><span>"TextColor"</span><span>></span>Set Text Color<span></label></span>
        <span><input</span> <span>name=</span><span>"TextColor"</span> <span>id=</span><span>"TextColor"</span> <span>type=</span><span>"text"</span> <span>/><br><br></span>
        <span><label</span> <span>for=</span><span>"BackgroundColor"</span><span>></span>Set Background Color<span></label></span>
        <span><input</span> <span>name=</span><span>"BackgroundColor"</span> <span>id=</span><span>"BackgroundColor"</span> <span>type=</span><span>"text"</span> <span>/><br><br></span>
        <span><input</span> <span>name=</span><span>"Button"</span> <span>type=</span><span>"submit"</span> <span>value=</span><span>"Click to send data"</span> <span>/></span>
    <span></form></span>
    <span><p</span> <span>th:utext=</span><span>"${WebFormsTag}"</span><span>></p></span>
<span></body></span>
<span></html></span>
<!DOCTYPE html> <html> <head> <title>Using WebForms Core</title> <script type="text/javascript" src="/script/web-forms.js"></script> </head> <body> <h1>WebForms Core Technology in JAVA</h1> <form method="post" action="/" > <label for="TextColor">Set Text Color</label> <input name="TextColor" id="TextColor" type="text" /><br><br> <label for="BackgroundColor">Set Background Color</label> <input name="BackgroundColor" id="BackgroundColor" type="text" /><br><br> <input name="Button" type="submit" value="Click to send data" /> </form> <p th:utext="${WebFormsTag}"></p> </body> </html>

Enter fullscreen mode Exit fullscreen mode

This controller class has a three method; Each method handles different types of HTTP requests and processes the input data using the WebFormsCore library to dynamically update the form on the webpage.

Controller

<span>package</span> <span>com.example.demo</span><span>;</span>
<span>import</span> <span>org.springframework.http.ResponseEntity</span><span>;</span>
<span>import</span> <span>org.springframework.stereotype.Controller</span><span>;</span>
<span>import</span> <span>org.springframework.ui.Model</span><span>;</span>
<span>import</span> <span>org.springframework.web.bind.annotation.GetMapping</span><span>;</span>
<span>import</span> <span>org.springframework.web.bind.annotation.PostMapping</span><span>;</span>
<span>import</span> <span>org.springframework.web.bind.annotation.RequestParam</span><span>;</span>
<span>import</span> <span>org.springframework.web.bind.annotation.ResponseBody</span><span>;</span>
<span>import</span> <span>WebFormsCore.WebForms</span><span>;</span>
<span>import</span> <span>WebFormsCore.InputPlace</span><span>;</span>
<span>import</span> <span>WebFormsCore.Fetch</span><span>;</span>
<span>import</span> <span>WebFormsCore.HtmlEvent</span><span>;</span>
<span>@Controller</span>
<span>public</span> <span>class</span> <span>MyController</span> <span>{</span>
<span>@GetMapping</span><span>(</span><span>"/"</span><span>)</span>
<span>public</span> <span>String</span> <span>PageLoad</span><span>(</span><span>Model</span> <span>model</span><span>)</span> <span>{</span>
<span>WebForms</span> <span>form</span> <span>=</span> <span>new</span> <span>WebForms</span><span>();</span>
<span>form</span><span>.</span><span>setGetEvent</span><span>(</span><span>"BackgroundColor"</span><span>,</span> <span>HtmlEvent</span><span>.</span><span>OnKeyUp</span><span>,</span> <span>"/set-color"</span><span>);</span>
<span>form</span><span>.</span><span>setGetEvent</span><span>(</span><span>"TextColor"</span><span>,</span> <span>HtmlEvent</span><span>.</span><span>OnKeyUp</span><span>,</span> <span>"/set-color"</span><span>);</span>
<span>model</span><span>.</span><span>addAttribute</span><span>(</span><span>"WebFormsTag"</span><span>,</span> <span>form</span><span>.</span><span>exportToWebFormsTag</span><span>(</span><span>null</span><span>));</span>
<span>return</span> <span>"default"</span><span>;</span> <span>// This will map to default.html</span>
<span>}</span>
<span>@GetMapping</span><span>(</span><span>"/set-color"</span><span>)</span>
<span>public</span> <span>ResponseEntity</span><span><</span><span>String</span><span>></span> <span>PageLoad</span><span>(</span><span>@RequestParam</span><span>(</span><span>name</span> <span>=</span> <span>"set-text-color"</span><span>,</span> <span>required</span> <span>=</span> <span>false</span><span>)</span> <span>String</span> <span>Color</span><span>)</span> <span>{</span>
<span>WebForms</span> <span>form</span> <span>=</span> <span>new</span> <span>WebForms</span><span>();</span>
<span>form</span><span>.</span><span>saveValue</span><span>(</span><span>"BackgroundColor"</span><span>,</span><span>"*"</span><span>);</span>
<span>form</span><span>.</span><span>setBackgroundColor</span><span>(</span><span>"BackgroundColor"</span><span>,</span> <span>Fetch</span><span>.</span><span>saved</span><span>(</span><span>"*"</span><span>));</span>
<span>form</span><span>.</span><span>saveValue</span><span>(</span><span>"TextColor"</span><span>,</span><span>"*"</span><span>);</span>
<span>form</span><span>.</span><span>setTextColor</span><span>(</span><span>"TextColor"</span><span>,</span> <span>Fetch</span><span>.</span><span>saved</span><span>(</span><span>"*"</span><span>));</span>
<span>form</span><span>.</span><span>setCache</span><span>();</span>
<span>return</span> <span>ResponseEntity</span><span>.</span><span>ok</span><span>(</span><span>form</span><span>.</span><span>response</span><span>());</span>
<span>}</span>
<span>@PostMapping</span><span>(</span><span>"/"</span><span>)</span>
<span>@ResponseBody</span>
<span>public</span> <span>String</span> <span>PageLoad</span><span>(</span><span>@RequestParam</span><span>(</span><span>"BackgroundColor"</span><span>)</span> <span>String</span> <span>backgroundColor</span><span>,</span> <span>@RequestParam</span><span>(</span><span>"TextColor"</span><span>)</span> <span>String</span> <span>textColor</span><span>)</span> <span>{</span>
<span>WebForms</span> <span>form</span> <span>=</span> <span>new</span> <span>WebForms</span><span>();</span>
<span>form</span><span>.</span><span>setBackgroundColor</span><span>(</span><span>InputPlace</span><span>.</span><span>tag</span><span>(</span><span>"form"</span><span>),</span> <span>backgroundColor</span><span>);</span>
<span>form</span><span>.</span><span>setTextColor</span><span>(</span><span>InputPlace</span><span>.</span><span>tag</span><span>(</span><span>"form"</span><span>),</span> <span>textColor</span><span>);</span>
<span>form</span><span>.</span><span>setDisabled</span><span>(</span><span>InputPlace</span><span>.</span><span>name</span><span>(</span><span>"Button"</span><span>),</span> <span>true</span><span>);</span>
<span>form</span><span>.</span><span>addTag</span><span>(</span><span>InputPlace</span><span>.</span><span>tag</span><span>(</span><span>"form"</span><span>),</span> <span>"h3"</span><span>,</span> <span>null</span><span>);</span>
<span>form</span><span>.</span><span>setText</span><span>(</span><span>InputPlace</span><span>.</span><span>tag</span><span>(</span><span>"h3"</span><span>),</span> <span>"The background color and the text color was set!"</span><span>);</span>
<span>form</span><span>.</span><span>delete</span><span>(</span><span>InputPlace</span><span>.</span><span>tag</span><span>(</span><span>"h3"</span><span>));</span>
<span>form</span><span>.</span><span>assignDelay</span><span>(</span><span>3</span><span>,</span> <span>-</span><span>1</span><span>);</span>
<span>return</span> <span>form</span><span>.</span><span>response</span><span>();</span>
<span>}</span>
<span>}</span>
<span>package</span> <span>com.example.demo</span><span>;</span>

<span>import</span> <span>org.springframework.http.ResponseEntity</span><span>;</span>
<span>import</span> <span>org.springframework.stereotype.Controller</span><span>;</span>
<span>import</span> <span>org.springframework.ui.Model</span><span>;</span>
<span>import</span> <span>org.springframework.web.bind.annotation.GetMapping</span><span>;</span>
<span>import</span> <span>org.springframework.web.bind.annotation.PostMapping</span><span>;</span>
<span>import</span> <span>org.springframework.web.bind.annotation.RequestParam</span><span>;</span>
<span>import</span> <span>org.springframework.web.bind.annotation.ResponseBody</span><span>;</span>

<span>import</span> <span>WebFormsCore.WebForms</span><span>;</span>
<span>import</span> <span>WebFormsCore.InputPlace</span><span>;</span>
<span>import</span> <span>WebFormsCore.Fetch</span><span>;</span>
<span>import</span> <span>WebFormsCore.HtmlEvent</span><span>;</span>

<span>@Controller</span>
<span>public</span> <span>class</span> <span>MyController</span> <span>{</span>

    <span>@GetMapping</span><span>(</span><span>"/"</span><span>)</span>
    <span>public</span> <span>String</span> <span>PageLoad</span><span>(</span><span>Model</span> <span>model</span><span>)</span> <span>{</span>

        <span>WebForms</span> <span>form</span> <span>=</span> <span>new</span> <span>WebForms</span><span>();</span>

        <span>form</span><span>.</span><span>setGetEvent</span><span>(</span><span>"BackgroundColor"</span><span>,</span> <span>HtmlEvent</span><span>.</span><span>OnKeyUp</span><span>,</span> <span>"/set-color"</span><span>);</span>
        <span>form</span><span>.</span><span>setGetEvent</span><span>(</span><span>"TextColor"</span><span>,</span> <span>HtmlEvent</span><span>.</span><span>OnKeyUp</span><span>,</span> <span>"/set-color"</span><span>);</span>

        <span>model</span><span>.</span><span>addAttribute</span><span>(</span><span>"WebFormsTag"</span><span>,</span> <span>form</span><span>.</span><span>exportToWebFormsTag</span><span>(</span><span>null</span><span>));</span>

        <span>return</span> <span>"default"</span><span>;</span> <span>// This will map to default.html</span>
    <span>}</span>

    <span>@GetMapping</span><span>(</span><span>"/set-color"</span><span>)</span>
    <span>public</span> <span>ResponseEntity</span><span><</span><span>String</span><span>></span> <span>PageLoad</span><span>(</span><span>@RequestParam</span><span>(</span><span>name</span> <span>=</span> <span>"set-text-color"</span><span>,</span> <span>required</span> <span>=</span> <span>false</span><span>)</span> <span>String</span> <span>Color</span><span>)</span> <span>{</span>

        <span>WebForms</span> <span>form</span> <span>=</span> <span>new</span> <span>WebForms</span><span>();</span>

        <span>form</span><span>.</span><span>saveValue</span><span>(</span><span>"BackgroundColor"</span><span>,</span><span>"*"</span><span>);</span>
        <span>form</span><span>.</span><span>setBackgroundColor</span><span>(</span><span>"BackgroundColor"</span><span>,</span> <span>Fetch</span><span>.</span><span>saved</span><span>(</span><span>"*"</span><span>));</span>
        <span>form</span><span>.</span><span>saveValue</span><span>(</span><span>"TextColor"</span><span>,</span><span>"*"</span><span>);</span>
        <span>form</span><span>.</span><span>setTextColor</span><span>(</span><span>"TextColor"</span><span>,</span> <span>Fetch</span><span>.</span><span>saved</span><span>(</span><span>"*"</span><span>));</span>
        <span>form</span><span>.</span><span>setCache</span><span>();</span>

        <span>return</span> <span>ResponseEntity</span><span>.</span><span>ok</span><span>(</span><span>form</span><span>.</span><span>response</span><span>());</span>
    <span>}</span>

    <span>@PostMapping</span><span>(</span><span>"/"</span><span>)</span>
    <span>@ResponseBody</span>
    <span>public</span> <span>String</span> <span>PageLoad</span><span>(</span><span>@RequestParam</span><span>(</span><span>"BackgroundColor"</span><span>)</span> <span>String</span> <span>backgroundColor</span><span>,</span> <span>@RequestParam</span><span>(</span><span>"TextColor"</span><span>)</span> <span>String</span> <span>textColor</span><span>)</span> <span>{</span>

        <span>WebForms</span> <span>form</span> <span>=</span> <span>new</span> <span>WebForms</span><span>();</span>

        <span>form</span><span>.</span><span>setBackgroundColor</span><span>(</span><span>InputPlace</span><span>.</span><span>tag</span><span>(</span><span>"form"</span><span>),</span> <span>backgroundColor</span><span>);</span>
        <span>form</span><span>.</span><span>setTextColor</span><span>(</span><span>InputPlace</span><span>.</span><span>tag</span><span>(</span><span>"form"</span><span>),</span> <span>textColor</span><span>);</span>
        <span>form</span><span>.</span><span>setDisabled</span><span>(</span><span>InputPlace</span><span>.</span><span>name</span><span>(</span><span>"Button"</span><span>),</span> <span>true</span><span>);</span>
        <span>form</span><span>.</span><span>addTag</span><span>(</span><span>InputPlace</span><span>.</span><span>tag</span><span>(</span><span>"form"</span><span>),</span> <span>"h3"</span><span>,</span> <span>null</span><span>);</span>
        <span>form</span><span>.</span><span>setText</span><span>(</span><span>InputPlace</span><span>.</span><span>tag</span><span>(</span><span>"h3"</span><span>),</span> <span>"The background color and the text color was set!"</span><span>);</span>
        <span>form</span><span>.</span><span>delete</span><span>(</span><span>InputPlace</span><span>.</span><span>tag</span><span>(</span><span>"h3"</span><span>));</span>
        <span>form</span><span>.</span><span>assignDelay</span><span>(</span><span>3</span><span>,</span> <span>-</span><span>1</span><span>);</span>

        <span>return</span> <span>form</span><span>.</span><span>response</span><span>();</span> 
    <span>}</span>
<span>}</span>
package com.example.demo; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import WebFormsCore.WebForms; import WebFormsCore.InputPlace; import WebFormsCore.Fetch; import WebFormsCore.HtmlEvent; @Controller public class MyController { @GetMapping("/") public String PageLoad(Model model) { WebForms form = new WebForms(); form.setGetEvent("BackgroundColor", HtmlEvent.OnKeyUp, "/set-color"); form.setGetEvent("TextColor", HtmlEvent.OnKeyUp, "/set-color"); model.addAttribute("WebFormsTag", form.exportToWebFormsTag(null)); return "default"; // This will map to default.html } @GetMapping("/set-color") public ResponseEntity<String> PageLoad(@RequestParam(name = "set-text-color", required = false) String Color) { WebForms form = new WebForms(); form.saveValue("BackgroundColor","*"); form.setBackgroundColor("BackgroundColor", Fetch.saved("*")); form.saveValue("TextColor","*"); form.setTextColor("TextColor", Fetch.saved("*")); form.setCache(); return ResponseEntity.ok(form.response()); } @PostMapping("/") @ResponseBody public String PageLoad(@RequestParam("BackgroundColor") String backgroundColor, @RequestParam("TextColor") String textColor) { WebForms form = new WebForms(); form.setBackgroundColor(InputPlace.tag("form"), backgroundColor); form.setTextColor(InputPlace.tag("form"), textColor); form.setDisabled(InputPlace.name("Button"), true); form.addTag(InputPlace.tag("form"), "h3", null); form.setText(InputPlace.tag("h3"), "The background color and the text color was set!"); form.delete(InputPlace.tag("h3")); form.assignDelay(3, -1); return form.response(); } }

Enter fullscreen mode Exit fullscreen mode

The GIF image below shows how the above code works.

My first experience with Spring Boot

As someone who first created a simple MVC example with the Spring Boot framework, I must say that the crucial aspect of this framework is Mapping. In this example, I specified the “/set-color” path in the SetGetEvent method in the WebForms class and coded the necessary commands using @GetMapping("/set-color").

Initialization

First, we need to import the classes required in the WebForms Core technology. WebForms is the main class in this technology and the other classes play a supporting role.

<span>import</span> <span>WebFormsCore.WebForms</span><span>;</span>
<span>import</span> <span>WebFormsCore.InputPlace</span><span>;</span>
<span>import</span> <span>WebFormsCore.Fetch</span><span>;</span>
<span>import</span> <span>WebFormsCore.HtmlEvent</span><span>;</span>
<span>import</span> <span>WebFormsCore.WebForms</span><span>;</span>
<span>import</span> <span>WebFormsCore.InputPlace</span><span>;</span>
<span>import</span> <span>WebFormsCore.Fetch</span><span>;</span>
<span>import</span> <span>WebFormsCore.HtmlEvent</span><span>;</span>
import WebFormsCore.WebForms; import WebFormsCore.InputPlace; import WebFormsCore.Fetch; import WebFormsCore.HtmlEvent;

Enter fullscreen mode Exit fullscreen mode

GET request (Initial Page Load):

<span>@GetMapping</span><span>(</span><span>"/"</span><span>)</span>
<span>public</span> <span>String</span> <span>PageLoad</span><span>(</span><span>Model</span> <span>model</span><span>)</span> <span>{</span>
<span>WebForms</span> <span>form</span> <span>=</span> <span>new</span> <span>WebForms</span><span>();</span>
<span>form</span><span>.</span><span>setGetEvent</span><span>(</span><span>"BackgroundColor"</span><span>,</span> <span>HtmlEvent</span><span>.</span><span>OnKeyUp</span><span>,</span> <span>"/set-color"</span><span>);</span>
<span>form</span><span>.</span><span>setGetEvent</span><span>(</span><span>"TextColor"</span><span>,</span> <span>HtmlEvent</span><span>.</span><span>OnKeyUp</span><span>,</span> <span>"/set-color"</span><span>);</span>
<span>model</span><span>.</span><span>addAttribute</span><span>(</span><span>"WebFormsTag"</span><span>,</span> <span>form</span><span>.</span><span>exportToWebFormsTag</span><span>(</span><span>null</span><span>));</span>
<span>return</span> <span>"default"</span><span>;</span> <span>// This will map to default.html</span>
<span>}</span>
<span>@GetMapping</span><span>(</span><span>"/"</span><span>)</span>
<span>public</span> <span>String</span> <span>PageLoad</span><span>(</span><span>Model</span> <span>model</span><span>)</span> <span>{</span>

    <span>WebForms</span> <span>form</span> <span>=</span> <span>new</span> <span>WebForms</span><span>();</span>

    <span>form</span><span>.</span><span>setGetEvent</span><span>(</span><span>"BackgroundColor"</span><span>,</span> <span>HtmlEvent</span><span>.</span><span>OnKeyUp</span><span>,</span> <span>"/set-color"</span><span>);</span>
    <span>form</span><span>.</span><span>setGetEvent</span><span>(</span><span>"TextColor"</span><span>,</span> <span>HtmlEvent</span><span>.</span><span>OnKeyUp</span><span>,</span> <span>"/set-color"</span><span>);</span>

    <span>model</span><span>.</span><span>addAttribute</span><span>(</span><span>"WebFormsTag"</span><span>,</span> <span>form</span><span>.</span><span>exportToWebFormsTag</span><span>(</span><span>null</span><span>));</span>
    <span>return</span> <span>"default"</span><span>;</span> <span>// This will map to default.html</span>
<span>}</span>
@GetMapping("/") public String PageLoad(Model model) { WebForms form = new WebForms(); form.setGetEvent("BackgroundColor", HtmlEvent.OnKeyUp, "/set-color"); form.setGetEvent("TextColor", HtmlEvent.OnKeyUp, "/set-color"); model.addAttribute("WebFormsTag", form.exportToWebFormsTag(null)); return "default"; // This will map to default.html }

Enter fullscreen mode Exit fullscreen mode

PageLoad Method with GetMapping("/")

  • Initializes a new WebForms instance.
  • Sets events for BackgroundColor and TextColor inputs that trigger the “/set-color” path on the OnKeyUp event.
  • Exports the WebForms data to the model attribute WebFormsTag.
  • Returns the view name “default” which maps to “default.html”.

Key up event

<span>@GetMapping</span><span>(</span><span>"/set-color"</span><span>)</span>
<span>public</span> <span>ResponseEntity</span><span><</span><span>String</span><span>></span> <span>PageLoad</span><span>(</span><span>@RequestParam</span><span>(</span><span>name</span> <span>=</span> <span>"set-text-color"</span><span>,</span> <span>required</span> <span>=</span> <span>false</span><span>)</span> <span>String</span> <span>Color</span><span>)</span> <span>{</span>
<span>WebForms</span> <span>form</span> <span>=</span> <span>new</span> <span>WebForms</span><span>();</span>
<span>form</span><span>.</span><span>saveValue</span><span>(</span><span>"BackgroundColor"</span><span>,</span><span>"*"</span><span>);</span>
<span>form</span><span>.</span><span>setBackgroundColor</span><span>(</span><span>"BackgroundColor"</span><span>,</span> <span>Fetch</span><span>.</span><span>saved</span><span>(</span><span>"*"</span><span>));</span>
<span>form</span><span>.</span><span>saveValue</span><span>(</span><span>"TextColor"</span><span>,</span><span>"*"</span><span>);</span>
<span>form</span><span>.</span><span>setTextColor</span><span>(</span><span>"TextColor"</span><span>,</span> <span>Fetch</span><span>.</span><span>saved</span><span>(</span><span>"*"</span><span>));</span>
<span>form</span><span>.</span><span>setCache</span><span>();</span>
<span>return</span> <span>ResponseEntity</span><span>.</span><span>ok</span><span>(</span><span>form</span><span>.</span><span>response</span><span>());</span>
<span>}</span>
<span>@GetMapping</span><span>(</span><span>"/set-color"</span><span>)</span>
<span>public</span> <span>ResponseEntity</span><span><</span><span>String</span><span>></span> <span>PageLoad</span><span>(</span><span>@RequestParam</span><span>(</span><span>name</span> <span>=</span> <span>"set-text-color"</span><span>,</span> <span>required</span> <span>=</span> <span>false</span><span>)</span> <span>String</span> <span>Color</span><span>)</span> <span>{</span>

    <span>WebForms</span> <span>form</span> <span>=</span> <span>new</span> <span>WebForms</span><span>();</span>

    <span>form</span><span>.</span><span>saveValue</span><span>(</span><span>"BackgroundColor"</span><span>,</span><span>"*"</span><span>);</span>
    <span>form</span><span>.</span><span>setBackgroundColor</span><span>(</span><span>"BackgroundColor"</span><span>,</span> <span>Fetch</span><span>.</span><span>saved</span><span>(</span><span>"*"</span><span>));</span>
    <span>form</span><span>.</span><span>saveValue</span><span>(</span><span>"TextColor"</span><span>,</span><span>"*"</span><span>);</span>
    <span>form</span><span>.</span><span>setTextColor</span><span>(</span><span>"TextColor"</span><span>,</span> <span>Fetch</span><span>.</span><span>saved</span><span>(</span><span>"*"</span><span>));</span>
    <span>form</span><span>.</span><span>setCache</span><span>();</span>

    <span>return</span> <span>ResponseEntity</span><span>.</span><span>ok</span><span>(</span><span>form</span><span>.</span><span>response</span><span>());</span>
<span>}</span>
@GetMapping("/set-color") public ResponseEntity<String> PageLoad(@RequestParam(name = "set-text-color", required = false) String Color) { WebForms form = new WebForms(); form.saveValue("BackgroundColor","*"); form.setBackgroundColor("BackgroundColor", Fetch.saved("*")); form.saveValue("TextColor","*"); form.setTextColor("TextColor", Fetch.saved("*")); form.setCache(); return ResponseEntity.ok(form.response()); }

Enter fullscreen mode Exit fullscreen mode

PageLoad Method with GetMapping("/set-color")

  • Initializes a new WebForms instance.
  • Saves and fetches values for BackgroundColor and TextColor inputs.
  • Sets the background and text colors based on saved values.
  • Caches the changes and returns the response as a String.

Note: The general structure of WebForms Core technology is that the client makes a request to the server online and the server sends commands to the client. However, this technology also supports offline mode. In this method, the tag values ​​are first saved and then those values ​​are retrieved again without the need for server data. Calling the setCache method causes the client to make a request to the server only once. Offline mode in WebForms Core technology provides a high-level structure like React Server Components.

Form submit

<span>@PostMapping</span><span>(</span><span>"/"</span><span>)</span>
<span>@ResponseBody</span>
<span>public</span> <span>String</span> <span>PageLoad</span><span>(</span><span>@RequestParam</span><span>(</span><span>"BackgroundColor"</span><span>)</span> <span>String</span> <span>backgroundColor</span><span>,</span> <span>@RequestParam</span><span>(</span><span>"TextColor"</span><span>)</span> <span>String</span> <span>textColor</span><span>)</span> <span>{</span>
<span>WebForms</span> <span>form</span> <span>=</span> <span>new</span> <span>WebForms</span><span>();</span>
<span>form</span><span>.</span><span>setBackgroundColor</span><span>(</span><span>InputPlace</span><span>.</span><span>tag</span><span>(</span><span>"form"</span><span>),</span> <span>backgroundColor</span><span>);</span>
<span>form</span><span>.</span><span>setTextColor</span><span>(</span><span>InputPlace</span><span>.</span><span>tag</span><span>(</span><span>"form"</span><span>),</span> <span>textColor</span><span>);</span>
<span>form</span><span>.</span><span>setDisabled</span><span>(</span><span>InputPlace</span><span>.</span><span>name</span><span>(</span><span>"Button"</span><span>),</span> <span>true</span><span>);</span>
<span>form</span><span>.</span><span>addTag</span><span>(</span><span>InputPlace</span><span>.</span><span>tag</span><span>(</span><span>"form"</span><span>),</span> <span>"h3"</span><span>,</span> <span>null</span><span>);</span>
<span>form</span><span>.</span><span>setText</span><span>(</span><span>InputPlace</span><span>.</span><span>tag</span><span>(</span><span>"h3"</span><span>),</span> <span>"The background color and the text color was set!"</span><span>);</span>
<span>form</span><span>.</span><span>delete</span><span>(</span><span>InputPlace</span><span>.</span><span>tag</span><span>(</span><span>"h3"</span><span>));</span>
<span>form</span><span>.</span><span>assignDelay</span><span>(</span><span>3</span><span>,</span> <span>-</span><span>1</span><span>);</span>
<span>return</span> <span>form</span><span>.</span><span>response</span><span>();</span>
<span>}</span>
<span>@PostMapping</span><span>(</span><span>"/"</span><span>)</span>
<span>@ResponseBody</span>
<span>public</span> <span>String</span> <span>PageLoad</span><span>(</span><span>@RequestParam</span><span>(</span><span>"BackgroundColor"</span><span>)</span> <span>String</span> <span>backgroundColor</span><span>,</span> <span>@RequestParam</span><span>(</span><span>"TextColor"</span><span>)</span> <span>String</span> <span>textColor</span><span>)</span> <span>{</span>

    <span>WebForms</span> <span>form</span> <span>=</span> <span>new</span> <span>WebForms</span><span>();</span>

    <span>form</span><span>.</span><span>setBackgroundColor</span><span>(</span><span>InputPlace</span><span>.</span><span>tag</span><span>(</span><span>"form"</span><span>),</span> <span>backgroundColor</span><span>);</span>
    <span>form</span><span>.</span><span>setTextColor</span><span>(</span><span>InputPlace</span><span>.</span><span>tag</span><span>(</span><span>"form"</span><span>),</span> <span>textColor</span><span>);</span>
    <span>form</span><span>.</span><span>setDisabled</span><span>(</span><span>InputPlace</span><span>.</span><span>name</span><span>(</span><span>"Button"</span><span>),</span> <span>true</span><span>);</span>
    <span>form</span><span>.</span><span>addTag</span><span>(</span><span>InputPlace</span><span>.</span><span>tag</span><span>(</span><span>"form"</span><span>),</span> <span>"h3"</span><span>,</span> <span>null</span><span>);</span>
    <span>form</span><span>.</span><span>setText</span><span>(</span><span>InputPlace</span><span>.</span><span>tag</span><span>(</span><span>"h3"</span><span>),</span> <span>"The background color and the text color was set!"</span><span>);</span>
    <span>form</span><span>.</span><span>delete</span><span>(</span><span>InputPlace</span><span>.</span><span>tag</span><span>(</span><span>"h3"</span><span>));</span>
    <span>form</span><span>.</span><span>assignDelay</span><span>(</span><span>3</span><span>,</span> <span>-</span><span>1</span><span>);</span>

    <span>return</span> <span>form</span><span>.</span><span>response</span><span>();</span> 
<span>}</span>
@PostMapping("/") @ResponseBody public String PageLoad(@RequestParam("BackgroundColor") String backgroundColor, @RequestParam("TextColor") String textColor) { WebForms form = new WebForms(); form.setBackgroundColor(InputPlace.tag("form"), backgroundColor); form.setTextColor(InputPlace.tag("form"), textColor); form.setDisabled(InputPlace.name("Button"), true); form.addTag(InputPlace.tag("form"), "h3", null); form.setText(InputPlace.tag("h3"), "The background color and the text color was set!"); form.delete(InputPlace.tag("h3")); form.assignDelay(3, -1); return form.response(); }

Enter fullscreen mode Exit fullscreen mode

PageLoad Method with PostMapping("/")

  • Takes BackgroundColor and TextColor as parameters.
  • Sets the background and text colors of the form based on the inputs.
  • Disables the submit button (“Button”).
  • Adds and deletes a temporary heading (“h3”) with a message.
  • Sets a delay for the next action.
  • Returns the response as a String.

Note: Please note that when the HTML page is requested for the first time, if you are using the WebForms class, use the exportToWebFormsTag method. For secondary requests, use the response method.

You can get the sample code in link below.
https://elanat.net/content/31/WebForms.java Update to WebFormsJS 1.6.html

WebForms Core technology is also supported by all JVM-based programming languages!

In addition to the Java programming language, you can use the WebForms classes located in the WebFormsCore directory directly or after compilation in the following programming languages (or implementations):

  • Kotlin
  • Scala
  • Groovy
  • Clojure
  • JRuby
  • Jython
  • Fantom
  • Mirah
  • Ceylon
  • Fantom
  • JPHP

Conclusion

With this update, Java developers can leverage WebForms Core, which allows them not only create more dynamic applications but also simplify their workflow significantly since no front-end knowledge is required anymore! This technology supports all JVM-based languages including Kotlin!

原文链接:WebForms.java Update to WebFormsJS 1.6

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
Only they who fulfill their duties in everyday matters will fulfill them on great occasions.
只有在日常生活中尽责的人才会在重大时刻尽责
评论 抢沙发

请登录后发表评论

    暂无评论内容