ZK: the User Guide

Total Page:16

File Type:pdf, Size:1020Kb

ZK: the User Guide SIMPLY RICH ZKTM The Developer's Guide Version 3.6.3 June 2009 Potix Corporation Revision 228 ZK: Developer's Guide Page 1 of 293 Potix Corporation Copyright © Potix Corporation. All rights reserved. The material in this document is for information only and is subject to change without notice. While reasonable efforts have been made to assure its accuracy, Potix Corporation assumes no liability resulting from errors or omissions in this document, or from the use of the information contained herein. Potix Corporation may have patents, patent applications, copyright or other intellectual property rights covering the subject matter of this document. The furnishing of this document does not give you any license to these patents, copyrights or other intellectual property. Potix Corporation reserves the right to make changes in the product design without reservation and without notification to its users. The Potix logo and ZK are trademarks of Potix Corporation. All other product names are trademarks, registered trademarks, or trade names of their respective owners. ZK: Developer's Guide Page 2 of 293 Potix Corporation Table of Contents 1. Introduction...............................................................................................................18 Traditional Web Applications...........................................................................................18 Ad-hoc AJAX Applications...............................................................................................18 ZK: What It Is ..............................................................................................................19 ZK: What It Is Not.........................................................................................................20 ZK: Limitations.............................................................................................................21 2. Getting Started..........................................................................................................22 Hello World!.................................................................................................................22 Interactivity..................................................................................................................22 The zscript Element.......................................................................................................23 The Scripting Language..............................................................................................24 The Scripting Codes in a Separate File.........................................................................24 The attribute Element....................................................................................................24 The EL Expressions........................................................................................................25 The id Attribute.............................................................................................................26 The if and unless Attributes............................................................................................26 The forEach Attribute.....................................................................................................27 The use and apply Attribute............................................................................................27 The use Attribute......................................................................................................28 The apply Attribute....................................................................................................28 Implement Java Classes in zscript...............................................................................29 The forward Attribute.....................................................................................................30 Create Components Manually..........................................................................................31 Developing ZK Applications without ZUML....................................................................32 Define New Components for a Particular Page...................................................................32 3. The Basics..................................................................................................................33 Architecture Overview....................................................................................................33 The Execution Flow....................................................................................................34 Components, Pages and Desktops...................................................................................34 Components.............................................................................................................34 Pages......................................................................................................................34 Page Title.............................................................................................................35 ZK: Developer's Guide Page 3 of 293 Potix Corporation Desktops..................................................................................................................35 The createComponents Method...............................................................................35 Forest of Trees of Components....................................................................................35 Component: a Visual Part and a Java Object.................................................................36 Identifiers................................................................................................................36 UUID.......................................................................................................................36 The ID Space................................................................................................................37 Namespace and ID Space...........................................................................................38 Variable and Functions Defined in zscript......................................................................38 zscript and EL Expressions......................................................................................39 Multi-Scope Interpreters.........................................................................................40 Single-Scope Interpreters.......................................................................................41 Multiple scripting Languages in One Page.................................................................42 getVariable versus getZScriptVariable......................................................................42 Events.........................................................................................................................42 Desktops and Event Processing.......................................................................................43 Desktops and the Creation of Components....................................................................43 ZUML and XML Namespaces............................................................................................43 4. The Component Lifecycle...........................................................................................45 The Lifecycle of Loading Pages........................................................................................45 The Page Initial Phase................................................................................................45 The Component Creation Phase...................................................................................45 The Event Processing Phase........................................................................................46 The Rendering Phase.................................................................................................46 The Lifecycle of Updating Pages......................................................................................46 The Request Processing Phase....................................................................................47 The Event Processing Phase........................................................................................47 The Rendering Phase.................................................................................................47 The Molds.....................................................................................................................47 Component Garbage Collection.......................................................................................48 5. Event Listening and Processing..................................................................................49 Add Event Listeners by Markup Languages.......................................................................49 Add and Remove Event Listeners by Program....................................................................49 Declare a Member.....................................................................................................49 Add and Remove Event Listeners Dynamically...............................................................50 Deferrable Event Listeners..........................................................................................50 ZK: Developer's Guide Page 4 of 293 Potix Corporation Add and Remove Event Listeners to Pages Dynamically..................................................51 The Invocation Sequence...........................................................................................52
Recommended publications
  • Incubating the Next Generation of Offshore Outsourcing Entrepreneurs
    Mobile Phone Programming Introduction Dr. Christelle Scharff Pace University, USA http://atlantis.seidenberg.pace.edu/wiki/mobile2008 Objectives Getting an overall view of the mobile phone market, its possibilities and weaknesses Providing an overview of the J2ME architecture and define the buzzwords that accompanies it Why mobile phones? Nowadays mobile phones outnumber desktop computers for Internet connections in the developer world A convenient and simpler alternative to the desktop/laptop for all (developed and developing countries) Mobile phones are computers! Some numbers and important facts: • Target of 10 million iphones sales by the end of 2008 (just one year after being launched) • Google phone to be launched in 2008 • 70% of the world’s mobile subscriptions are in developing countries, NY Times April 13, 2008 Global Handset Sales by Device Type http://linuxdevices.com/files/misc/StrategyAnalytics- mobilephone-segments.jpg Devices A wide variety of devices by the main vendors: • E.g, Nokia, Motoral, Sony Ericson A wide variety of operating systems • E.g., Blackberry, Palm OS, Windows CE/Mobile, Symbian, motomagx, linux A wide variety of development environments • E.g., Java ME, Qualcomm’s BREW, Google’ Android, Google App Engine (GAE) for mobile web applications, JavaFX Programming languages: • Java, Python, Flast-lith, Objective C Operating Systems http://mobiledevices.kom.aau.dk Mobile Web Access to wireless data services using a mobile device cHTML (Compact HTML) is a subset of HTML that excludes JPEG images,
    [Show full text]
  • Development of Mobile Phone Game Based on Java ME
    Yang Liu Development of Mobile Phone Game Based on Java ME Bachelor’s Thesis Information Technology May 2011 DESCRIPTION Date of the bachelor's thesis th 15 May, 2011 Author(s) Degree programme and option Yang Liu Information Technology Name of the bachelor's thesis Development of Mobile Phone Game Based on Java ME Abstract Recently, mobile phones have become more and more widespread in more than one aspect. Meanwhile, a large number of advanced features have also been applied into mobile devices. As we know, mobile phone game is one of them. In this final thesis, I develop a Chinese Chess game. Chinese Chess, also called Xiang Qi, is one of the most popular and oldest board games worldwide, which is more or less similar to Western Chess related to the appearance and regulations. In order to spread China culture and make individuals realize how fun and easy this game is, I introduce this Chinese Chess game as the topic in terms of my final thesis. In this final thesis, I use API (JSR 118) to build a user interface so as to set the board and pieces in the first place. Thereafter, some relevant basic rules are drawn up through logical control. This project is designated to be run on Java ME platform and Java SDK simulation software. Subject headings, (keywords) Java ME, JDK, Java SDK, MIDP, CLDC, API, Chinese Chess Pages Language URN 63 p.+app.28 English Remarks, notes on appendices Tutor Employer of the bachelor's thesis Matti Koivisto Mikkeli University of Applied Sciences ACKNOWLEDGEMENT In the first place, I would like to represent my greatest appreciation to my supervisor Mr.
    [Show full text]
  • 1. the ZK User Interface Markup Language
    1. The ZK User Interface Markup Language The ZK User Interface Markup Language (ZUML) is based on XML. Each XML element describes what component to create. XML This section provides the most basic concepts of XML to work with ZK. If you are familiar with XML, you could skip this section. If you want to learn more, there are a lot of resources on Internet, such as http://www.w3schools.com/xml/xml_whatis.asp and http://www.xml.com/pub/a/98/10/guide0.html. XML is a markup language much like HTML but with stricter and cleaner syntax. It has several characteristics worth to notice. Elements Must Be Well-formed First, each element must be closed. They are two ways to close an element as depicted below. They are equivalent. Close by an end tag: <window></window> Close without an end tag: <window/> Second, elements must be properly nested. Correct: <window> <groupbox> Hello World! </groupbox> </window> Wrong: <window> <groupbox> Hello World! </window> </groupbox> Special Character Must Be Replaced XML uses <element-name> to denote an element, so you have to replace special characters. For example, you have to use &lt; to represent the < character. ZK: Developer's Guide Page 1 of 92 Potix Corporation Special Character Replaced With < &lt; > &gt; & &amp; " &quot; ' &apos; It is interesting to notice that backslash (\) is not a special character, so you don't need to escape it at all. Attribute Values Must Be Specified and Quoted Correct: width="100%" checked="true" Wrong: width=100% checked Comments A comment is used to leave a note or to temporarily edit out a portion of XML code.
    [Show full text]
  • JAVA User's Guide Siemens Cellular Engine
    s JAVA User's Guide Siemens Cellular Engine Version: 08 DocID: TC65_AC75_JAVA User's Guide_V08 Supported products: TC65, TC65 Terminal, AC75 JAVA™ Users Guide JAVA User's Guide s Confidential / Released Document Name: JAVA User's Guide Supported products: TC65, TC65 Terminal, AC75 Version: 08 Date: June 12, 2006 DocId: TC65_AC75_JAVA User's Guide_V08 Status: Confidential / Released General Notes Product is deemed accepted by recipient and is provided without interface to recipient’s products. The documentation and/or product are provided for testing, evaluation, integration and information purposes. The documentation and/or product are provided on an “as is” basis only and may contain deficiencies or inadequacies. The documentation and/or product are provided without warranty of any kind, express or implied. To the maximum extent permitted by applicable law, Siemens further disclaims all warranties, including without limitation any implied warranties of merchantability, completeness, fitness for a particular purpose and non-infringement of third-party rights. The entire risk arising out of the use or performance of the product and documentation remains with recipient. This product is not intended for use in life support appliances, devices or systems where a malfunction of the product can reasonably be expected to result in personal injury. Applications incorporating the described product must be designed to be in accordance with the technical specifications provided in these guidelines. Failure to comply with any of the required procedures can result in malfunctions or serious discrepancies in results. Furthermore, all safety instructions regarding the use of mobile technical systems, including GSM products, which also apply to cellular phones must be followed.
    [Show full text]
  • Web Services Edge East Conference & Expo Featuring FREE Tutorials, Training Sessions, Case Studies and Exposition
    JAVA & LINUX FOCUS ISSUE TM Java COM Conference: January 21-24, 2003 Expo: January 22-24, 2003 www.linuxworldexpo.com The Javits Center New York, NY see details on page 55 From the Editor Alan Williamson pg. 5 Java & Linux A Marriage Made in Heaven pg. 6 TCO for Linux Linux Fundamentals: Tools of the Trade Mike McCallister ...and J2EE Projects pg. 8 Programming Java in Linux – a basic tour $40010 60 Linux Vendors Life Is About Choices pg. 26 Feature: Managing HttpSession Objects2003 SAVEBrian A. Russell 8 PAGE CONFERENCE Create a well-designed session for a better Web appEAST INSERT PAGE18 63 Career Opportunities Bill Baloglu & Billy Palmieri DGE pg. 72 Integration: PackagingE Java Applications Ian McFarland for OS X Have great looking double-clickable applications 28 Java News ERVICES pg. 60 S EB Specifications: JCP Expert Group Jim Van Peursem JDJ-IN ExcerptsW Experiences – JSR-118 An inside look at the process 42 SPECIALpg. 61 INTERNATIONAL WEB SERVICES CONFERENCE & EXPO Letters to the Editor Feature: The New PDA Profile Jim Keogh OFFER!pg. 62 The right tool for J2ME developers 46 RETAILERS PLEASE DISPLAY UNTIL MARCH 31, 2003 Product Review: exe4j Jan Boesenberg by ej-technologies – a solid piece of software 56 Interview: JDJ Asks ...Sun on Java An exclusive chance to find out what’s going on at Sun 58 SYS -CON Blair Wyman MEDIA Cubist Threads: ‘(Frozen)’ A snow-packed Wyoming highway adventure 74 Everybody’s focused on exposing applications as Web services while letting someone else figure out how to connect them. We’re that someone else.
    [Show full text]
  • Oracle® Java ME Embedded Getting Started Guide for the Windows Platform Release 3.3 E35132-02
    Oracle® Java ME Embedded Getting Started Guide for the Windows Platform Release 3.3 E35132-02 June 2013 This book describes how to use Oracle Java ME SDK to develop embedded applications, using both the NetBeans and Eclipse Integrated Development Environments, on a Windows XP or Windows 7 platform. Oracle Java ME Embedded Getting Started Guide for the Windows Platform, Release 3.3 E35132-02 Copyright © 2012, 2013, Oracle and/or its affiliates. All rights reserved. This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited. The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing. If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable: U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.
    [Show full text]
  • J2ME: the Complete Reference
    Color profile: Generic CMYK printer profile Composite Default screen Complete Reference / J2ME: TCR / Keogh / 222710-9 Blind Folio i J2ME: The Complete Reference James Keogh McGraw-Hill/Osborne New York Chicago San Francisco Lisbon London Madrid Mexico City Milan New Delhi San Juan Seoul Singapore Sydney Toronto P:\010Comp\CompRef8\710-9\fm.vp Friday, February 07, 2003 1:49:46 PM Color profile: Generic CMYK printer profile Composite Default screen Complete Reference / J2ME: TCR / Keogh / 222710-9 / Front Matter Blind Folio FM:ii McGraw-Hill/Osborne 2600 Tenth Street Berkeley, California 94710 U.S.A. To arrange bulk purchase discounts for sales promotions, premiums, or fund-raisers, please contact McGraw-Hill/Osborne at the above address. For information on translations or book distributors outside the U.S.A., please see the International Contact Information page immediately following the index of this book. J2ME: The Complete Reference Copyright © 2003 by The McGraw-Hill Companies. All rights reserved. Printed in the United States of America. Except as permitted under the Copyright Act of 1976, no part of this publication may be reproduced or distributed in any form or by any means, or stored in a database or retrieval system, without the prior written permission of publisher, with the exception that the program listings may be entered, stored, and executed in a computer system, but they may not be reproduced for publication. 1234567890 CUS CUS 019876543 ISBN 0-07-222710-9 Publisher Copy Editor Brandon A. Nordin Judith Brown Vice President & Associate Publisher Proofreader Scott Rogers Claire Splan Editorial Director Indexer Wendy Rinaldi Jack Lewis Project Editor Computer Designers Mark Karmendy Apollo Publishing Services, Lucie Ericksen, Tara A.
    [Show full text]
  • ZKTM Mobile for Android the Quick Start Guide
    ppoottiixx SIMPLY REACH ZKTM Mobile for Android The Quick Start Guide Version 0.8.1 Feburary 2008 Potix Corporation ZK Mobile for Android for Android: Quick Start Guide Page 1 of 14 Potix Corporation Copyright © Potix Corporation. All rights reserved. The material in this document is for information only and is subject to change without notice. While reasonable efforts have been made to assure its accuracy, Potix Corporation assumes no liability resulting from errors or omissions in this document, or from the use of the information contained herein. Potix Corporation may have patents, patent applications, copyright or other intellectual property rights covering the subject matter of this document. The furnishing of this document does not give you any license to these patents, copyrights or other intellectual property. Potix Corporation reserves the right to make changes in the product design without reservation and without notification to its users. The Potix logo and ZK are trademarks of Potix Corporation. All other product names are trademarks, registered trademarks, or trade names of their respective owners. ZK Mobile for Android for Android: Quick Start Guide Page 2 of 14 Potix Corporation Table of Contents Before You Start.............................................................................................................. 4 New to ZK Framework.....................................................................................................4 New to Google Android....................................................................................................4
    [Show full text]
  • Dictionary Software Based on Ajax Frameworks
    Seminar Paper Dictionary Software based on Ajax Frameworks Matthias Kerstner Institute for Information Systems and Computer Media Graz University of Technology Head: Herman Maurer O.Univ.-Prof. Dr.Dr.h.c.mult. Supervisor: Denis Helic Dipl.-Ing. Dr.techn. September 2007 Seminar Paper Abstract Abstract The necessity for dictionaries cannot be disputed. Although there are a vast variety of them they all follow a basic schema a key-value combination. It is interesting to see that many of the well known dictionary producers recently also provide electronic versions of their products, ranging from CDROMs over USB media to online databases. With the event of Ajax, web-based applications can be turned into desktop-like environments. It provides developers with an effective way to build web-applications using existing facilities (browsers, etc.), while still profiting from the latest technology. Seminar Paper Contents Contents Abstract ............................................................................................................3 Contents ...........................................................................................................4 List of Figures...................................................................................................5 1. Introduction ...............................................................................................6 2. Dictionaries ...............................................................................................8 3. Ajax Frameworks ......................................................................................9
    [Show full text]
  • Comparing Javascript Libraries
    www.XenCraft.com Comparing JavaScript Libraries Craig Cummings, Tex Texin October 27, 2015 Abstract Which JavaScript library is best for international deployment? This session presents the results of several years of investigation of features of JavaScript libraries and their suitability for international markets. We will show how the libraries were evaluated and compare the results for ECMA, Dojo, jQuery Globalize, Closure, iLib, ibm-js and intl.js. The results may surprise you and will be useful to anyone designing new international or multilingual JavaScript applications or supporting existing ones. 2 Agenda • Background • Evaluation Criteria • Libraries • Results • Q&A 3 Origins • Project to extend globalization - Complex e-Commerce Software - Multiple subsystems - Different development teams - Different libraries already in use • Should we standardize? Which one? - Reduce maintenance - Increase competence 4 Evaluation Criteria • Support for target and future markets • Number of internationalization features • Quality of internationalization features • Maintained? • Widely used? • Ease of migration from existing libraries • Browser compatibility 5 Internationalization Feature Requirements • Encoding Support • Text Support -Unicode -Case, Accent Mapping -Supplementary Chars -Boundary detection -Bidi algorithm, shaping -Character Properties -Transliteration -Charset detection • Message Formatting -Conversion -IDN/IRI -Resource/properties files -Normalization -Collation -Plurals, Gender, et al 6 Internationalization Feature Requirements
    [Show full text]
  • OPEN SOURCE VERSUS the JAVA Platformpg. 6
    OPEN SOURCE VERSUS THE JAVA PLATFORM pg. 6 www.JavaDevelopersJournal.com Web Services Edge West 2003 Sept. 30–Oct. 2, 2003 Santa Clara, CA details on pg. 66 From the Editor Best Laid Plans... Alan Williamson pg. 5 Viewpoint In Medias Res Bill Roth pg. 6 Q&A: JDJ Asks... IBM-Rational J2EE Insight Interview with Grady Booch 10 We Need More Innovation Joseph Ottinger pg. 8 Feature: JSP 2.0 Technology Mark Roth J2SE Insight The community delivers a higher performing language 16 Sleeping Tigers Jason Bell pg. 28 Graphical API: Trimming the Fat from Swing Marcus S. Zarra Simple steps to improve the performance of Swing 30 J2ME Insight The MIDlet Marketplace Glen Cordrey pg. 46 Feature: Xlet: A Different Kind of Applet Xiaozhong Wang The life cycle of an Xlet 48 Industry News for J2ME pg. 68 Network Connectivity: java.net.NetworkInterface Duane Morin Letters to the Editor A road warrior’s friend – detecting network connections 58 pg. 70 RETAILERS PLEASE DISPLAY Labs: ExtenXLS Java/XLS Toolkit Peter Curran UNTIL SEPTEMBER 30, 2003 by Extentech Inc. – a pure Java API for Excel integration 62 JSR Watch: From Within the Java Community Onno Kluyt Process Program More mobility, less complexity 72 From the Inside: The Lights Are On, SYS -CON MEDIA but No One’s Home Flipping bits 74 WE’VE ELIMINATED THE NEED FOR MONOLITHIC BROKERS. THE NEED FOR CENTRALIZED PROCESS HUBS. THE NEED FOR PROPRIETARY TOOL SETS. Introducing the integration technology YOU WANT. Introducing the Sonic Business Integration Suite. Built on the Business Integration Suite world’s first enterprise service bus (ESB), a standards-based infrastructure that reliably and cost-effectively connects appli- cations and orchestrates business processes across the extended enterprise.
    [Show full text]
  • A Generic DRM Framework for J2ME Applications
    A Generic DRM Framework for J2ME Applications Nuno Santos, Pedro Pereira, Luís Moura e Silva WIT-Software Rua Pedro Nunes, IPN, 3030-Coimbra, Portugal Email: [email protected] Abstract Recently, a new generation of mobile phones with support for Java has been taking widespread acceptance by the market, creating a business potential for downloadable Java Games and enterprise applications. However, it is relatively easy to forward Java programs between two Java phones. This opens the door for illegal peer-to-peer forwarding, with the consequent loss of revenues for content providers and operators. Therefore, DRM solutions are essential in order to protect copyrighted Java applications. In this paper we present a generic DRM framework that supports different solutions for protecting the copyright of Java applications. This framework is mainly targeted to Mobile Operators, it is totally transparent to content providers and does not require any special support at the user’s handsetss. It also allows the development of new custom built DRM solutions, providing a flexible platform for Java oriented DRM techniques. Keywords: Java J2ME; DRM; copyright-protection; code instrumentation. 1. Introduction The first generation of Java [1] enabled phones were very limited in terms of functionality. They were only able of downloading MIDlet1 applications from the network and of executing them. They offered no simple way to copy a Java application to another terminal or PC. These limitations were a natural Digital Rights Management (DRM) [2] solution, since the only way to obtain a Java application was by downloading it from the network. However, the most recent mobile phones are much more feature-rich.
    [Show full text]