You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@empire-db.apache.org by re...@apache.org on 2008/08/01 17:15:29 UTC

svn commit: r681719 [8/10] - in /incubator/empire-db/site: ./ community/ css/ documentation/ downloads/ empiredb/ images/ images/diagrams/ images/logos/ images/mail/ images/menu/ javadocs/ js/ struts2ext/ support/

Added: incubator/empire-db/site/struts2ext/struts2ext.htm
URL: http://svn.apache.org/viewvc/incubator/empire-db/site/struts2ext/struts2ext.htm?rev=681719&view=auto
==============================================================================
--- incubator/empire-db/site/struts2ext/struts2ext.htm (added)
+++ incubator/empire-db/site/struts2ext/struts2ext.htm Fri Aug  1 08:15:26 2008
@@ -0,0 +1,268 @@
+<!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</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 target="_blank" href="http://incubator.apache.org/">
+			<img src="../images/logos/apache-incubator-logo.png" alt="Apache Incubator" /></a>
+		</div>
+		<div style="clear:both"></div>
+	</div>
+	
+	<!-- Top -->
+	<div id="top">
+		<div id="topbar">&nbsp;</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/downloads.htm">Downloads</a>
+								<ul class="subMenu">
+									<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_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 system</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_disclaimer"><a href="../disclaimer.htm">Disclaimer</a></li>
+					</ul>
+				</div>
+				
+		</div>
+	
+		<!-- #BeginEditable "menu" -->	
+	<script type="text/javascript">
+		var menu = new Menu( 'mainMenu', 'menu_struts2ext' );
+	</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">
+			<!-- #BeginEditable "pathway" -->
+	        	Empire and Struts2
+	        <!-- #EndEditable -->
+	        </div>
+			
+			<div id="content">
+			<!-- #BeginEditable "content" -->
+
+		<h1>Empire-Struts2-Extensions</h1>
+		<p> Empire-db has not been designed for any specific type of application or 
+		front end framework and 
+			is thus suitable likewise for Rich-client, Web or command line applications. However 
+			unlike with other data persistence solutions, Empire-db's metadata support can be 
+			utilized and extended to work all the way through to the presentation layer and 
+			dramatically reduce redundancies which are otherwise necessary to shape the user 
+			interface. This in turn significantly reduces the errors caused by inconsistencies 
+			between view and model – and opens even more opportunities for a cleaner separation 
+			of model and view. This together with the compile-time safety provided by object 
+			references can improve code quality and reduce both coding and testing effort.</p>
+		<p> In order to take full advantage of these features however some glue 
+		code may be required and convenient to help the presentation layer understand the model. For a Web application 
+			framework for example all of Empire-db's metadata can be used directly to supply every 
+			single attribute value of an HTML tag, but it is a lot more convenient to use special 
+			tags that directly understand Empire-db's data and metadata interfaces and get the 
+			information they need themselves.</p>
+		<p> As the first Web application framework we have chosen to provide special support for 
+			the popular <a href="http://struts.apache.org/2.x">Apache Struts2 framework</a>. 
+			While Struts2 is a well appreciated and capable framework by itself, we think that in 
+			combination with Empire-db and our extensions library serving as the glue between the two, 
+			it really rocks. We believe that data based Web application development has never been 
+		safer and more efficient.</p>
+		<p> The following graphic shows the basic difference:</p>
+		<table id="struts2_comparison">
+		<thead>
+			<tr><th>Struts 2 with traditional integration</th><th>Struts2 with Empire-Struts2-Extensions</th></tr>
+		</thead>
+		<tbody>
+			<tr><td><img src="../images/diagrams/struts2-traditional.gif" alt="Struts 2 with traditional integration" /></td><td><img src="../images/diagrams/struts2-empire.gif" alt="Struts2 with Empire-Struts2-Extentions" /></td></tr>
+		</tbody>
+		</table>
+		<p> At its heart, Empire-Struts2-Extensions offers a set of special tags which are specifically designed to work with Empire-db's data and 
+			metadata objects and which can be used instead or in combination with standard Struts2 tags.</p>
+		<p> This however is just part of the story. In addition its unique input control mechanism combines 
+			the tasks for rendering, parsing and validating data in one single class. Its pull rather than 
+			push request parameter handling makes a huge difference whenever special display formatting and 
+			input control combinations are required.</p>
+		
+		<h1>Find out more...</h1>
+		<table id="find_out_more">
+			<tr><th><a href="forms_controls.htm">Web form design and model / view separation</a></th><td>See how Empire tags can make your form definition both simpler and safer and learn how field access logic can be kept out 
+						of the JSPs offering a much cleaner separation of model and view at no cost.</td></tr>
+			<tr><th><a href="rendering_parsing.htm">Input controls part 2 – Rendering and parsing</a></th><td>Understand the problem of form data processing with traditional 
+				Web application frameworks and learn why it's sensible to 
+						keep rendering, parsing and validation of a value together in one easy to implement class.</td></tr>
+		</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> 
+					&nbsp;
+				</div>
+				<div id="nav_next">
+					&nbsp;
+					<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">
+		<small>Copyright &copy; 2008, The Apache Software Foundation</small>&nbsp;<!--<p style="padding-right: 25px; text-align: right;">
+	    <a href="http://validator.w3.org/check?uri=referer">
+		<img
+	        src="images/valid-xhtml10.png"
+	        alt="Valid XHTML 1.0 Transitional" height="31" width="88" /></a>
+	 	</p>--></div>
+
+</div>
+
+</body>
+<!-- #EndTemplate -->
+</html>
\ No newline at end of file

Propchange: incubator/empire-db/site/struts2ext/struts2ext.htm
------------------------------------------------------------------------------
    svn:mime-type = text/plain