Requirement Constraints

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Thursday, 31 May 2012

Input Form Validation window

Posted on 20:11 by Unknown

We will see here how to validate all the input elements and show all the message in one window after submit button is clicked.  This can be done using ZK Data binding and CreateComponents method.
This example is based on Executions.CreateComponents. For more example, please check here.
Project Structure
image

Step 1:

ValidationMessage.Java
package MyDomain;

public class ValidationMessage
{
private String message;

public String getMessage() {
return message;
}

public void setMessage(String message) {
this.message = message;
}

}


Step 2:


ValidateWindow.zul

<?xml version="1.0" encoding="UTF-8"?>
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" arg0="./modalDialog" ?>
<zk>
<window id="modalDialog" title=" " width="420px" height="auto"
border="normal" minimizable="false" mode="modal" maximizable="false"
closable="true" action="hide: slideUp">
<listbox vflex="1" id="test" model="@{arg.vList}">
<listhead sizable="true">
<listheader label="Messages" width="300px" />
</listhead>
<!-- define variable p1 here-->
<listitem self="@{each='p1'}">
<listcell label="@{p1.Message}" />
</listitem>
</listbox>
<separator />
<div align="center">
<button label="Ok" onCreate="self.setFocus(true)"
onClick="modalDialog.detach()" />
</div>
</window>
</zk>




Step 3:


Demo.Zul

<?page title="new page title" contentType="text/html;charset=UTF-8"?>
<zk>
<window id="win" title ="Person" width="420px" height="150px" border="normal"
minimizable="false" mode="modal" maximizable="false" closable="true"
apply="MyDomain.DemoComposer" action="show: slideDown;hide: slideUp">

<grid width="400px">
<rows>
<row>
First Name:
<textbox id="fname"/>
</row>
<row>
Last Name:
<textbox id="lname"/>
</row>
</rows>
</grid>
<separator />
<div align="center">
<button id="Submit" label="Submit" />
</div>
</window>
</zk>


Step 4:


DemoComposer.Java

package MyDomain;

import java.util.HashMap;

import org.zkoss.zk.ui.Executions;
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zk.ui.util.GenericForwardComposer;
import org.zkoss.zul.Textbox;
import java.util.ArrayList;
import java.util.List;

public class DemoComposer extends GenericForwardComposer {

private Textbox fname;
private Textbox lname;

public void onClick$Submit(Event event) {
if (IsValidInput())
alert("All are valid. Now you can Save into DB");

}

public boolean IsValidInput() {

List<ValidationMessage> vList = new ArrayList<ValidationMessage>();

ValidationMessage v1 = new ValidationMessage();

if (fname.getValue() == "") {
v1.setMessage("First Name Cannot be Empty");
vList.add(v1);
}

if (lname.getValue() == "") {
v1 = new ValidationMessage();
v1.setMessage("Last Name Cannot be Empty");
vList.add(v1);
}

if (vList.size() > 0)
{
final HashMap<String, Object> map = new HashMap<String, Object>();
map.put("vList", vList);
Executions.createComponents("ValidateWindow.zul", null, map);
return false;
}
else
return true;

}

}


Step 5:


Run the demo.zul and without entering any value , click on submit button as shown

image

Download the source as war file
Email ThisBlogThis!Share to XShare to Facebook
Posted in ZK CreateComponents | No comments
Newer Post Older Post Home

0 comments:

Post a Comment

Subscribe to: Post Comments (Atom)

Popular Posts

  • ZK Example for inline Editing with Add New and Delete
    I am quite impressed on this demo from ZK . But adding new record and delete existing record is missing as part of typical CRUD. So i thoug...
  • ZK Passing Parameter between two files using MVVM–Part 1
    Overview This is the first series of articles about Passing parameter between two zul files using MVVM Design pattern .This article will fo...
  • Hibernate Validator Example 2
    In this example, we will see some more validation constraints such as @email, @past, @length, etc. And also we will also define custom error...
  • ViewModel Class Java Annotation @Init, @NotifyChange, @Command
    In following sections we'll list all syntaxes that can be used in implementing a ViewModel and applying ZK bind annotation. The ZK binde...
  • History of Present Illness
    HPI - One of the main component of Clinical History. What is an HPI ? The history of present illness (HPI) is a chronological description...
  • ZK Border Layout–Another example
    This examples show how you can use ZK Border Layout to show the product information on clicking image. ZK Version 6 Project Name : BorderL...
  • Good Website Design Links
    Form Design Label Placement in Forms International Address Fields in Web Forms 40 Eye-Catching Registration Pages blog-comment-form-...
  • How to refer CSS File in ZK Style tag
    In this example, we will see how to create CSS file as separate file and include in zul file to change the look and feel Project structure a...
  • ZK MVVM Form Binding CRUD with Spring and Hibernate - Part 4
    Presentation Layer using ZK Framework          In part 3 , We have completed Spring integration with hibernate. In this post, we will des...
  • Load Tab box Content on Demand Using MVVM
    ZK Version : 6.5.0 CE In this post, let us see how we can load individual ZUL File on each tab box content Step : 1 First let us create indi...

Categories

  • Billing Process
  • C Workbook
  • C++ Workbook
  • Eclipse Tips
  • EDI 5010
  • EMR Appointment Features
  • EMR Labs Stuff
  • EMR PMS Links
  • EMR Use cases
  • EMR Vital Sign
  • Good Website Design
  • Hibernate Criteria Queries
  • Hibernate Introduction
  • Hibernate Introduction Setup
  • Hibernate Mapping
  • Hibernate POC
  • Hibernate Validator
  • Hibernate–Java Environment setup
  • HPI
  • Java
  • Maven
  • MU Certification
  • NPI
  • PQRS
  • Practice Management System
  • Spring Security
  • Tech Links
  • Today Tech Stuff
  • zk
  • ZK Hibernate
  • ZK 5 Databinding
  • ZK Application
  • ZK Calling Another ZUL
  • ZK CheckBox
  • ZK CreateComponents
  • ZK CSS
  • ZK extended Components
  • ZK Foreach
  • ZK Forum Posts
  • ZK Framework
  • ZK Hibernate Setup
  • ZK ID Space
  • ZK Include
  • ZK Installation
  • ZK iReport
  • ZK Layout
  • ZK Listitem Pagination
  • ZK Message Box
  • ZK MVC
  • ZK MVC Combox Box
  • ZK MVC CRUD Examples
  • ZK MVC Listbox
  • ZK MVVM
  • ZK MVVM Combo
  • ZK MVVM CRUD
  • ZK MVVM ListBox
  • ZK Spring
  • ZK TextBox

Blog Archive

  • ►  2013 (105)
    • ►  December (3)
    • ►  September (7)
    • ►  August (13)
    • ►  July (1)
    • ►  June (11)
    • ►  May (3)
    • ►  April (14)
    • ►  March (19)
    • ►  February (21)
    • ►  January (13)
  • ▼  2012 (177)
    • ►  December (1)
    • ►  November (13)
    • ►  October (19)
    • ►  September (24)
    • ►  August (26)
    • ►  July (6)
    • ►  June (37)
    • ▼  May (30)
      • Input Form Validation window
      • ZK Executions.createComponents
      • List Item Connected with Hibernate and Search Para...
      • ZK Hibernate Setup
      • Window Title Change Color
      • List item Data Binding
      • ZK Data Binding
      • Message Box Customization
      • MVC CRUD Application–Filter records in the list ba...
      • ZK Check Event Handling Using MVC
      • MVC CRUD Application with Auto filter for List item
      • Text Box on change and on Changing Event
      • Hibernate Criteria Queries
      • MVC CRUD Application
      • Hibernate Query uniqueResult Method
      • Hibernate retrieve the first record always when we...
      • Hibernate Introduction Part 4
      • ZK Data Binding Part 1
      • Simple Sightseeing Application Part 2
      • Window CSS
      • ZK Simple Sightseeing Application Part 1
      • Button CSS
      • Group Box with Collapse and Expand Button in the R...
      • Tuning Eclipse Performance and Avoiding OutOfMemor...
      • Listitem Mold Paging - Add components in the pagin...
      • ZK Calling Another ZUL File
      • ZK Installation Guide
      • List Box CSS
      • Eclipse Tips and Tricks
      • Hibernate Introduction Part 3
    • ►  April (16)
    • ►  March (1)
    • ►  January (4)
  • ►  2011 (5)
    • ►  December (1)
    • ►  November (1)
    • ►  July (1)
    • ►  June (1)
    • ►  April (1)
  • ►  2010 (1)
    • ►  September (1)
Powered by Blogger.

About Me

Unknown
View my complete profile