Propchange: empire-db/site/legacy/js/prototype.js
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: empire-db/site/legacy/main.dwt
URL:
http://svn.apache.org/viewvc/empire-db/site/legacy/main.dwt?rev=1898936&view=auto
==============================================================================
--- empire-db/site/legacy/main.dwt (added)
+++ empire-db/site/legacy/main.dwt Mon Mar 14 20:41:26 2022
@@ -0,0 +1,194 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" >
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta http-equiv="language" content="en" />
+ <meta name="robots" content="index, follow" />
+ <meta name="keywords" content="java, jar, jdbc, sql, data, metadata,
persistence, rdbms, orm, mapping" />
+ <meta name="description" content="Open Source relational data
persistence component." />
+
+ <!-- #BeginEditable "doctitle" -->
+ <title>Empire-db relational data persistence</title>
+ <!-- #EndEditable -->
+
+ <script type="text/javascript" src="./js/prototype.js"></script>
+ <script type="text/javascript" src="./js/menu.js"></script>
+ <!-- #BeginEditable "javascripts" -->
+ <!-- #EndEditable -->
+
+ <link rel="shortcut icon" href="empire-db.ico" />
+ <link rel="stylesheet" href="css/layout.css" type="text/css" />
+ <!-- #BeginEditable "stylesheets" -->
+ <!-- #EndEditable -->
+</head>
+
+<body>
+<div id="wrapper">
+
+ <!-- Header -->
+ <div id="header">
+ <div id="logo">
+ <img src="images/logos/empire-db-logo.gif"
alt="Empire-db: The relational data persistence component." />
+ </div>
+ <div id="asf">
+ <a id="asfhome" target="_blank"
href="https://www.apache.org"><img src="images/logos/feather-small.gif"
alt="The Apache Software Foundation" /></a>
+ <label for="asfhome" >The Apache Software
Foundation</label>
+ </div>
+ <div style="clear:both"></div>
+ </div>
+
+ <!-- Top -->
+ <div id="top">
+ <div id="topbar"> </div>
+ </div>
+
+ <!-- Middle -->
+ <div id="middle">
+ <div id="left">
+ <div id="menuBox">
+ <ul id="mainMenu">
+ <li id="menu_home"><a
href="index.html">Home</a></li>
+ <li id="menu_news"><a
href="news.htm">News</a></li>
+ <li id="menu_empiredb"><a
href="empiredb/empiredb.htm">Empire-db</a>
+ <ul
class="subMenu">
+ <li
id="menu_empiredb_extending_pattern"><a href="empiredb/pattern.htm">The Empire
DAO-<br />pattern</a></li>
+ <li
id="menu_empiredb_handling_metadata"><a href="empiredb/metadata.htm">Handling
data and metadata</a></li>
+ <li
id="menu_empiredb_wrong"><a href="empiredb/hibernate.htm">What's wrong with
Hibernate and JPA</a></li>
+ <li
id="menu_empiredb_stringfree"><a href="empiredb/stringfree.htm">The principle
of<br/>string-free coding</a></li>
+ <li
id="menu_empiredb_faq"><a href="empiredb/faq.htm">FAQ</a></li>
+ </ul>
+ </li>
+ <li id="menu_struts2ext"><a
href="struts2ext/struts2ext.htm">Empire-db and Struts2</a>
+ <ul class="subMenu">
+ <li
id="menu_struts2ext_forms_controls"><a
href="struts2ext/forms_controls.htm">Forms and controls</a></li>
+ <li
id="menu_struts2ext_rendering_parsing"><a
href="struts2ext/rendering_parsing.htm">Rendering and parsing</a></li>
+ <!--<li
id="menu_struts2ext_tag_reference"><a href="struts2ext/tag_reference.htm">Tag
reference</a></li>-->
+ <li
id="menu_struts2ext_input_controls"><a
href="struts2ext/input_controls.htm">Input controls</a></li>
+ </ul>
+ </li>
+ <li id="menu_downloads"><a
href="downloads/latest.htm">Downloads</a>
+ <ul
class="subMenu">
+ <li
id="menu_downloads_previous"><a href="downloads/previous.htm">Previous
releases</a></li>
+ <li
id="menu_downloads_license"><a href="downloads/license.htm">License</a></li>
+ </ul>
+ </li>
+ <li id="menu_documentation"><a
href="documentation/documentation.htm">Documentation</a>
+ <ul class="subMenu">
+ <li
id="menu_documentation_class_overview"><a
href="documentation/class_overview.htm">Empire-db class<br />overview</a></li>
+ <li
id="menu_documentation_tutorials"><a
href="documentation/tutorial.htm">Tutorial</a></li>
+ <li
id="menu_documentation_getting_started"><a
href="documentation/getting_started.htm">Getting started</a></li>
+ <li
id="menu_documentation_reverse_engineering"><a
href="documentation/reverse_engineering.htm">Reverse Engineering</a></li>
+ <li
id="menu_documentation_api"><a href="documentation/api.htm">API</a></li>
+ </ul>
+ </li>
+ <li id="menu_community"><a
href="community/community.htm">Community</a>
+ <ul class="subMenu">
+ <li
id="menu_community_mailing_lists"><a href="community/mailing_lists.htm">Mailing
lists</a></li>
+ <li
id="menu_community_source_code"><a href="community/source_code.htm">Source
code</a></li>
+ <li
id="menu_community_jira"><a href="community/jira.htm">Ticketing &
Wiki</a></li>
+ <!--<li
id="menu_community_road_map"><a href="community/road_map.htm">Road
map</a></li>-->
+ <li
id="menu_community_contributors"><a
href="community/contributors.htm">Contributors</a></li>
+ </ul>
+ </li>
+ <li id="menu_apache"><a
href="apache.htm">About Apache</a>
+ <ul class="subMenu">
+ <li
id="menu_apache_home"><a href="https://www.apache.org">Apache home<span
class="asflink"> </span></a></li>
+ <li
id="menu_apache_donate"><a
href="https://www.apache.org/foundation/sponsorship.html">Sponsorship<span
class="asflink"> </span></a></li>
+ <li
id="menu_apache_thanks"><a
href="https://www.apache.org/foundation/thanks.html">Foundation thanks<span
class="asflink"> </span></a></li>
+ <li
id="menu_apache_security"><a
href="https://www.apache.org/security/">Security<span
class="asflink"> </span></a></li>
+ </ul>
+ </li>
+ <li id="menu_disclaimer"><a
href="https://www.apache.org/licenses/">License<span
class="asflink"> </span></a></li>
+ </ul>
+ </div>
+
+ </div>
+
+ <!-- #BeginEditable "menu" -->
+ <script type="text/javascript">
+ /* <![CDATA[ */
+ var menu = new Menu( 'mainMenu', 'menu_home' );
+ var prev_page = "";
+ var next_page = "";
+ /* ]]> */
+ </script>
+ <!-- #EndEditable -->
+ <script type="text/javascript">
+ /* <![CDATA[ */
+ if( menu ) {
+ // Menu fully opened (comment out if not wanted)
+ // menu.openAll();
+ /* ]]> */
+ }
+ </script>
+
+ <div id="main">
+
+ <div id="pathway">
+ <span style="float:left">
+ <!-- #BeginEditable "pathway" -->
+ Home
+ <!-- #EndEditable -->
+ </span>
+ <a id="downloadLink" href="downloads/latest.htm"
style="float:right">Download</a>
+ </div>
+
+ <div id="content">
+ <!-- #BeginEditable "content" -->
+ <!-- #EndEditable --></div>
+
+ <div id="nav">
+ <hr />
+ <div id="nav_prev">
+ <a id="prev" href=""><img
src="images/prev.gif" alt="" /> Previous Page</a>
+
+ </div>
+ <div id="nav_next">
+
+ <a id="next" href="">Next Page <img
src="images/next.gif" alt="" /></a>
+ </div>
+ <div style="clear: both;"></div>
+ </div>
+
+ <script type="text/javascript">
+ /* <![CDATA[ */
+ if( ( typeof(prev_page) == "undefined" ||
prev_page == "" ) &&
+ ( typeof(next_page) == "undefined" ||
next_page == "" ) )
+ {
+ $( 'nav' ).hide();
+ }
+ else
+ {
+ if( typeof(prev_page) != "undefined" &&
prev_page != "" ) {
+ $( 'prev' ).href = prev_page;
+ $( 'prev' ).show();
+ }
+ else {
+ $( 'prev' ).hide();
+ }
+
+ if( typeof(next_page) != "undefined" &&
next_page !="" ) {
+ $( 'next' ).href = next_page;
+ $( 'next' ).show();
+ }
+ else {
+ $( 'next' ).hide();
+ }
+ }
+ /* ]]> */
+ </script>
+
+ </div>
+
+ </div>
+
+ <!-- Footer -->
+ <div id="footer">
+ <div class="cr"><small>Copyright © 2008-2021, The Apache
Software Foundation</small></div>
+ <div class="tm"><small>Apache Empire-db, Empire-db, Apache, the
Apache feather logo, and the Apache Empire-db project logo are trademarks of
The Apache Software Foundation</small></div>
+ </div>
+
+</div>
+
+</body>
+</html>
\ No newline at end of file
Added: empire-db/site/legacy/news.htm
URL:
http://svn.apache.org/viewvc/empire-db/site/legacy/news.htm?rev=1898936&view=auto
==============================================================================
--- empire-db/site/legacy/news.htm (added)
+++ empire-db/site/legacy/news.htm Mon Mar 14 20:41:26 2022
@@ -0,0 +1,472 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-gb" lang="en-gb" >
+<!-- #BeginTemplate "main.dwt" -->
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta http-equiv="language" content="en" />
+ <meta name="robots" content="index, follow" />
+ <meta name="keywords" content="java, jar, jdbc, sql, data, metadata,
persistence, rdbms, orm, mapping" />
+ <meta name="description" content="Open Source relational data
persistence component." />
+
+ <!-- #BeginEditable "doctitle" -->
+ <title>Empire-db relational data persistence - News</title>
+ <!-- #EndEditable -->
+
+ <script type="text/javascript" src="./js/prototype.js"></script>
+ <script type="text/javascript" src="./js/menu.js"></script>
+ <!-- #BeginEditable "javascripts" -->
+ <!-- #EndEditable -->
+
+ <link rel="shortcut icon" href="empire-db.ico" />
+ <link rel="stylesheet" href="css/layout.css" type="text/css" />
+ <!-- #BeginEditable "stylesheets" -->
+<style type="text/css">
+
+
+
+div#top {
+ height: 20px;
+}
+
+table#comparison {
+ display: block;
+ width: 580px;
+}
+
+table#comparison th {
+ background-color: #F0F0F0;
+}
+
+table#comparison tbody th {
+ width: 150px;
+ text-align: left;
+}
+
+table#comparison td {
+ text-align: center;
+}
+
+table#comparison td.classical {
+ background-color: #ffffaa; /* #ffff99; */
+}
+
+table#comparison td.empiredb {
+ background-color: #ffd5aa; /* #ffcc99; /*
+}
+
+</style>
+ <!-- #EndEditable -->
+</head>
+
+<body>
+<div id="wrapper">
+
+ <!-- Header -->
+ <div id="header">
+ <div id="logo">
+ <img src="images/logos/empire-db-logo.gif"
alt="Empire-db: The relational data persistence component." />
+ </div>
+ <div id="asf">
+ <a id="asfhome" target="_blank"
href="https://www.apache.org"><img src="images/logos/feather-small.gif"
alt="The Apache Software Foundation" /></a>
+ <label for="asfhome" >The Apache Software
Foundation</label>
+ </div>
+ <div style="clear:both"></div>
+ </div>
+
+ <!-- Top -->
+ <div id="top">
+ <div id="topbar"> </div>
+ </div>
+
+ <!-- Middle -->
+ <div id="middle">
+ <div id="left">
+ <div id="menuBox">
+ <ul id="mainMenu">
+ <li id="menu_home"><a
href="index.html">Home</a></li>
+ <li id="menu_news"><a
href="news.htm">News</a></li>
+ <li id="menu_empiredb"><a
href="empiredb/empiredb.htm">Empire-db</a>
+ <ul
class="subMenu">
+ <li
id="menu_empiredb_extending_pattern"><a href="empiredb/pattern.htm">The Empire
DAO-<br />pattern</a></li>
+ <li
id="menu_empiredb_handling_metadata"><a href="empiredb/metadata.htm">Handling
data and metadata</a></li>
+ <li
id="menu_empiredb_wrong"><a href="empiredb/hibernate.htm">What's wrong with
Hibernate and JPA</a></li>
+ <li
id="menu_empiredb_stringfree"><a href="empiredb/stringfree.htm">The principle
of<br/>string-free coding</a></li>
+ <li
id="menu_empiredb_faq"><a href="empiredb/faq.htm">FAQ</a></li>
+ </ul>
+ </li>
+ <li id="menu_struts2ext"><a
href="struts2ext/struts2ext.htm">Empire-db and Struts2</a>
+ <ul class="subMenu">
+ <li
id="menu_struts2ext_forms_controls"><a
href="struts2ext/forms_controls.htm">Forms and controls</a></li>
+ <li
id="menu_struts2ext_rendering_parsing"><a
href="struts2ext/rendering_parsing.htm">Rendering and parsing</a></li>
+ <!--<li
id="menu_struts2ext_tag_reference"><a href="struts2ext/tag_reference.htm">Tag
reference</a></li>-->
+ <li
id="menu_struts2ext_input_controls"><a
href="struts2ext/input_controls.htm">Input controls</a></li>
+ </ul>
+ </li>
+ <li id="menu_downloads"><a
href="downloads/latest.htm">Downloads</a>
+ <ul
class="subMenu">
+ <li
id="menu_downloads_previous"><a href="downloads/previous.htm">Previous
releases</a></li>
+ <li
id="menu_downloads_license"><a href="downloads/license.htm">License</a></li>
+ </ul>
+ </li>
+ <li id="menu_documentation"><a
href="documentation/documentation.htm">Documentation</a>
+ <ul class="subMenu">
+ <li
id="menu_documentation_class_overview"><a
href="documentation/class_overview.htm">Empire-db class<br />overview</a></li>
+ <li
id="menu_documentation_tutorials"><a
href="documentation/tutorial.htm">Tutorial</a></li>
+ <li
id="menu_documentation_getting_started"><a
href="documentation/getting_started.htm">Getting started</a></li>
+ <li
id="menu_documentation_reverse_engineering"><a
href="documentation/reverse_engineering.htm">Reverse Engineering</a></li>
+ <li
id="menu_documentation_api"><a href="documentation/api.htm">API</a></li>
+ </ul>
+ </li>
+ <li id="menu_community"><a
href="community/community.htm">Community</a>
+ <ul class="subMenu">
+ <li
id="menu_community_mailing_lists"><a href="community/mailing_lists.htm">Mailing
lists</a></li>
+ <li
id="menu_community_source_code"><a href="community/source_code.htm">Source
code</a></li>
+ <li
id="menu_community_jira"><a href="community/jira.htm">Ticketing &
Wiki</a></li>
+ <!--<li
id="menu_community_road_map"><a href="community/road_map.htm">Road
map</a></li>-->
+ <li
id="menu_community_contributors"><a
href="community/contributors.htm">Contributors</a></li>
+ </ul>
+ </li>
+ <li id="menu_apache"><a
href="apache.htm">About Apache</a>
+ <ul class="subMenu">
+ <li
id="menu_apache_home"><a href="https://www.apache.org">Apache home<span
class="asflink"> </span></a></li>
+ <li
id="menu_apache_donate"><a
href="https://www.apache.org/foundation/sponsorship.html">Sponsorship<span
class="asflink"> </span></a></li>
+ <li
id="menu_apache_thanks"><a
href="https://www.apache.org/foundation/thanks.html">Foundation thanks<span
class="asflink"> </span></a></li>
+ <li
id="menu_apache_security"><a
href="https://www.apache.org/security/">Security<span
class="asflink"> </span></a></li>
+ </ul>
+ </li>
+ <li id="menu_disclaimer"><a
href="https://www.apache.org/licenses/">License<span
class="asflink"> </span></a></li>
+ </ul>
+ </div>
+
+ </div>
+
+ <!-- #BeginEditable "menu" -->
+ <script type="text/javascript">
+ var menu = new Menu( 'mainMenu', 'menu_news' );
+ </script>
+ <!-- #EndEditable -->
+ <script type="text/javascript">
+ /* <![CDATA[ */
+ if( menu ) {
+ // Menu fully opened (comment out if not wanted)
+ // menu.openAll();
+ /* ]]> */
+ }
+ </script>
+
+ <div id="main">
+
+ <div id="pathway">
+ <span style="float:left">
+ <!-- #BeginEditable "pathway" -->
+ News
+ <!-- #EndEditable -->
+ </span>
+ <a id="downloadLink" href="downloads/latest.htm"
style="float:right">Download</a>
+ </div>
+
+ <div id="content">
+ <!-- #BeginEditable "content" -->
+ <h1>Latest News</h1>
+
+ <div class="news">
+ <div>
+ <h2><span class="createdate">Sunday, 23th Jan
2022</span> - Apache Empire-db 2.5.1 released</h2>
+ </div>
+ <p>The Apache Empire-db 2.5.1 release was approved by the
Apache Empire-db Project Management Comitee (PMC).
+ The distribution will now be provided for download from
the Apache Empire-db website and will be available from the Maven 2 repository.
+ More information can be found in the <a
href="downloads/latest.htm">download area</a>.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span class="createdate">Tuesday, 12th May
2020</span> - Apache Empire-db 2.5.0 released</h2>
+ </div>
+ <p>The Apache Empire-db 2.5.0 release was approved by the
Apache Empire-db Project Management Comitee (PMC).
+ The distribution will now be provided for download from
the Apache Empire-db website and will be available from the Maven 2 repository.
+ More information can be found in the <a
href="downloads/latest.htm">download area</a>.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span class="createdate">Wednesday, 31st October
2018</span> - Apache Empire-db 2.4.7 released</h2>
+ </div>
+ <p>The Apache Empire-db 2.4.7 release was approved by the
Apache Empire-db Project Management Comitee (PMC).
+ The distribution will now be provided for download from
the Apache Empire-db website and will be available from the Maven 2 repository.
+ More information can be found in the <a
href="downloads/latest.htm">download area</a>.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span class="createdate">Tuesday, 17th January
2017</span> - Apache Empire-db 2.4.6 released</h2>
+ </div>
+ <p>The Apache Empire-db 2.4.6 release was approved by the
Apache Empire-db Project Management Comitee (PMC).
+ The distribution will now be provided for download from
the Apache Empire-db website and will be available from the Maven 2 repository.
+ More information can be found in the <a
href="downloads/latest.htm">download area</a>.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span class="createdate">Thursday, 18th August
2015</span> - Apache Empire-db 2.4.4 released</h2>
+ </div>
+ <p>The Apache Empire-db 2.4.4 release was approved by the
Apache Empire-db Project Management Comitee (PMC).
+ The distribution will now be provided for download from
the Apache Empire-db website and will be available from the Maven 2 repository.
+ More information can be found in the <a
href="downloads/latest.htm">download area</a>.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span class="createdate">Thursday, 20th August
2014</span> - Apache Empire-db 2.4.3 released</h2>
+ </div>
+ <p>The Apache Empire-db 2.4.3 release was approved by the
Apache Empire-db Project Management Comitee (PMC).
+ The distribution will now be provided for download from
the Apache Empire-db website and will be available from the Maven 2 repository.
+ More information can be found in the <a
href="downloads/latest.htm">download area</a>.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span class="createdate">Thursday, 16th October
2013</span> - Apache Empire-db 2.4.2 released</h2>
+ </div>
+ <p>The Apache Empire-db 2.4.2 release was approved by the
Apache Empire-db Project Management Comitee (PMC).
+ The distribution will now be provided for download from
the Apache Empire-db website and will be available from the Maven 2 repository.
+ More information can be found in the <a
href="downloads/latest.htm">download area</a>.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span class="createdate">Thursday, 31th October
2012</span> - Apache Empire-db 2.4.1 released</h2>
+ </div>
+ <p>The Apache Empire-db 2.4.1 release was approved by the
Apache Empire-db Project Management Comitee (PMC).
+ The distribution will now be provided for download from
the Apache Empire-db website and will be available from the Maven 2
repository.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span class="createdate">Tuesday, 7th August
2012</span> - Apache Empire-db 2.4.0 released</h2>
+ </div>
+ <p>The Apache Empire-db 2.4.0 release was approved by the
Apache Empire-db Project Management Comitee (PMC).
+ The distribution will now be provided for download from
the Apache Empire-db website and will be available from the Maven 2
repository.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span class="createdate">Tuesday, 24th January
2012</span> - Apache Empire-db to become a Top-Level-Project (TLP)</h2>
+ </div>
+ <p>The Apache Empire-db project has entered the Apache
Incubator in July 2008 and has since steadily developed it's code base and it's
community.
+ In October 2011 the Empire-db PMC felt confident that
Empire-db was now mature enough to leave the Apache incubator and become a
Top-Level-Project within the Apache Software Foundation.
+ After a corresponding proposal had been submitted and
after a positive vote from members of the Incubator PMC the Apache board has
now promoted Empire-db to become a TLP.
+ We want to thank all contributors and users for their
support and confidence.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span class="createdate">Wednesday, 2nd November
2011</span> - Apache Empire-db 2.2.0 released</h2>
+ </div>
+ <p>The Apache Empire-db 2.2.0 release was approved by the
Apache Incubator Project Management Comitee (IPMC).
+ The distribution will now be provided for download from
the Apache Empire-db website and will be available from the Maven 2
repository.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span class="createdate">Sunday, 6 March
2011</span> - Apache Empire-db 2.1.0 released</h2>
+ </div>
+ <p>Today the Apache Empire-db 2.1.0 release was approved
by the Apache Incubator Project Management Comitee (IPMC).
+ The distribution will now be provided for download from
the Apache Empire-db website and will be available from the Maven 2 repository.
+ </p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span
class="createdate">Wednesday, 16 February 2011</span> - Eike Kettner has been
elected as committer</h2>
+ </div>
+ <p>Eike has been with us since July
2009 and he has made several valuable contributions since. Apart from the
number of patches that Eike has contributed,
+ we would like to emphasize their quality and complexity
which makes us confident that Eike would be of great benefit to your project.
+ He has been elected as a new committer
on the Apache Empire-DB project, and is welcomed by the whole Empire-db crew.
+ </p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span class="createdate">Sunday, 12 December
2010</span> - Apache Empire-db 2.0.7 released</h2>
+ </div>
+ <p>Today the Apache Empire-db 2.0.7 release was approved
by the Apache Incubator Project Management Comitee (IPMC).
+ The distribution will now be provided for download from
the Apache Empire-db website and will be available from the Maven 2
repository.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span
class="createdate">Sunday, 9 May 2010</span>
+ - Apache Empire-db 2.0.6
released</h2>
+ </div>
+ <p>Today the Apache Empire-db 2.0.6
release was approved by the Apache Incubator Project Management Comitee (IPMC).
+ The distribution will now be provided
for download from the Apache Empire-db website and will be available from the
Maven 2 repository.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span
class="createdate">Thursday, 18 December 2009</span>
+ Benjamin Venditti has been
elected as committer</h2>
+ </div>
+ <p>After having provided several
important bugfixes and improvements and after having contributed heavily for
the new Empire-db code generator Benjamin Venditti
+ has been elected as a new committer on
the Apache Empire-DB
+ project, and is welcomed by the whole
Empire-db crew.
+ </p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span
class="createdate">Thursday, 24 September 2009</span>
+ - Apache Empire-db 2.0.5
released</h2>
+ </div>
+ <p>Today the Apache Empire-db 2.0.5
release was approved by the Apache Incubator Project Management Comitee (IPMC).
+ The distribution will now be provided
for download from the Apache Empire-db website and will be available from the
Maven 2 repository.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span
class="createdate">Friday, 21 August 2009</span>
+ - Apache Empire-db 2.0.5
development completed</h2>
+ </div>
+ <p>Empire-db community has completed
working on Release 2.0.5 and is now looking for approval of the IPMC to publish
the release.
+ Project mangement has been shifted
from Ant to Maven, hence the distribution will be available through the Maven
repository.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span
class="createdate">Monday, 2 March 2009</span>
+ - New Examples for Web-Service
integration using Apache
+ CXF</h2>
+ </div>
+ <p>Two new example projects show how
Web-Services and Web-Service clients can benefit from Empire-db. The first
sample implements a WebService that reads data from and stores data in a
relational database. The second example shows how a WebService
+ client can benefit from Empire-db's
metadata capabilities.<br/>Both samples use <a href="https://cxf.apache.org/"
target="_blank">Apache CXF</a> as the WebService framework. The examples are
available from the <a href="community/source_code.htm">Subversion source
repository</a>.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span
class="createdate">Saturday, 27 December 2008</span>
+ - Francis De Brabandere
accepted as new committer</h2>
+ </div>
+ <p>Francis De Brabandere has been
accepted by the community as a new committer on the Empire-db
project.<br/>Francis has excellent <a
href="https://maven.apache.org/">Maven</a> skills and he will help us with the
transition from a classic project layout to a <a
href="https://maven.apache.org/">Maven</a> based project and dependency
management.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span
class="createdate">Monday, 13 October 2008</span>
+ - Empire-db Release 2.0.4
approved</h2>
+ </div>
+ <p>Today the release candidates of
apache-empire-db-2.0.4-incubating and
apache-empire-struts2-ext-1.0.4-incubating have been approved by the
+ Apache Incubator PMC.<br\> The
+ distribution files will be provided on
the Apache Empire-db website's <a href="downloads/previous.htm">download
area</a>.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span
class="createdate">Tuesday, 8 July 2008</span>
+ - Empire-db accepted for Apache
Incubator!</h2>
+ </div>
+ <p><a
href="https://wiki.apache.org/incubator/Empire-dbProposal">The Empire-db
proposal</a> has been accepted
+ by the Apache Incubator PMC for <a
href="https://incubator.apache.org/">incubation</a> at the
+ <a
href="https://www.apache.org/">Apache Software Foundation!</a><br /></p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span
class="createdate">Sunday, 6 July 2008</span>
+ - New Release 2.0.2
available</h2>
+ </div>
+ <p>Empire-db 2.0.2 released, featuring
new Bean metadata support.<br />
+ Click <a
href="downloads/previous.htm">here</a> to download.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span
class="createdate">Tuesday, 17 June 2008</span>
+ - Empire-db applies to become
Apache project</h2>
+ </div>
+ <p>Empire-db passed in a proposal to
the <a href="https://www.apache.org/">Apache Software Foundation</a> to
+ become an <a
href="https://incubator.apache.org/">Apache Incubator project</a>.<br/>
+ Click <a
href="https://wiki.apache.org/incubator/Empire-dbProposal">here</a> to read the
proposal.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span
class="createdate">Sunday, 6 April 2008</span> - New Release 2.0.1
released.</h2>
+ </div>
+ <p>Empire-db 2.0.1 released, featuring
new MySQL database support.<br />
+ Click <a
href="downloads/previous.htm">here</a> to download.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span
class="createdate">Sunday, 13 January 2008</span> - Empire-db website goes
online</h2>
+ </div>
+ <p>The Empire-db website has been published.</p>
+ </div>
+
+ <div class="news">
+ <div>
+ <h2><span
class="createdate">Friday, 11 January 2008</span> - Empire-db Release 2.0.0
published.</h2>
+ </div>
+ <p>Empire-db 2.0.0 has been released,
see details and download at <a href="downloads/previous.htm">Downloads</a>
+ </p>
+ </div>
+
+ <!--<img style="display: block; margin: auto; width: 600px;
height: 272px;" src="images/diagrams/dao_pattern.png" alt="" />-->
+ <!-- #EndEditable --></div>
+
+ <div id="nav">
+ <hr />
+ <div id="nav_prev">
+ <a id="prev" href=""><img
src="images/prev.gif" alt="" /> Previous Page</a>
+
+ </div>
+ <div id="nav_next">
+
+ <a id="next" href="">Next Page <img
src="images/next.gif" alt="" /></a>
+ </div>
+ <div style="clear: both;"></div>
+ </div>
+
+ <script type="text/javascript">
+ /* <![CDATA[ */
+ if( ( typeof(prev_page) == "undefined" ||
prev_page == "" ) &&
+ ( typeof(next_page) == "undefined" ||
next_page == "" ) )
+ {
+ $( 'nav' ).hide();
+ }
+ else
+ {
+ if( typeof(prev_page) != "undefined" &&
prev_page != "" ) {
+ $( 'prev' ).href = prev_page;
+ $( 'prev' ).show();
+ }
+ else {
+ $( 'prev' ).hide();
+ }
+
+ if( typeof(next_page) != "undefined" &&
next_page !="" ) {
+ $( 'next' ).href = next_page;
+ $( 'next' ).show();
+ }
+ else {
+ $( 'next' ).hide();
+ }
+ }
+ /* ]]> */
+ </script>
+
+ </div>
+
+ </div>
+
+ <!-- Footer -->
+ <div id="footer">
+ <div class="cr"><small>Copyright © 2008-2021, The Apache
Software Foundation</small></div>
+ <div class="tm"><small>Apache Empire-db, Empire-db, Apache, the
Apache feather logo, and the Apache Empire-db project logo are trademarks of
The Apache Software Foundation</small></div>
+ </div>
+
+</div>
+
+</body>
+<!-- #EndTemplate -->
+</html>
\ No newline at end of file
Propchange: empire-db/site/legacy/news.htm
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: empire-db/site/legacy/struts2ext/forms_controls.htm
URL:
http://svn.apache.org/viewvc/empire-db/site/legacy/struts2ext/forms_controls.htm?rev=1898936&view=auto
==============================================================================
--- empire-db/site/legacy/struts2ext/forms_controls.htm (added)
+++ empire-db/site/legacy/struts2ext/forms_controls.htm Mon Mar 14 20:41:26 2022
@@ -0,0 +1,362 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-gb" lang="en-gb" >
+<!-- #BeginTemplate "../main.dwt" -->
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta http-equiv="language" content="en" />
+ <meta name="robots" content="index, follow" />
+ <meta name="keywords" content="java, jar, jdbc, sql, data, metadata,
persistence, rdbms, orm, mapping" />
+ <meta name="description" content="Open Source relational data
persistence component." />
+
+ <!-- #BeginEditable "doctitle" -->
+<title>Empire-db and Struts2 - Rendering and parsing</title>
+ <!-- #EndEditable -->
+
+ <script type="text/javascript" src="../js/prototype.js"></script>
+ <script type="text/javascript" src="../js/menu.js"></script>
+ <!-- #BeginEditable "javascripts" -->
+ <!-- #EndEditable -->
+
+ <link rel="shortcut icon" href="../empire-db.ico" />
+ <link rel="stylesheet" href="../css/layout.css" type="text/css" />
+ <!-- #BeginEditable "stylesheets" -->
+ <!-- #EndEditable -->
+</head>
+
+<body>
+<div id="wrapper">
+
+ <!-- Header -->
+ <div id="header">
+ <div id="logo">
+ <img src="../images/logos/empire-db-logo.gif"
alt="Empire-db: The relational data persistence component." />
+ </div>
+ <div id="asf">
+ <a id="asfhome" target="_blank"
href="https://www.apache.org"><img src="../images/logos/feather-small.gif"
alt="The Apache Software Foundation" /></a>
+ <label for="asfhome" >The Apache Software
Foundation</label>
+ </div>
+ <div style="clear:both"></div>
+ </div>
+
+ <!-- Top -->
+ <div id="top">
+ <div id="topbar"> </div>
+ </div>
+
+ <!-- Middle -->
+ <div id="middle">
+ <div id="left">
+ <div id="menuBox">
+ <ul id="mainMenu">
+ <li id="menu_home"><a
href="../index.html">Home</a></li>
+ <li id="menu_news"><a
href="../news.htm">News</a></li>
+ <li id="menu_empiredb"><a
href="../empiredb/empiredb.htm">Empire-db</a>
+ <ul
class="subMenu">
+ <li
id="menu_empiredb_extending_pattern"><a href="../empiredb/pattern.htm">The
Empire DAO-<br />pattern</a></li>
+ <li
id="menu_empiredb_handling_metadata"><a
href="../empiredb/metadata.htm">Handling data and metadata</a></li>
+ <li
id="menu_empiredb_wrong"><a href="../empiredb/hibernate.htm">What's wrong with
Hibernate and JPA</a></li>
+ <li
id="menu_empiredb_stringfree"><a href="../empiredb/stringfree.htm">The
principle of<br/>string-free coding</a></li>
+ <li
id="menu_empiredb_faq"><a href="../empiredb/faq.htm">FAQ</a></li>
+ </ul>
+ </li>
+ <li id="menu_struts2ext"><a
href="struts2ext.htm">Empire-db and Struts2</a>
+ <ul class="subMenu">
+ <li
id="menu_struts2ext_forms_controls"><a href="forms_controls.htm">Forms and
controls</a></li>
+ <li
id="menu_struts2ext_rendering_parsing"><a
href="rendering_parsing.htm">Rendering and parsing</a></li>
+ <!--<li
id="menu_struts2ext_tag_reference"><a href="struts2ext/tag_reference.htm">Tag
reference</a></li>-->
+ <li
id="menu_struts2ext_input_controls"><a href="input_controls.htm">Input
controls</a></li>
+ </ul>
+ </li>
+ <li id="menu_downloads"><a
href="../downloads/latest.htm">Downloads</a>
+ <ul
class="subMenu">
+ <li
id="menu_downloads_previous"><a href="../downloads/previous.htm">Previous
releases</a></li>
+ <li
id="menu_downloads_license"><a href="../downloads/license.htm">License</a></li>
+ </ul>
+ </li>
+ <li id="menu_documentation"><a
href="../documentation/documentation.htm">Documentation</a>
+ <ul class="subMenu">
+ <li
id="menu_documentation_class_overview"><a
href="../documentation/class_overview.htm">Empire-db class<br
/>overview</a></li>
+ <li
id="menu_documentation_tutorials"><a
href="../documentation/tutorial.htm">Tutorial</a></li>
+ <li
id="menu_documentation_getting_started"><a
href="../documentation/getting_started.htm">Getting started</a></li>
+ <li
id="menu_documentation_reverse_engineering"><a
href="../documentation/reverse_engineering.htm">Reverse Engineering</a></li>
+ <li
id="menu_documentation_api"><a href="../documentation/api.htm">API</a></li>
+ </ul>
+ </li>
+ <li id="menu_community"><a
href="../community/community.htm">Community</a>
+ <ul class="subMenu">
+ <li
id="menu_community_mailing_lists"><a
href="../community/mailing_lists.htm">Mailing lists</a></li>
+ <li
id="menu_community_source_code"><a href="../community/source_code.htm">Source
code</a></li>
+ <li
id="menu_community_jira"><a href="../community/jira.htm">Ticketing &
Wiki</a></li>
+ <!--<li
id="menu_community_road_map"><a href="community/road_map.htm">Road
map</a></li>-->
+ <li
id="menu_community_contributors"><a
href="../community/contributors.htm">Contributors</a></li>
+ </ul>
+ </li>
+ <li id="menu_apache"><a
href="../apache.htm">About Apache</a>
+ <ul class="subMenu">
+ <li
id="menu_apache_home"><a href="https://www.apache.org">Apache home<span
class="asflink"> </span></a></li>
+ <li
id="menu_apache_donate"><a
href="https://www.apache.org/foundation/sponsorship.html">Sponsorship<span
class="asflink"> </span></a></li>
+ <li
id="menu_apache_thanks"><a
href="https://www.apache.org/foundation/thanks.html">Foundation thanks<span
class="asflink"> </span></a></li>
+ <li
id="menu_apache_security"><a
href="https://www.apache.org/security/">Security<span
class="asflink"> </span></a></li>
+ </ul>
+ </li>
+ <li id="menu_disclaimer"><a
href="https://www.apache.org/licenses/">License<span
class="asflink"> </span></a></li>
+ </ul>
+ </div>
+
+ </div>
+
+ <!-- #BeginEditable "menu" -->
+ <script type="text/javascript">
+ var menu = new Menu( 'mainMenu', 'menu_struts2ext',
'menu_struts2ext_forms_controls' );
+ var prev_page = "struts2ext.htm";
+ var next_page = "rendering_parsing.htm";
+ </script>
+ <!-- #EndEditable -->
+ <script type="text/javascript">
+ /* <![CDATA[ */
+ if( menu ) {
+ // Menu fully opened (comment out if not wanted)
+ // menu.openAll();
+ /* ]]> */
+ }
+ </script>
+
+ <div id="main">
+
+ <div id="pathway">
+ <span style="float:left">
+ <!-- #BeginEditable "pathway" -->
+ <a href="struts2ext.htm">Empire-db and Struts2</a>
» Rendering and parsing
+ <!-- #EndEditable -->
+ </span>
+ <a id="downloadLink" href="../downloads/latest.htm"
style="float:right">Download</a>
+ </div>
+
+ <div id="content">
+ <!-- #BeginEditable "content" -->
+ <h1>Input controls part 1 â Forms and controls</h1>
+ <p> For database driven Web applications one of the
most common tasks is displaying
+ a form for adding new and modifying existing
records. To demonstrate how much safer,
+ cleaner and more efficient you can work using
the Empire-Struts2-Extensions we
+ compare it to standard Struts2.</p>
+ <p> Letâs first look at the attributes that are
required to define a form input control:</p>
+ <ol>
+ <li>The type of input (text, selection list,
checkbox)</li>
+ <li>The maximum input length for text
fields</li>
+ <li>The list of possible values for selection
lists</li>
+ <li>Whether or not the field is mandatory</li>
+ <li>Whether or not the field value is editable
or read only</li>
+ </ol>
+ <p> While points 1 to 4 are usually defined through
static attributes of a particular
+ field, the fieldâs accessibility (point 5) is
more likely to depend on the context,
+ such as the recordâs state or user
credentials â and thus has more complex requirements.
+ This point is further discussed in the section
<a href="#access_logic">Implementing field level access logic</a>.</p>
+ <p> The definition of a full featured input control
with standard Struts2 tags looks somewhat like this:</p>
+ <pre><span style="color: #0000FF; "><</span><span
style="color: #800000; ">s:textfield </span><span style="color: #FF0000;
">key</span><span style="color: #0000FF;
">="employee.lastname"</span><span style="color: #FF0000; ">
+ size</span><span style="color: #0000FF;
">="40"</span><span style="color: #FF0000; ">
+ required</span><span style="color: #0000FF;
">="true"</span><span style="color: #FF0000; ">
+ disabled</span><span style="color: #0000FF;
">="!hasAccess('employee.lastname')"</span><span style="color:
#FF0000; "> </span><span style="color: #0000FF; ">/></span></pre>
+
+ <p> With Empire-Struts2-Extensions youâd simply
write:</p>
+ <pre><span style="color: #0000FF; "><</span><span
style="color: #800000; ">e:control </span><span style="color: #FF0000;
">column</span><span style="color: #0000FF; ">="<%= EMPLOYEES.LASTNAME
%>"</span><span style="color: #FF0000; "> </span><span style="color:
#0000FF; ">/></span></pre>
+
+ <p> The same applies to a field that is displayed as a
selection list. With traditional Struts2 tags
+ it may look like this:</p>
+ <pre><span style="color: #0000FF; "><</span><span
style="color: #800000; ">s:select </span><span style="color: #FF0000;
">key</span><span style="color: #0000FF;
">="employee.gender"</span><span style="color: #FF0000; ">
+ list</span><span style="color: #0000FF;
">="genders"</span><span style="color: #FF0000; ">
listKey</span><span style="color: #0000FF; ">="key"</span><span
style="color: #FF0000; "> listValue</span><span style="color: #0000FF;
">="value"</span><span style="color: #FF0000; ">
+ required</span><span style="color: #0000FF;
">="true"</span><span style="color: #FF0000; ">
+ disabled</span><span style="color: #0000FF;
">="!hasAccess('employee.department')"</span><span style="color:
#FF0000; "> </span><span style="color: #0000FF; ">/></span></pre>
+
+ <p> Again with Empire-Struts2-Extensions the code is simply:</p>
+ <pre><span style="color: #0000FF; "><</span><span
style="color: #800000; ">e:control </span><span style="color: #FF0000;
">column</span><span style="color: #0000FF; ">="<%= EMPLOYEES.GENDER
%>"</span><span style="color: #FF0000; "> </span><span style="color:
#0000FF; ">/></span></pre>
+
+ <p> All the information necessary to set all input control
+ attributes is provided by the meta information
+ supplied by the record and column objects. The
following code shows the corresponding column
+ definition for the two fields with extended view
specific metadata:</p>
+ <pre><span style="color: #0000FF; ">public</span><span
style="color: #000000; "> </span><span style="color: #0000FF;
">static</span><span style="color: #000000; "> </span><span style="color:
#0000FF; ">class</span><span style="color: #000000; "> Employees </span><span
style="color: #0000FF; ">extends</span><span style="color: #000000; "> DBTable
+{
+ </span><span style="color: #0000FF; ">public</span><span style="color:
#000000; "> </span><span style="color: #0000FF; ">final</span><span
style="color: #000000; "> DBTableColumn LASTNAME;
+ </span><span style="color: #0000FF; ">public</span><span style="color:
#000000; "> </span><span style="color: #0000FF; ">final</span><span
style="color: #000000; "> DBTableColumn GENDER;
+
+ </span><span style="color: #0000FF; ">public</span><span style="color:
#000000; "> Employees(DBDatabase db)
+ {
+ </span><span style="color: #0000FF; ">super</span><span style="color:
#000000; ">(</span><span style="color: #000000; ">"</span><span
style="color: #000000; ">EMPLOYEES</span><span style="color: #000000;
">"</span><span style="color: #000000; ">, db);
+ </span><span style="color: #000000; "> </span><span style="color:
#008000; ">// Add columns
+</span><span style="color: #000000; "> LASTNAME </span><span
style="color: #000000; ">=</span><span style="color: #000000; ">
addColumn(</span><span style="color: #000000; ">"</span><span
style="color: #000000; ">LASTNAME</span><span style="color: #000000;
">"</span><span style="color: #000000; ">, DataType.TEXT, </span><span
style="color: #000000; ">40</span><span style="color: #000000; ">, </span><span
style="color: #0000FF; ">true</span><span style="color: #000000; ">);
+ GENDER </span><span style="color: #000000; ">=</span><span
style="color: #000000; "> addColumn(</span><span style="color: #000000;
">"</span><span style="color: #000000; ">GENDER</span><span style="color:
#000000; ">"</span><span style="color: #000000; ">, DataType.TEXT,
</span><span style="color: #000000; ">1</span><span style="color: #000000; ">,
</span><span style="color: #0000FF; ">false</span><span style="color: #000000;
">);
+ </span><span style="color: #000000; "> </span><span style="color:
#008000; ">// Set control types
+ </span><span style="color: #000000; ">
LASTNAME.setControlType(</span><span style="color: #000000;
">"</span><span style="color: #000000; ">text</span><span style="color:
#000000; ">"</span><span style="color: #000000; ">);
+ GENDER.setControlType(</span><span style="color: #000000;
">"</span><span style="color: #000000; ">select</span><span style="color:
#000000; ">"</span><span style="color: #000000; ">);
+ </span><span style="color: #008000; ">//</span><span style="color:
#008000; "> Set gender options</span><span style="color: #008000; ">
+</span><span style="color: #000000; "> Options genders </span><span
style="color: #000000; ">=</span><span style="color: #000000; "> </span><span
style="color: #0000FF; ">new</span><span style="color: #000000; "> Options();
+ genders.set(</span><span style="color: #000000; ">"</span><span
style="color: #000000; ">M</span><span style="color: #000000;
">"</span><span style="color: #000000; ">, </span><span style="color:
#000000; ">"</span><span style="color: #000000; ">Male</span><span
style="color: #000000; ">"</span><span style="color: #000000; ">);
+ genders.set(</span><span style="color: #000000; ">"</span><span
style="color: #000000; ">F</span><span style="color: #000000;
">"</span><span style="color: #000000; ">, </span><span style="color:
#000000; ">"</span><span style="color: #000000; ">Female</span><span
style="color: #000000; ">"</span><span style="color: #000000; ">);
+ GENDER.setOptions(genders);
+ }
+}</span></pre>
+
+ <p> As you can see, we have added the control type and possible
gender
+ options here for our two columns. For simplicity we have put
this
+ together with the database schema definition, but you may as
well
+ separate it and add the data in a different class or method.</p>
+
+ <h1>Form definition â the whole story</h1>
+ <p> Summing up, with traditional Struts2 syntax the entire form
to display an employee record may look like this:</p>
+ <pre><span style="color: #0000FF; "><</span><span
style="color: #800000; ">s:form </span><span style="color: #FF0000;
">action</span><span style="color: #0000FF;
">="employeeDetail!doSave"</span><span style="color: #0000FF;
">></span><span style="color: #000000; ">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">s:textfield </span><span style="color: #FF0000; ">key</span><span
style="color: #0000FF; ">="employee.employeeId"</span><span
style="color: #FF0000; "> disabled</span><span style="color: #0000FF;
">="true"</span><span style="color: #0000FF; ">/></span><span
style="color: #000000; ">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">s:textfield </span><span style="color: #FF0000; ">key</span><span
style="color: #0000FF; ">="employee.firstname"</span><span
style="color: #FF0000; "> size</span><span style="color: #0000FF;
">="40"</span><span style="color: #FF0000; "> required</span><span
style="color: #0000FF; ">="true"</span><span style="color: #FF0000;
"> disabled</span><span style="color: #0000FF;
">="employee.retired"</span><span style="color: #FF0000; ">
</span><span style="color: #0000FF; ">/></span><span style="color: #000000;
">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">s:textfield </span><span style="color: #FF0000; ">key</span><span
style="color: #0000FF; ">="employee.lastname"</span><span
style="color: #FF0000; "> size</span><span style="color: #0000FF;
">="40"</span><span style="color: #FF0000; "> required</span><span
style="color: #0000FF; ">="true"</span><span style="color: #FF0000;
"> disabled</span><span style="color: #0000FF;
">="employee.retired"</span><span style="color: #FF0000; ">
</span><span style="color: #0000FF; ">/></span><span style="color: #000000;
">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">s:select </span><span style="color: #FF0000; ">key</span><span
style="color: #0000FF; ">="employee.gender"</span><span style="color:
#FF0000; "> list</span><span style="color: #0000FF; ">="#{'M':'Male',
'F':'Female'}"</span><span style="color: #FF0000; "> disabled</span><span
style="color: #0000FF; ">="employee.retired"</span><span
style="color: #FF0000; "> </span><span style="color: #0000FF;
">/></span><span style="color: #000000; ">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">s:textfield </span><span style="color: #FF0000; ">key</span><span
style="color: #0000FF; ">="employee.dateOfBirth"</span><span
style="color: #FF0000; "> size</span><span style="color: #0000FF;
">="10"</span><span style="color: #FF0000; "> disabled</span><span
style="color: #0000FF; ">="employee.retired"</span><span
style="color: #FF0000; "> </span><span style="color: #0000FF;
">/></span><span style="color: #000000; ">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">tr</span><span style="color: #0000FF; ">></span><span
style="color: #000000; ">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">td </span><span style="color: #FF0000; ">class</span><span
style="color: #0000FF; ">="tdLabel"</span><span style="color:
#0000FF; ">></span><span style="color: #000000; ">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">s:label </span><span style="color: #FF0000; ">value</span><span
style="color: #0000FF;
">="%{getText('employee.phoneNumber')}"</span><span style="color:
#FF0000; "> theme</span><span style="color: #0000FF;
">="simple"</span><span style="color: #FF0000; "> </span><span
style="color: #0000FF; ">/></span><span style="color: #000000;
">:</span><span style="color: #0000FF; "></</span><span style="color:
#800000; ">td</span><span style="color: #0000FF; ">></span><span
style="color: #000000; ">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">td</span><span style="color: #0000FF; ">></span><span
style="color: #000000; ">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">s:textfield </span><span style="color: #FF0000; ">key</span><span
style="color: #0000FF; ">="employee.phoneNumber_cou"</span><span
style="color: #FF0000; "> size</span><span style="color: #0000FF;
">="4"</span><span style="color: #FF0000; ">
+ maxlength</span><span style="color: #0000FF;
">="4"</span><span style="color: #FF0000; "> disabled</span><span
style="color: #0000FF; ">="employee.retired"</span><span
style="color: #FF0000; ">
+ theme</span><span style="color: #0000FF;
">="simple"</span><span style="color: #FF0000; "> </span><span
style="color: #0000FF; ">/></span><span style="color: #000000; ">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">s:textfield </span><span style="color: #FF0000; ">key</span><span
style="color: #0000FF; ">="employee.phoneNumber_cit"</span><span
style="color: #FF0000; "> size</span><span style="color: #0000FF;
">="8"</span><span style="color: #FF0000; ">
+ maxlength</span><span style="color: #0000FF;
">="8"</span><span style="color: #FF0000; "> disabled</span><span
style="color: #0000FF; ">="employee.retired"</span><span
style="color: #FF0000; ">
+ theme</span><span style="color: #0000FF;
">="simple"</span><span style="color: #FF0000; "> </span><span
style="color: #0000FF; ">/></span><span style="color: #000000; ">-
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">s:textfield </span><span style="color: #FF0000; ">key</span><span
style="color: #0000FF; ">="employee.phoneNumber_ext"</span><span
style="color: #FF0000; "> size</span><span style="color: #0000FF;
">="20"</span><span style="color: #FF0000; ">
+ maxlength</span><span style="color: #0000FF;
">="20"</span><span style="color: #FF0000; "> disabled</span><span
style="color: #0000FF; ">="employee.retired"</span><span
style="color: #FF0000; ">
+ theme</span><span style="color: #0000FF;
">="simple"</span><span style="color: #FF0000; "> </span><span
style="color: #0000FF; ">/></span><span style="color: #000000; ">
+ </span><span style="color: #0000FF; "></</span><span style="color:
#800000; ">td</span><span style="color: #0000FF; ">></span><span
style="color: #000000; ">
+ </span><span style="color: #0000FF; "></</span><span style="color:
#800000; ">tr</span><span style="color: #0000FF; ">></span><span
style="color: #000000; ">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">s:select </span><span style="color: #FF0000; ">key</span><span
style="color: #0000FF;
">="employee.department.departmentId"</span><span style="color:
#FF0000; "> list</span><span style="color: #0000FF;
">="departments"</span><span style="color: #FF0000; ">
+ listKey</span><span style="color: #0000FF;
">="departmentId"</span><span style="color: #FF0000; ">
listValue</span><span style="color: #0000FF; ">="name"</span><span
style="color: #FF0000; "> required</span><span style="color: #0000FF;
">="true"</span><span style="color: #FF0000; ">
+ disabled</span><span style="color: #0000FF;
">="employee.retired"</span><span style="color: #FF0000; ">
</span><span style="color: #0000FF; ">/></span><span style="color: #000000;
">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">tr</span><span style="color: #0000FF; ">></span><span
style="color: #000000; ">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">td </span><span style="color: #FF0000; ">class</span><span
style="color: #0000FF; ">="tdLabel"</span><span style="color:
#0000FF; ">></span><span style="color: #000000; ">
+ </span><span style="color: #0000FF; "><</span><span
style="color: #800000; ">s:label </span><span style="color: #FF0000;
">value</span><span style="color: #0000FF;
">="%{getText('employee.retired')}"</span><span style="color:
#FF0000; ">
+ theme</span><span style="color: #0000FF;
">="simple"</span><span style="color: #FF0000; "> </span><span
style="color: #0000FF; ">/></span><span style="color: #000000; ">
:</span><span style="color: #0000FF; "></</span><span style="color: #800000;
">td</span><span style="color: #0000FF; ">></span><span style="color:
#000000; ">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">td</span><span style="color: #0000FF; ">><</span><span
style="color: #800000; ">s:checkbox </span><span style="color: #FF0000;
">key</span><span style="color: #0000FF;
">="employee.retired"</span><span style="color: #FF0000; ">
theme</span><span style="color: #0000FF; ">="simple"</span><span
style="color: #FF0000; "> </span><span style="color: #0000FF;
">/></</span><span style="color: #800000; ">td</span><span style="color:
#0000FF; ">></span><span style="color: #000000; ">
+ </span><span style="color: #0000FF; "></</span><span style="color:
#800000; ">tr</span><span style="color: #0000FF; ">></span><span
style="color: #000000; ">
+</span><span style="color: #0000FF; "></</span><span style="color: #800000;
">s:form</span><span style="color: #0000FF; ">></span></pre>
+
+ <p> Whereas for exactly the same form with
Empire-Struts2-Extensions the code simply
+ looks like this:</p>
+ <pre><span style="color: #0000FF; "><</span><span
style="color: #800000; ">e:form </span><span style="color: #FF0000;
">record</span><span style="color: #0000FF; ">="<%=
action.getEmployee() %>"</span><span style="color: #FF0000; ">
action</span><span style="color: #0000FF; ">="!doSave"</span><span
style="color: #0000FF; ">></span><span style="color: #000000; ">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">e:control </span><span style="color: #FF0000; ">column</span><span
style="color: #0000FF; ">="<%= EMPLOYEES.EMPLOYEE_ID
%>"</span><span style="color: #FF0000; "> </span><span style="color:
#0000FF; ">/></span><span style="color: #000000; ">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">e:control </span><span style="color: #FF0000; ">column</span><span
style="color: #0000FF; ">="<%= EMPLOYEES.FIRSTNAME
%>"</span><span style="color: #FF0000; "> </span><span style="color:
#0000FF; ">/></span><span style="color: #000000; ">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">e:control </span><span style="color: #FF0000; ">column</span><span
style="color: #0000FF; ">="<%= EMPLOYEES.LASTNAME
%>"</span><span style="color: #FF0000; "> </span><span style="color:
#0000FF; ">/></span><span style="color: #000000; ">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">e:control </span><span style="color: #FF0000; ">column</span><span
style="color: #0000FF; ">="<%= EMPLOYEES.GENDER %>"</span><span
style="color: #FF0000; "> </span><span style="color: #0000FF;
">/></span><span style="color: #000000; ">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">e:control </span><span style="color: #FF0000; ">column</span><span
style="color: #0000FF; ">="<%= EMPLOYEES.DATE_OF_BIRTH
%>"</span><span style="color: #FF0000; "> </span><span style="color:
#0000FF; ">/></span><span style="color: #000000; ">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">e:control </span><span style="color: #FF0000; ">column</span><span
style="color: #0000FF; ">="<%= EMPLOYEES.PHONE_NUMBER
%>"</span><span style="color: #FF0000; "> </span><span style="color:
#0000FF; ">/></span><span style="color: #000000; ">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">e:control </span><span style="color: #FF0000; ">column</span><span
style="color: #0000FF; ">="<%= EMPLOYEES.DEPARTMENT_ID
%>"</span><span style="color: #FF0000; "> </span><span style="color:
#0000FF; ">/></span><span style="color: #000000; ">
+ </span><span style="color: #0000FF; "><</span><span style="color:
#800000; ">e:control </span><span style="color: #FF0000; ">column</span><span
style="color: #0000FF; ">="<%= EMPLOYEES.RETIRED
%>"</span><span style="color: #FF0000; "> </span><span style="color:
#0000FF; ">/></span><span style="color: #000000; ">
+</span><span style="color: #0000FF; "></</span><span style="color: #800000;
">e:form</span><span style="color: #0000FF; ">></span></pre>
+
+ <h1 id="access_logic">Implementing field level access
logic</h1>
+ <p> By field level access logic we understand a
function that
+ determines whether a particular field's value is
editable by the user
+ or read only. If it's read only, the <i>disabled
</i>attribute of the
+ corresponding input control needs to be set to
<i>true</i>. In the above Struts2 form example we
+ have implemented this logic - the
+ fact that a field should be read only if the employee
is retired - in the view.
+ This was
+ solely for convenience since actually it does not
really belong there.</p>
+ <p> Consider for example what we additionally need to
check user credentials, then all the logic
+ in the JSP becomes even more complex and hardly
maintainable. But what other options do we have? </p>
+ <p> A more sensible approach is to call a function on
our bean or action class that returns whether
+ or not the field is disabled â like we have
done further above
+ by calling a function named <code>hasAccess()</code>.
+ However this function needs to know which field
we want to check for accessibility and what
+ other option do we have as again providing the
field property name as a string literal. And
+ what makes this even more tedious and error
prone is that if we want to
+ do it properly we must
+ not forget to call this function for every
single input field in our entire application.</p>
+ <p> This is a good example why separation of view and
logic is hard
+ to achieve and not properly addressed by most
+ current Web application frameworks.</p>
+ <p> With Empire-Struts2-Extensions all this is so much
simpler and safer. As you can easily see,
+ all you have to provide in your JSPs is a
reference to the record and column
+ objects. The record reference
+ may easily be set for the entire form so for
the individual controls only the column reference
+ needs to be provided. The same field access
logic that has caused us so much trouble with the
+ traditional approach is now easily implemented
where it belongs: in the model with the EmployeeRecord.</p>
+ <pre><span style="color: #0000FF;
">public</span><span style="color: #000000; "> </span><span style="color:
#0000FF; ">class</span><span style="color: #000000; "> EmployeeRecord
</span><span style="color: #0000FF; ">extends</span><span style="color:
#000000; "> DBRecord
+{
+ </span><span style="color: #0000FF; ">public</span><span style="color:
#000000; "> </span><span style="color: #0000FF; ">static</span><span
style="color: #000000; "> </span><span style="color: #0000FF;
">final</span><span style="color: #000000; "> SampleDB.Employees T </span><span
style="color: #000000; ">=</span><span style="color: #000000; ">
+ SampleDB.getInstance().T_EMPLOYEES;
+
+ @Override
+ </span><span style="color: #0000FF; ">public</span><span style="color:
#000000; "> </span><span style="color: #0000FF; ">boolean</span><span
style="color: #000000; "> isFieldReadOnly(DBColumn column)
+ {
+ </span><span style="color: #0000FF; ">if</span><span style="color:
#000000; "> (</span><span style="color: #0000FF; ">super</span><span
style="color: #000000; ">.isFieldReadOnly(column))
+ </span><span style="color: #0000FF; ">return</span><span
style="color: #000000; "> </span><span style="color: #0000FF;
">true</span><span style="color: #000000; ">;
+ </span><span style="color: #008000; ">//</span><span style="color:
#008000; "> Check if Employee has retired</span><span style="color: #008000; ">
+</span><span style="color: #000000; "> </span><span style="color:
#0000FF; ">if</span><span style="color: #000000; "> (column</span><span
style="color: #000000; ">!=</span><span style="color: #000000; ">T.C_RETIRED
</span><span style="color: #000000; ">&&</span><span style="color:
#000000; "> getBoolean(T.C_RETIRED))
+ </span><span style="color: #0000FF; ">return</span><span
style="color: #000000; "> </span><span style="color: #0000FF;
">true</span><span style="color: #000000; ">;
+ </span><span style="color: #008000; ">//</span><span style="color:
#008000; "> No, field is acessible</span><span style="color: #008000; ">
+</span><span style="color: #000000; "> </span><span style="color:
#0000FF; ">return</span><span style="color: #000000; "> </span><span
style="color: #0000FF; ">false</span><span style="color: #000000; ">;
+ }
+}</span></pre>
+
+ <p> Note that this is really all the code you need.
There are
+ absolutely no changes to the JSPs necessary. And now
you may easily
+ extend this code additionally checking user credentials
if required.</p>
+ <p> With this approach separation of view and logic is
so much cleaner and thus simpler to maintain and
+ to extend. This has all been achieved by
utilizing Empire-dbâs metadata capabilities.
+ Without static and context specific metadata such a
procedure
+ is hardly possible and probably the reason why you have
not seen
+ anything like this with other solutions. </p>
+ <!-- #EndEditable --></div>
+
+ <div id="nav">
+ <hr />
+ <div id="nav_prev">
+ <a id="prev" href=""><img
src="../images/prev.gif" alt="" /> Previous Page</a>
+
+ </div>
+ <div id="nav_next">
+
+ <a id="next" href="">Next Page <img
src="../images/next.gif" alt="" /></a>
+ </div>
+ <div style="clear: both;"></div>
+ </div>
+
+ <script type="text/javascript">
+ /* <![CDATA[ */
+ if( ( typeof(prev_page) == "undefined" ||
prev_page == "" ) &&
+ ( typeof(next_page) == "undefined" ||
next_page == "" ) )
+ {
+ $( 'nav' ).hide();
+ }
+ else
+ {
+ if( typeof(prev_page) != "undefined" &&
prev_page != "" ) {
+ $( 'prev' ).href = prev_page;
+ $( 'prev' ).show();
+ }
+ else {
+ $( 'prev' ).hide();
+ }
+
+ if( typeof(next_page) != "undefined" &&
next_page !="" ) {
+ $( 'next' ).href = next_page;
+ $( 'next' ).show();
+ }
+ else {
+ $( 'next' ).hide();
+ }
+ }
+ /* ]]> */
+ </script>
+
+ </div>
+
+ </div>
+
+ <!-- Footer -->
+ <div id="footer">
+ <div class="cr"><small>Copyright © 2008-2021, The Apache
Software Foundation</small></div>
+ <div class="tm"><small>Apache Empire-db, Empire-db, Apache, the
Apache feather logo, and the Apache Empire-db project logo are trademarks of
The Apache Software Foundation</small></div>
+ </div>
+
+</div>
+
+</body>
+<!-- #EndTemplate -->
+</html>
\ No newline at end of file
Propchange: empire-db/site/legacy/struts2ext/forms_controls.htm
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: empire-db/site/legacy/struts2ext/input_controls.htm
URL:
http://svn.apache.org/viewvc/empire-db/site/legacy/struts2ext/input_controls.htm?rev=1898936&view=auto
==============================================================================
--- empire-db/site/legacy/struts2ext/input_controls.htm (added)
+++ empire-db/site/legacy/struts2ext/input_controls.htm Mon Mar 14 20:41:26 2022
@@ -0,0 +1,274 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-gb" lang="en-gb" >
+<!-- #BeginTemplate "../main.dwt" -->
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta http-equiv="language" content="en" />
+ <meta name="robots" content="index, follow" />
+ <meta name="keywords" content="java, jar, jdbc, sql, data, metadata,
persistence, rdbms, orm, mapping" />
+ <meta name="description" content="Open Source relational data
persistence component." />
+
+ <!-- #BeginEditable "doctitle" -->
+<title>Empire-db and Struts2 - Input controls</title>
+ <!-- #EndEditable -->
+
+ <script type="text/javascript" src="../js/prototype.js"></script>
+ <script type="text/javascript" src="../js/menu.js"></script>
+ <!-- #BeginEditable "javascripts" -->
+ <!-- #EndEditable -->
+
+ <link rel="shortcut icon" href="../empire-db.ico" />
+ <link rel="stylesheet" href="../css/layout.css" type="text/css" />
+ <!-- #BeginEditable "stylesheets" -->
+<style type="text/css">
+
+
+table#struts2_comparison th {
+ width: 300px;
+ border: 1px #C0C0C0 solid;
+ border-bottom: 1px black solid;
+ background: #e8e8e8;
+}
+table#struts2_comparison td {
+ text-align: center;
+ border: 1px #C0C0C0 solid;
+ background: #FCFCFC;
+}
+</style>
+ <!-- #EndEditable -->
+</head>
+
+<body>
+<div id="wrapper">
+
+ <!-- Header -->
+ <div id="header">
+ <div id="logo">
+ <img src="../images/logos/empire-db-logo.gif"
alt="Empire-db: The relational data persistence component." />
+ </div>
+ <div id="asf">
+ <a id="asfhome" target="_blank"
href="https://www.apache.org"><img src="../images/logos/feather-small.gif"
alt="The Apache Software Foundation" /></a>
+ <label for="asfhome" >The Apache Software
Foundation</label>
+ </div>
+ <div style="clear:both"></div>
+ </div>
+
+ <!-- Top -->
+ <div id="top">
+ <div id="topbar"> </div>
+ </div>
+
+ <!-- Middle -->
+ <div id="middle">
+ <div id="left">
+ <div id="menuBox">
+ <ul id="mainMenu">
+ <li id="menu_home"><a
href="../index.html">Home</a></li>
+ <li id="menu_news"><a
href="../news.htm">News</a></li>
+ <li id="menu_empiredb"><a
href="../empiredb/empiredb.htm">Empire-db</a>
+ <ul
class="subMenu">
+ <li
id="menu_empiredb_extending_pattern"><a href="../empiredb/pattern.htm">The
Empire DAO-<br />pattern</a></li>
+ <li
id="menu_empiredb_handling_metadata"><a
href="../empiredb/metadata.htm">Handling data and metadata</a></li>
+ <li
id="menu_empiredb_wrong"><a href="../empiredb/hibernate.htm">What's wrong with
Hibernate and JPA</a></li>
+ <li
id="menu_empiredb_stringfree"><a href="../empiredb/stringfree.htm">The
principle of<br/>string-free coding</a></li>
+ <li
id="menu_empiredb_faq"><a href="../empiredb/faq.htm">FAQ</a></li>
+ </ul>
+ </li>
+ <li id="menu_struts2ext"><a
href="struts2ext.htm">Empire-db and Struts2</a>
+ <ul class="subMenu">
+ <li
id="menu_struts2ext_forms_controls"><a href="forms_controls.htm">Forms and
controls</a></li>
+ <li
id="menu_struts2ext_rendering_parsing"><a
href="rendering_parsing.htm">Rendering and parsing</a></li>
+ <!--<li
id="menu_struts2ext_tag_reference"><a href="struts2ext/tag_reference.htm">Tag
reference</a></li>-->
+ <li
id="menu_struts2ext_input_controls"><a href="input_controls.htm">Input
controls</a></li>
+ </ul>
+ </li>
+ <li id="menu_downloads"><a
href="../downloads/latest.htm">Downloads</a>
+ <ul
class="subMenu">
+ <li
id="menu_downloads_previous"><a href="../downloads/previous.htm">Previous
releases</a></li>
+ <li
id="menu_downloads_license"><a href="../downloads/license.htm">License</a></li>
+ </ul>
+ </li>
+ <li id="menu_documentation"><a
href="../documentation/documentation.htm">Documentation</a>
+ <ul class="subMenu">
+ <li
id="menu_documentation_class_overview"><a
href="../documentation/class_overview.htm">Empire-db class<br
/>overview</a></li>
+ <li
id="menu_documentation_tutorials"><a
href="../documentation/tutorial.htm">Tutorial</a></li>
+ <li
id="menu_documentation_getting_started"><a
href="../documentation/getting_started.htm">Getting started</a></li>
+ <li
id="menu_documentation_reverse_engineering"><a
href="../documentation/reverse_engineering.htm">Reverse Engineering</a></li>
+ <li
id="menu_documentation_api"><a href="../documentation/api.htm">API</a></li>
+ </ul>
+ </li>
+ <li id="menu_community"><a
href="../community/community.htm">Community</a>
+ <ul class="subMenu">
+ <li
id="menu_community_mailing_lists"><a
href="../community/mailing_lists.htm">Mailing lists</a></li>
+ <li
id="menu_community_source_code"><a href="../community/source_code.htm">Source
code</a></li>
+ <li
id="menu_community_jira"><a href="../community/jira.htm">Ticketing &
Wiki</a></li>
+ <!--<li
id="menu_community_road_map"><a href="community/road_map.htm">Road
map</a></li>-->
+ <li
id="menu_community_contributors"><a
href="../community/contributors.htm">Contributors</a></li>
+ </ul>
+ </li>
+ <li id="menu_apache"><a
href="../apache.htm">About Apache</a>
+ <ul class="subMenu">
+ <li
id="menu_apache_home"><a href="https://www.apache.org">Apache home<span
class="asflink"> </span></a></li>
+ <li
id="menu_apache_donate"><a
href="https://www.apache.org/foundation/sponsorship.html">Sponsorship<span
class="asflink"> </span></a></li>
+ <li
id="menu_apache_thanks"><a
href="https://www.apache.org/foundation/thanks.html">Foundation thanks<span
class="asflink"> </span></a></li>
+ <li
id="menu_apache_security"><a
href="https://www.apache.org/security/">Security<span
class="asflink"> </span></a></li>
+ </ul>
+ </li>
+ <li id="menu_disclaimer"><a
href="https://www.apache.org/licenses/">License<span
class="asflink"> </span></a></li>
+ </ul>
+ </div>
+
+ </div>
+
+ <!-- #BeginEditable "menu" -->
+ <script type="text/javascript">
+ var menu = new Menu( 'mainMenu', 'menu_struts2ext',
'menu_struts2ext_input_controls' );
+
+ function toggle (id){
+ if (document.getElementById) {
+ var mydiv = document.getElementById(id);
+ mydiv.style.display =
(mydiv.style.display=='block'?'none':'block');
+ }
+ }
+ </script>
+ <!-- #EndEditable -->
+ <script type="text/javascript">
+ /* <![CDATA[ */
+ if( menu ) {
+ // Menu fully opened (comment out if not wanted)
+ // menu.openAll();
+ /* ]]> */
+ }
+ </script>
+
+ <div id="main">
+
+ <div id="pathway">
+ <span style="float:left">
+ <!-- #BeginEditable "pathway" -->
+ Empire and Struts2 » Input controls
+ <!-- #EndEditable -->
+ </span>
+ <a id="downloadLink" href="../downloads/latest.htm"
style="float:right">Download</a>
+ </div>
+
+ <div id="content">
+ <!-- #BeginEditable "content" -->
+ <h1>Empire-Struts2-Extension Input Control Types</h1>
+ <table style="margin-bottom: 10px;">
+ <thead>
+ <tr>
+ <th nowrap="true">Control Type</th>
+ <th>Class</th>
+ <th>Column Attributes</th>
+ </tr>
+ </thead >
+ <tbody>
+ <tr>
+ <td>checkbox</td>
+ <td>CheckBoxInputControl</td>
+ <td>required</td>
+ </tr>
+ <tr>
+ <td>email</td>
+ <td>EmailInputControl</td>
+ <td>required, size</td>
+ </tr>
+ <tr>
+ <td>filedata</td>
+ <td>FileDataInputControl</td>
+ <td>required, maxValue</td>
+ </tr>
+ <tr>
+ <td>hlink</td>
+ <td>HLinkInputControl</td>
+ <td>required, size</td>
+ </tr>
+ <tr>
+ <td>password</td>
+ <td>PasswordInputControl</td>
+ <td>required, size</td>
+ </tr>
+ <tr>
+ <td>phone</td>
+ <td>PhoneInputControl</td>
+ <td>required, size</td>
+ </tr>
+ <tr>
+ <td>select</td>
+ <td>SelectInputControl</td>
+ <td>required</td>
+ </tr>
+ <tr>
+ <td>text (default)</td>
+ <td>TextInputControl</td>
+ <td>required, size, minValue, maxValue,
numberGroupSeperator, numberFractionDigits</td>
+ </tr>
+ <tr>
+ <td>textArea</td>
+ <td>TextAreaInputControl</td>
+ <td>required, size</td>
+ </tr>
+ </tbody>
+ </table>
+ <!--
+ <h1>Interaction of the Empire Struts 2 Extension, Empire-DB and
Struts</h1>
+ <img style="display: block; margin: auto;"
src="../images/diagrams/function_of_input_control.jpg" alt="Operation mode of
an input control" />-->
+ <!-- #EndEditable --></div>
+
+ <div id="nav">
+ <hr />
+ <div id="nav_prev">
+ <a id="prev" href=""><img
src="../images/prev.gif" alt="" /> Previous Page</a>
+
+ </div>
+ <div id="nav_next">
+
+ <a id="next" href="">Next Page <img
src="../images/next.gif" alt="" /></a>
+ </div>
+ <div style="clear: both;"></div>
+ </div>
+
+ <script type="text/javascript">
+ /* <![CDATA[ */
+ if( ( typeof(prev_page) == "undefined" ||
prev_page == "" ) &&
+ ( typeof(next_page) == "undefined" ||
next_page == "" ) )
+ {
+ $( 'nav' ).hide();
+ }
+ else
+ {
+ if( typeof(prev_page) != "undefined" &&
prev_page != "" ) {
+ $( 'prev' ).href = prev_page;
+ $( 'prev' ).show();
+ }
+ else {
+ $( 'prev' ).hide();
+ }
+
+ if( typeof(next_page) != "undefined" &&
next_page !="" ) {
+ $( 'next' ).href = next_page;
+ $( 'next' ).show();
+ }
+ else {
+ $( 'next' ).hide();
+ }
+ }
+ /* ]]> */
+ </script>
+
+ </div>
+
+ </div>
+
+ <!-- Footer -->
+ <div id="footer">
+ <div class="cr"><small>Copyright © 2008-2021, The Apache
Software Foundation</small></div>
+ <div class="tm"><small>Apache Empire-db, Empire-db, Apache, the
Apache feather logo, and the Apache Empire-db project logo are trademarks of
The Apache Software Foundation</small></div>
+ </div>
+
+</div>
+
+</body>
+<!-- #EndTemplate -->
+</html>
\ No newline at end of file
Propchange: empire-db/site/legacy/struts2ext/input_controls.htm
------------------------------------------------------------------------------
svn:mime-type = text/plain