You can subscribe to this list here.
2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(16) |
Sep
(10) |
Oct
(1) |
Nov
(2) |
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2003 |
Jan
(148) |
Feb
(80) |
Mar
(41) |
Apr
(85) |
May
(247) |
Jun
(345) |
Jul
(237) |
Aug
(241) |
Sep
(439) |
Oct
(321) |
Nov
(413) |
Dec
(302) |
2004 |
Jan
(143) |
Feb
(147) |
Mar
(200) |
Apr
(107) |
May
(15) |
Jun
(36) |
Jul
(11) |
Aug
(1) |
Sep
(36) |
Oct
|
Nov
(6) |
Dec
|
2005 |
Jan
|
Feb
|
Mar
|
Apr
(115) |
May
(74) |
Jun
(215) |
Jul
(82) |
Aug
(47) |
Sep
(32) |
Oct
(8) |
Nov
(70) |
Dec
(24) |
2006 |
Jan
|
Feb
(1) |
Mar
(4) |
Apr
(2) |
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
2007 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2016 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
Update of /cvsroot/struts/struts-site/src/documentation/resources/images In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27766/src/documentation/resources/images Added Files: dialogaction_01.gif logincomponent.gif logincontrol.gif logindialog.gif masterpage-01.jpg Log Message: --- NEW FILE: dialogaction_01.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: logincomponent.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: logincontrol.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: logindialog.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: masterpage-01.jpg --- (This appears to be a binary file; contents omitted.) |
Update of /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/handlers/std In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4114/std Modified Files: stdInnerHTML.java stdQueryString.java stdSetTextBoxArea.java stdSimpleRequest.java stdSimpleXML.java stdXSLT.java Log Message: Index: stdInnerHTML.java =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/handlers/std/stdInnerHTML.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** stdInnerHTML.java 21 Jun 2005 18:48:14 -0000 1.2 --- stdInnerHTML.java 29 Jun 2005 21:14:27 -0000 1.3 *************** *** 16,23 **** ! package org.apache.struts.taglib.html.ajax.handlers.std; ! import org.apache.struts.taglib.html.ajax.handlers.HandlerRendererBase; --- 16,23 ---- ! package javawebparts.taglib.ajaxtags.handlers.std; ! import javawebparts.taglib.ajaxtags.handlers.HandlerRendererBase; Index: stdQueryString.java =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/handlers/std/stdQueryString.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** stdQueryString.java 29 Jun 2005 03:34:40 -0000 1.6 --- stdQueryString.java 29 Jun 2005 21:14:27 -0000 1.7 *************** *** 16,23 **** ! package org.apache.struts.taglib.html.ajax.handlers.std; ! import org.apache.struts.taglib.html.ajax.handlers.HandlerRendererBase; --- 16,23 ---- ! package javawebparts.taglib.ajaxtags.handlers.std; ! import javawebparts.taglib.ajaxtags.handlers.HandlerRendererBase; Index: stdSetTextBoxArea.java =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/handlers/std/stdSetTextBoxArea.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** stdSetTextBoxArea.java 21 May 2005 22:51:35 -0000 1.2 --- stdSetTextBoxArea.java 29 Jun 2005 21:14:27 -0000 1.3 *************** *** 16,23 **** ! package org.apache.struts.taglib.html.ajax.handlers.std; ! import org.apache.struts.taglib.html.ajax.handlers.HandlerRendererBase; --- 16,23 ---- ! package javawebparts.taglib.ajaxtags.handlers.std; ! import javawebparts.taglib.ajaxtags.handlers.HandlerRendererBase; Index: stdSimpleRequest.java =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/handlers/std/stdSimpleRequest.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** stdSimpleRequest.java 21 Jun 2005 18:48:14 -0000 1.3 --- stdSimpleRequest.java 29 Jun 2005 21:14:27 -0000 1.4 *************** *** 16,23 **** ! package org.apache.struts.taglib.html.ajax.handlers.std; ! import org.apache.struts.taglib.html.ajax.handlers.HandlerRendererBase; --- 16,23 ---- ! package javawebparts.taglib.ajaxtags.handlers.std; ! import javawebparts.taglib.ajaxtags.handlers.HandlerRendererBase; Index: stdSimpleXML.java =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/handlers/std/stdSimpleXML.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** stdSimpleXML.java 21 Jun 2005 18:48:14 -0000 1.3 --- stdSimpleXML.java 29 Jun 2005 21:14:27 -0000 1.4 *************** *** 16,23 **** ! package org.apache.struts.taglib.html.ajax.handlers.std; ! import org.apache.struts.taglib.html.ajax.handlers.HandlerRendererBase; --- 16,23 ---- ! package javawebparts.taglib.ajaxtags.handlers.std; ! import javawebparts.taglib.ajaxtags.handlers.HandlerRendererBase; Index: stdXSLT.java =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/handlers/std/stdXSLT.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** stdXSLT.java 28 Jun 2005 20:35:44 -0000 1.1 --- stdXSLT.java 29 Jun 2005 21:14:27 -0000 1.2 *************** *** 16,23 **** ! package org.apache.struts.taglib.html.ajax.handlers.std; ! import org.apache.struts.taglib.html.ajax.handlers.HandlerRendererBase; --- 16,23 ---- ! package javawebparts.taglib.ajaxtags.handlers.std; ! import javawebparts.taglib.ajaxtags.handlers.HandlerRendererBase; |
From: <fza...@us...> - 2005-06-29 21:14:15
|
Update of /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/handlers In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3972 Modified Files: HandlerRendererBase.java RequestSender.java Log Message: Index: HandlerRendererBase.java =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/handlers/HandlerRendererBase.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** HandlerRendererBase.java 30 Apr 2005 02:39:46 -0000 1.1 --- HandlerRendererBase.java 29 Jun 2005 21:14:06 -0000 1.2 *************** *** 16,20 **** ! package org.apache.struts.taglib.html.ajax.handlers; --- 16,20 ---- ! package javawebparts.taglib.ajaxtags.handlers; Index: RequestSender.java =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/handlers/RequestSender.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** RequestSender.java 21 Jun 2005 18:48:13 -0000 1.3 --- RequestSender.java 29 Jun 2005 21:14:06 -0000 1.4 *************** *** 16,20 **** ! package org.apache.struts.taglib.html.ajax.handlers; --- 16,20 ---- ! package javawebparts.taglib.ajaxtags.handlers; |
Update of /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/config In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3602 Modified Files: AjaxConfig.java AjaxElement.java AjaxEvent.java AjaxEventHandler.java AjaxForm.java AjaxHandler.java Log Message: Index: AjaxConfig.java =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/config/AjaxConfig.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** AjaxConfig.java 24 Jun 2005 20:32:49 -0000 1.2 --- AjaxConfig.java 29 Jun 2005 21:13:35 -0000 1.3 *************** *** 16,20 **** ! package org.apache.struts.taglib.html.ajax.config; --- 16,20 ---- ! package javawebparts.taglib.ajaxtags.config; Index: AjaxElement.java =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/config/AjaxElement.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** AjaxElement.java 24 Jun 2005 20:32:49 -0000 1.2 --- AjaxElement.java 29 Jun 2005 21:13:35 -0000 1.3 *************** *** 16,20 **** ! package org.apache.struts.taglib.html.ajax.config; --- 16,20 ---- ! package javawebparts.taglib.ajaxtags.config; Index: AjaxEvent.java =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/config/AjaxEvent.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** AjaxEvent.java 24 Jun 2005 20:32:49 -0000 1.3 --- AjaxEvent.java 29 Jun 2005 21:13:35 -0000 1.4 *************** *** 16,20 **** ! package org.apache.struts.taglib.html.ajax.config; --- 16,20 ---- ! package javawebparts.taglib.ajaxtags.config; Index: AjaxEventHandler.java =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/config/AjaxEventHandler.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** AjaxEventHandler.java 24 Jun 2005 20:32:49 -0000 1.3 --- AjaxEventHandler.java 29 Jun 2005 21:13:35 -0000 1.4 *************** *** 16,20 **** ! package org.apache.struts.taglib.html.ajax.config; --- 16,20 ---- ! package javawebparts.taglib.ajaxtags.config; Index: AjaxForm.java =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/config/AjaxForm.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** AjaxForm.java 24 Jun 2005 20:32:49 -0000 1.2 --- AjaxForm.java 29 Jun 2005 21:13:35 -0000 1.3 *************** *** 16,20 **** ! package org.apache.struts.taglib.html.ajax.config; --- 16,20 ---- ! package javawebparts.taglib.ajaxtags.config; Index: AjaxHandler.java =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/config/AjaxHandler.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** AjaxHandler.java 24 Jun 2005 20:32:49 -0000 1.3 --- AjaxHandler.java 29 Jun 2005 21:13:35 -0000 1.4 *************** *** 16,20 **** ! package org.apache.struts.taglib.html.ajax.config; --- 16,20 ---- ! package javawebparts.taglib.ajaxtags.config; |
From: <fza...@us...> - 2005-06-29 04:32:42
|
Update of /cvsroot/struts/struts-site/src/documentation/skins/default/images In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3622/src/documentation/skins/default/images Modified Files: menu-right.gif Log Message: Index: menu-right.gif =================================================================== RCS file: /cvsroot/struts/struts-site/src/documentation/skins/default/images/menu-right.gif,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsqCwbUZ and /tmp/cvsrFjY2g differ |
From: <fza...@us...> - 2005-06-29 04:32:25
|
Update of /cvsroot/struts/struts-site/src/documentation/content/xdocs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3622/src/documentation/content/xdocs Modified Files: index.xml Log Message: Index: index.xml =================================================================== RCS file: /cvsroot/struts/struts-site/src/documentation/content/xdocs/index.xml,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** index.xml 9 Jun 2005 00:27:44 -0000 1.9 --- index.xml 29 Jun 2005 04:32:14 -0000 1.10 *************** *** 87,97 **** <p> <strong>Struts Dialogs</strong><br /> ! Provides basic dialog functions, like accepting input data, dispatching submit event to a method, ! generating and storing error messages and rendering a view. DialogAction allows to create robust user inteface and provides simple event-based programming model.<br /> <br /> ! The main concept of Struts Dialogs is <strong>separation of input and output phases</strong>. This solves several issues related to HTML form input, most evident of which are double submit problem ! and annoying POSTDATA messages. I/O separation also improves usability for Reload, Back and Forward buttons. At present, Struts 1.2.7 and higher is supported. </p> --- 87,97 ---- <p> <strong>Struts Dialogs</strong><br /> ! Provides basic dialog functions, like accepting input data, dispatching submit event to a method, ! generating and storing error messages and rendering a view. DialogAction allows to create robust user inteface and provides simple event-based programming model.<br /> <br /> ! The main concept of Struts Dialogs is <strong>separation of input and output phases</strong>. This solves several issues related to HTML form input, most evident of which are double submit problem ! and annoying POSTDATA messages. I/O separation also improves usability for Reload, Back and Forward buttons. At present, Struts 1.2.7 and higher is supported. </p> *************** *** 120,126 **** This project is a modified version of the Struts HTML taglib that adds AJAX functionality. It is a declarative approach, i.e., a developer doesn't have to write any AJAX code themselves, although ! it is flexible enough to allow you to do so if you wish. At present, any Struts version in the ! 1.2.x branch is supported (1.2.0 through 1.2.7 at present). All the planned standard handlers are not ! done yet (read the readme for what that means!), but it is quite useful in it's current form. If you are a Struts developer and want to jump on the AJAX bandwagon with little or no effort, this might be just the ticket! --- 120,126 ---- This project is a modified version of the Struts HTML taglib that adds AJAX functionality. It is a declarative approach, i.e., a developer doesn't have to write any AJAX code themselves, although ! it is flexible enough to allow you to do so if you wish. At present, almost all Struts version in the ! 1.2.x branch are supported (1.2.0 through 1.2.6 at present). All the planned standard handlers are now ! done (read the readme for what that means!), but a few others will probably sneak in soon as well. If you are a Struts developer and want to jump on the AJAX bandwagon with little or no effort, this might be just the ticket! |
From: <fza...@us...> - 2005-06-29 04:32:25
|
Update of /cvsroot/struts/struts-site/src/documentation/content/xdocs/ajaxtags In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3622/src/documentation/content/xdocs/ajaxtags Modified Files: index.xml Log Message: Index: index.xml =================================================================== RCS file: /cvsroot/struts/struts-site/src/documentation/content/xdocs/ajaxtags/index.xml,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** index.xml 22 May 2005 16:26:45 -0000 1.3 --- index.xml 29 Jun 2005 04:32:13 -0000 1.4 *************** *** 28,34 **** <title>What's New</title> <section> <title>v1.0 beta 2 released</title> <p> ! 5/22/2005 - A fairly major upgrade... most importantly, all Struts versions in the 1.2.x brancy (1.2.0 through 1.2.7 at present) are now supported! </p> </section> --- 28,40 ---- <title>What's New</title> <section> + <title>v1.0 beta 3 released</title> + <p> + 6/28/2005 - This version contains some good bug fixes, and one new handler, XSLT, contributed by Ricky Tong. Note that with this version, support for Struts 1.2.7 HAS BEEN REVOKED! Read the history and readme files for details. + </p> + </section> + <section> <title>v1.0 beta 2 released</title> <p> ! 5/22/2005 - A fairly major upgrade... most importantly, almost all Struts versions in the 1.2.x brancy (1.2.0 through 1.2.6 at present) are now supported! </p> </section> *************** *** 49,54 **** </p> <ol> ! <li>Replace your struts.jar with the new struts.jar. The only difference is 2 altered classes (BaseHandlerTag and FormTag) and about 12 new ones, so it's fairly unintrusive.</li> ! <li>Replace your struts-html.tld file with the AjaxTags version</li> <li>Add the AjaxInit plug-in to your struts-config.xml file like so:<br/><plug-in className="org.apache.struts.taglib.html.ajax.AjaxInit" /></li> <li>Add the ajaxInit init param to your ActionServlet entry in web.xml like so:<br/><init-param><br/> <param-name>ajaxConfig</param-name><br/> <param-value>/WEB-INF/ajax-config.xml</param-value><br/></init-param></li> --- 55,60 ---- </p> <ol> ! <li>Drop a copy of struts.jar in the src directory and build AjaxTags (just a simple Ant script, no properties to set or anything)</li> ! <li>Optional: Replace your struts-html.tld file with the AjaxTags version. If you do not keep the TLDs outside the struts.jar, you can skip this step.</li> <li>Add the AjaxInit plug-in to your struts-config.xml file like so:<br/><plug-in className="org.apache.struts.taglib.html.ajax.AjaxInit" /></li> <li>Add the ajaxInit init param to your ActionServlet entry in web.xml like so:<br/><init-param><br/> <param-name>ajaxConfig</param-name><br/> <param-value>/WEB-INF/ajax-config.xml</param-value><br/></init-param></li> *************** *** 93,96 **** --- 99,103 ---- <li>Aron Gombas - Contributed a patch to fix some typos and implement more robust logging</li> <li>Günther Wieser - Found some issues with the build process and did some troubleshooting under Resin</li> + <li>Ricky Tong - Contributed the stdXSLT handler for transforming XML returned from a server via XSL, as well as caught a problem with the build process, and some other contributions as well</li> </ul> </section> |
From: <fza...@us...> - 2005-06-29 03:35:05
|
Update of /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/handlers/std In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8216/WEB-INF/src/org/apache/struts/taglib/html/ajax/handlers/std Modified Files: stdQueryString.java Log Message: Index: stdQueryString.java =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/handlers/std/stdQueryString.java,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** stdQueryString.java 28 Jun 2005 20:35:44 -0000 1.5 --- stdQueryString.java 29 Jun 2005 03:34:40 -0000 1.6 *************** *** 51,55 **** sb.append(" fe = nav[1].substring(1, nav[1].length - 1);\n"); sb.append(" } else {\n"); ! sb.append(" fe = eval('document.' + form.name + '.' + nav[1]);\n"); sb.append(" fe = fe.value;\n"); sb.append(" }\n"); --- 51,55 ---- sb.append(" fe = nav[1].substring(1, nav[1].length - 1);\n"); sb.append(" } else {\n"); ! sb.append(" fe = eval('document.' + form.name + '.' + nav[1]);\n"); sb.append(" fe = fe.value;\n"); sb.append(" }\n"); |
From: <fza...@us...> - 2005-06-29 03:35:05
|
Update of /cvsroot/struts/ajaxtags/WEB-INF/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8216/WEB-INF/src Modified Files: build.xml history.txt Log Message: Index: build.xml =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/build.xml,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** build.xml 24 Jun 2005 20:32:48 -0000 1.14 --- build.xml 29 Jun 2005 03:34:40 -0000 1.15 *************** *** 176,180 **** <!-- Add ajaxRef attribute to form --> <replace file="${src}/META-INF/tlds/struts-html.tld"> ! <replacetoken>FormTag</tagclass></replacetoken> <replacevalue>FormTag</tagclass> <bodycontent>JSP</bodycontent> --- 176,181 ---- <!-- Add ajaxRef attribute to form --> <replace file="${src}/META-INF/tlds/struts-html.tld"> ! <replacetoken>FormTag</tagclass> ! <bodycontent>JSP</bodycontent></replacetoken> <replacevalue>FormTag</tagclass> <bodycontent>JSP</bodycontent> *************** *** 186,190 **** </replace> <replace file="${src}/META-INF/tlds/struts-html-1.1.tld"> ! <replacetoken>FormTag</tagclass></replacetoken> <replacevalue>FormTag</tagclass> <bodycontent>JSP</bodycontent> --- 187,192 ---- </replace> <replace file="${src}/META-INF/tlds/struts-html-1.1.tld"> ! <replacetoken>FormTag</tagclass> ! <bodycontent>JSP</bodycontent></replacetoken> <replacevalue>FormTag</tagclass> <bodycontent>JSP</bodycontent> *************** *** 254,258 **** <!-- Add ajaxRef attribute to select --> <replace file="${src}/META-INF/tlds/struts-html.tld"> ! <replacetoken>SelectTag</tagclass></replacetoken> <replacevalue>SelectTag</tagclass> <bodycontent>JSP</bodycontent> --- 256,261 ---- <!-- Add ajaxRef attribute to select --> <replace file="${src}/META-INF/tlds/struts-html.tld"> ! <replacetoken>SelectTag</tagclass> ! <bodycontent>JSP</bodycontent></replacetoken> <replacevalue>SelectTag</tagclass> <bodycontent>JSP</bodycontent> *************** *** 264,268 **** </replace> <replace file="${src}/META-INF/tlds/struts-html-1.1.tld"> ! <replacetoken>SelectTag</tagclass></replacetoken> <replacevalue>SelectTag</tagclass> <bodycontent>JSP</bodycontent> --- 267,272 ---- </replace> <replace file="${src}/META-INF/tlds/struts-html-1.1.tld"> ! <replacetoken>SelectTag</tagclass> ! <bodycontent>JSP</bodycontent></replacetoken> <replacevalue>SelectTag</tagclass> <bodycontent>JSP</bodycontent> Index: history.txt =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/history.txt,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** history.txt 28 Jun 2005 20:35:43 -0000 1.15 --- history.txt 29 Jun 2005 03:34:40 -0000 1.16 *************** *** 31,35 **** and sample in sample webapp to demonstrate it. Thank you Ricky! Note that this handler requires the Sarissa library, available at ! http://sarissa.sourceforge.net. --- 31,36 ---- and sample in sample webapp to demonstrate it. Thank you Ricky! Note that this handler requires the Sarissa library, available at ! http://sarissa.sourceforge.net. It is packaged with the sample app so ! it will run right away, no need to get anything else. |
From: <fza...@us...> - 2005-06-28 20:35:58
|
Update of /cvsroot/struts/ajaxtags In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12808 Modified Files: index.jsp Added Files: record.xsl sarissa.js Log Message: --- NEW FILE: record.xsl --- <?xml version='1.0' ?> <xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' > <xsl:template match='people'> <table border ="1"> <tr><td>name</td><td>tel</td></tr> <xsl:apply-templates select="record"> </xsl:apply-templates> </table> </xsl:template> <xsl:template match='record'> <tr><td> <xsl:value-of select="@name"/> </td> <td> <xsl:value-of select="@tel"/> </td></tr> </xsl:template> </xsl:stylesheet> --- NEW FILE: sarissa.js --- /** * ==================================================================== * About * ==================================================================== * Sarissa cross browser XML library * @version 0.9.6 * @author: Manos Batsis, mailto: mbatsis at users full stop sourceforge full stop net * * Sarissa is an ECMAScript library acting as a cross-browser wrapper for native XML APIs. * The library supports Gecko based browsers like Mozilla and Firefox, * Internet Explorer (5.5+ with MSXML3.0+) and, last but not least, KHTML based browsers like * Konqueror and Safari. * * ==================================================================== * Licence * ==================================================================== * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 or * the GNU Lesser General Public License version 2.1 as published by * the Free Software Foundation (your choice of the two). * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License or GNU Lesser General Public License for more details. * * You should have received a copy of the GNU General Public License * or GNU Lesser General Public License along with this program; if not, * write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * or visit http://www.gnu.org * */ /** * <p>Sarissa is a utility class. Provides static methods for DOMDocument and * XMLHTTP objects, DOM Node serializatrion to XML strings and other goodies.</p> * @constructor */ function Sarissa(){}; /** @private */ Sarissa.PARSED_OK = "Document contains no parsing errors"; /** * Tells you whether transformNode and transformNodeToObject are available. This functionality * is contained in sarissa_ieemu_xslt.js and is deprecated. If you want to control XSLT transformations * use the XSLTProcessor * @deprecated * @type boolean */ Sarissa.IS_ENABLED_TRANSFORM_NODE = false; /** * tells you whether XMLHttpRequest (or equivalent) is available * @type boolean */ Sarissa.IS_ENABLED_XMLHTTP = false; /** * tells you whether selectNodes/selectSingleNode is available * @type boolean */ Sarissa.IS_ENABLED_SELECT_NODES = false; var _sarissa_iNsCounter = 0; var _SARISSA_IEPREFIX4XSLPARAM = ""; var _SARISSA_HAS_DOM_IMPLEMENTATION = document.implementation && true; var _SARISSA_HAS_DOM_CREATE_DOCUMENT = _SARISSA_HAS_DOM_IMPLEMENTATION && document.implementation.createDocument; var _SARISSA_HAS_DOM_FEATURE = _SARISSA_HAS_DOM_IMPLEMENTATION && document.implementation.hasFeature; var _SARISSA_IS_MOZ = _SARISSA_HAS_DOM_CREATE_DOCUMENT && _SARISSA_HAS_DOM_FEATURE; var _SARISSA_IS_SAFARI = navigator.userAgent.toLowerCase().indexOf("applewebkit") != -1; var _SARISSA_IS_IE = document.all && window.ActiveXObject && navigator.userAgent.toLowerCase().indexOf("msie") > -1 && navigator.userAgent.toLowerCase().indexOf("opera") == -1; if(!window.Node || !window.Node.ELEMENT_NODE){ var Node = {ELEMENT_NODE: 1, ATTRIBUTE_NODE: 2, TEXT_NODE: 3, CDATA_SECTION_NODE: 4, ENTITY_REFERENCE_NODE: 5, ENTITY_NODE: 6, PROCESSING_INSTRUCTION_NODE: 7, COMMENT_NODE: 8, DOCUMENT_NODE: 9, DOCUMENT_TYPE_NODE: 10, DOCUMENT_FRAGMENT_NODE: 11, NOTATION_NODE: 12}; }; // IE initialization if(_SARISSA_IS_IE){ // for XSLT parameter names, prefix needed by IE _SARISSA_IEPREFIX4XSLPARAM = "xsl:"; // used to store the most recent ProgID available out of the above var _SARISSA_DOM_PROGID = ""; var _SARISSA_XMLHTTP_PROGID = ""; /** * Called when the Sarissa_xx.js file is parsed, to pick most recent * ProgIDs for IE, then gets destroyed. * @param idList an array of MSXML PROGIDs from which the most recent will be picked for a given object * @param enabledList an array of arrays where each array has two items; the index of the PROGID for which a certain feature is enabled */ pickRecentProgID = function (idList, enabledList){ // found progID flag var bFound = false; for(var i=0; i < idList.length && !bFound; i++){ try{ var oDoc = new ActiveXObject(idList[i]); o2Store = idList[i]; bFound = true; for(var j=0;j<enabledList.length;j++) if(i <= enabledList[j][1]) Sarissa["IS_ENABLED_"+enabledList[j][0]] = true; }catch (objException){ // trap; try next progID }; }; if (!bFound) throw "Could not retreive a valid progID of Class: " + idList[idList.length-1]+". (original exception: "+e+")"; idList = null; return o2Store; }; // pick best available MSXML progIDs _SARISSA_DOM_PROGID = pickRecentProgID(["Msxml2.DOMDocument.5.0", "Msxml2.DOMDocument.4.0", "Msxml2.DOMDocument.3.0", "MSXML2.DOMDocument", "MSXML.DOMDocument", "Microsoft.XMLDOM"], [["SELECT_NODES", 2],["TRANSFORM_NODE", 2]]); _SARISSA_XMLHTTP_PROGID = pickRecentProgID(["Msxml2.XMLHTTP.5.0", "Msxml2.XMLHTTP.4.0", "MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP"], [["XMLHTTP", 4]]); _SARISSA_THREADEDDOM_PROGID = pickRecentProgID(["Msxml2.FreeThreadedDOMDocument.5.0", "MSXML2.FreeThreadedDOMDocument.4.0", "MSXML2.FreeThreadedDOMDocument.3.0"]); _SARISSA_XSLTEMPLATE_PROGID = pickRecentProgID(["Msxml2.XSLTemplate.5.0", "Msxml2.XSLTemplate.4.0", "MSXML2.XSLTemplate.3.0"], [["XSLTPROC", 2]]); // we dont need this anymore pickRecentProgID = null; //============================================ // Factory methods (IE) //============================================ // see non-IE version Sarissa.getDomDocument = function(sUri, sName){ var oDoc = new ActiveXObject(_SARISSA_DOM_PROGID); // if a root tag name was provided, we need to load it in the DOM // object if (sName){ // if needed, create an artifical namespace prefix the way Moz // does if (sUri){ oDoc.loadXML("<a" + _sarissa_iNsCounter + ":" + sName + " xmlns:a" + _sarissa_iNsCounter + "=\"" + sUri + "\" />"); // don't use the same prefix again ++_sarissa_iNsCounter; } else oDoc.loadXML("<" + sName + "/>"); }; return oDoc; }; // see non-IE version Sarissa.getParseErrorText = function (oDoc) { var parseErrorText = Sarissa.PARSED_OK; if(oDoc.parseError != 0){ parseErrorText = "XML Parsing Error: " + oDoc.parseError.reason + "\nLocation: " + oDoc.parseError.url + "\nLine Number " + oDoc.parseError.line + ", Column " + oDoc.parseError.linepos + ":\n" + oDoc.parseError.srcText + "\n"; for(var i = 0; i < oDoc.parseError.linepos;i++){ parseErrorText += "-"; }; parseErrorText += "^\n"; }; return parseErrorText; }; // see non-IE version Sarissa.setXpathNamespaces = function(oDoc, sNsSet) { oDoc.setProperty("SelectionLanguage", "XPath"); oDoc.setProperty("SelectionNamespaces", sNsSet); }; /** * Basic implementation of Mozilla's XSLTProcessor for IE. * Reuses the same XSLT stylesheet for multiple transforms * @constructor */ XSLTProcessor = function(){ this.template = new ActiveXObject(_SARISSA_XSLTEMPLATE_PROGID); this.processor = null; }; /** * Impoprts the given XSLT DOM and compiles it to a reusable transform * @argument xslDoc The XSLT DOMDocument to import */ XSLTProcessor.prototype.importStylesheet = function(xslDoc){ // convert stylesheet to free threaded var converted = new ActiveXObject(_SARISSA_THREADEDDOM_PROGID); converted.loadXML(xslDoc.xml); this.template.stylesheet = converted; this.processor = this.template.createProcessor(); // (re)set default param values this.paramsSet = new Array(); }; /** * Transform the given XML DOM * @argument sourceDoc The XML DOMDocument to transform * @return The transformation result as a DOM Document */ XSLTProcessor.prototype.transformToDocument = function(sourceDoc){ this.processor.input = sourceDoc; var outDoc = new ActiveXObject(_SARISSA_DOM_PROGID); this.processor.output = outDoc; this.processor.transform(); return outDoc; }; /** * Not sure if this works in IE. Maybe this will allow non-well-formed * transformation results (i.e. with no single root element) * @argument sourceDoc The XML DOMDocument to transform * @return The transformation result as a DOM Fragment */ XSLTProcessor.prototype.transformToFragment = function(sourceDoc, ownerDocument){ return this.transformToDocument(sourceDoc); }; /** * Set global XSLT parameter of the imported stylesheet * @argument nsURI The parameter namespace URI * @argument name The parameter base name * @argument value The new parameter value */ XSLTProcessor.prototype.setParameter = function(nsURI, name, value){ /* nsURI is optional but cannot be null */ if(nsURI){ this.processor.addParameter(name, value, nsURI); }else{ this.processor.addParameter(name, value); }; /* update updated params for getParameter */ if(!this.paramsSet[""+nsURI]){ this.paramsSet[""+nsURI] = new Array(); }; this.paramsSet[""+nsURI][name] = value; }; /** * Gets a parameter if previously set by setParameter. Returns null * otherwise * @argument name The parameter base name * @argument value The new parameter value * @return The parameter value if reviously set by setParameter, null otherwise */ XSLTProcessor.prototype.getParameter = function(nsURI, name){ if(this.paramsSet[""+nsURI] && this.paramsSet[""+nsURI][name]) return this.paramsSet[""+nsURI][name]; else return null; }; } else{ /* end IE initialization, try to deal with real browsers now ;-) */ if(_SARISSA_HAS_DOM_CREATE_DOCUMENT){ if(window.XMLDocument){ /** * <p>Emulate IE's onreadystatechange attribute</p> */ XMLDocument.prototype.onreadystatechange = null; /** * <p>Emulates IE's readyState property, which always gives an integer from 0 to 4:</p> * <ul><li>1 == LOADING,</li> * <li>2 == LOADED,</li> * <li>3 == INTERACTIVE,</li> * <li>4 == COMPLETED</li></ul> */ XMLDocument.prototype.readyState = 0; /** * <p>Emulate IE's parseError attribute</p> */ XMLDocument.prototype.parseError = 0; // NOTE: setting async to false will only work with documents // called over HTTP (meaning a server), not the local file system, // unless you are using Moz 1.4+. // BTW the try>catch block is for 1.4; I haven't found a way to check if // the property is implemented without // causing an error and I dont want to use user agent stuff for that... var _SARISSA_SYNC_NON_IMPLEMENTED = false; try{ /** * <p>Emulates IE's async property for Moz versions prior to 1.4. * It controls whether loading of remote XML files works * synchronously or asynchronously.</p> */ XMLDocument.prototype.async = true; _SARISSA_SYNC_NON_IMPLEMENTED = true; }catch(e){/* trap */}; /** * <p>Keeps a handle to the original load() method. Internal use and only * if Mozilla version is lower than 1.4</p> * @private */ XMLDocument.prototype._sarissa_load = XMLDocument.prototype.load; /** * <p>Overrides the original load method to provide synchronous loading for * Mozilla versions prior to 1.4, using an XMLHttpRequest object (if * async is set to false)</p> * @returns the DOM Object as it was before the load() call (may be empty) */ XMLDocument.prototype.load = function(sURI) { var oDoc = document.implementation.createDocument("", "", null); Sarissa.copyChildNodes(this, oDoc); this.parseError = 0; Sarissa.__setReadyState__(this, 1); try { if(this.async == false && _SARISSA_SYNC_NON_IMPLEMENTED) { var tmp = new XMLHttpRequest(); tmp.open("GET", sURI, false); tmp.send(null); Sarissa.__setReadyState__(this, 2); Sarissa.copyChildNodes(tmp.responseXML, this); Sarissa.__setReadyState__(this, 3); } else { this._sarissa_load(sURI); }; } catch (objException) { this.parseError = -1; } finally { if(this.async == false){ Sarissa.__handleLoad__(this); }; }; return oDoc; }; };//if(window.XMLDocument) /** * <p>Ensures the document was loaded correctly, otherwise sets the * parseError to -1 to indicate something went wrong. Internal use</p> * @private */ Sarissa.__handleLoad__ = function(oDoc){ if (!oDoc.documentElement || oDoc.documentElement.tagName == "parsererror") oDoc.parseError = -1; Sarissa.__setReadyState__(oDoc, 4); }; /** * <p>Attached by an event handler to the load event. Internal use.</p> * @private */ _sarissa_XMLDocument_onload = function(){ Sarissa.__handleLoad__(this); }; /** * <p>Sets the readyState property of the given DOM Document object. * Internal use.</p> * @private * @argument oDoc the DOM Document object to fire the * readystatechange event * @argument iReadyState the number to change the readystate property to */ Sarissa.__setReadyState__ = function(oDoc, iReadyState){ oDoc.readyState = iReadyState; if (oDoc.onreadystatechange != null && typeof oDoc.onreadystatechange == "function") oDoc.onreadystatechange(); }; /** * <p>Factory method to obtain a new DOM Document object</p> * @argument sUri the namespace of the root node (if any) * @argument sUri the local name of the root node (if any) * @returns a new DOM Document */ Sarissa.getDomDocument = function(sUri, sName){ var oDoc = document.implementation.createDocument(sUri?sUri:"", sName?sName:"", null); oDoc.addEventListener("load", _sarissa_XMLDocument_onload, false); return oDoc; }; };//if(_SARISSA_HAS_DOM_CREATE_DOCUMENT) }; //========================================== // Common stuff //========================================== if(!window.DOMParser){ /** * DOMParser is a utility class, used to construct DOMDocuments from XML strings * @constructor */ DOMParser = function() { }; /** * Construct a new DOM Document from the given XMLstring * @param sXml the given XML string * @param contentType the content type of the document the given string represents (one of text/xml, application/xml, application/xhtml+xml). * @return a new DOM Document from the given XML string */ DOMParser.prototype.parseFromString = function(sXml, contentType){ var doc = Sarissa.getDomDocument(); doc.loadXML(sXml); return doc; }; }; if(window.XMLHttpRequest){ Sarissa.IS_ENABLED_XMLHTTP = true; } else if(_SARISSA_IS_IE){ /** * Emulate XMLHttpRequest * @constructor */ XMLHttpRequest = function() { return new ActiveXObject(_SARISSA_XMLHTTP_PROGID); }; Sarissa.IS_ENABLED_XMLHTTP = true; }; if(!window.document.importNode && _SARISSA_IS_IE){ try{ /** * Implements importNode for the current window document in IE using innerHTML. * Testing showed that DOM was multiple times slower than innerHTML for this, * sorry folks. If you encounter trouble (who knows what IE does behind innerHTML) * please gimme a call. * @param oNode the Node to import * @param bChildren whether to include the children of oNode * @returns the imported node for further use */ window.document.importNode = function(oNode, bChildren){ var importNode = document.createElement("div"); if(bChildren) importNode.innerHTML = Sarissa.serialize(oNode); else importNode.innerHTML = Sarissa.serialize(oNode.cloneNode(false)); return importNode.firstChild; }; }catch(e){}; }; if(!Sarissa.getParseErrorText){ /** * <p>Returns a human readable description of the parsing error. Usefull * for debugging. Tip: append the returned error string in a <pre> * element if you want to render it.</p> * <p>Many thanks to Christian Stocker for the initial patch.</p> * @argument oDoc The target DOM document * @returns The parsing error description of the target Document in * human readable form (preformated text) */ Sarissa.getParseErrorText = function (oDoc){ var parseErrorText = Sarissa.PARSED_OK; if(oDoc.parseError != 0){ /*moz*/ if(oDoc.documentElement.tagName == "parsererror"){ parseErrorText = oDoc.documentElement.firstChild.data; parseErrorText += "\n" + oDoc.documentElement.firstChild.nextSibling.firstChild.data; }/*konq*/ else if(oDoc.documentElement.tagName == "html"){ parseErrorText = Sarissa.getText(oDoc.documentElement.getElementsByTagName("h1")[0], false) + "\n"; parseErrorText += Sarissa.getText(oDoc.documentElement.getElementsByTagName("body")[0], false) + "\n"; parseErrorText += Sarissa.getText(oDoc.documentElement.getElementsByTagName("pre")[0], false); }; }; return parseErrorText; }; }; Sarissa.getText = function(oNode, deep){ var s = ""; var nodes = oNode.childNodes; for(var i=0; i < nodes.length; i++){ var node = nodes[i]; var nodeType = node.nodeType; if(nodeType == Node.TEXT_NODE || nodeType == Node.CDATA_SECTION_NODE){ s += node.data; } else if(deep == true && (nodeType == Node.ELEMENT_NODE || nodeType == Node.DOCUMENT_NODE || nodeType == Node.DOCUMENT_FRAGMENT_NODE)){ s += Sarissa.getText(node, true); }; }; return s; }; if(window.XMLSerializer){ /** * <p>Factory method to obtain the serialization of a DOM Node</p> * @returns the serialized Node as an XML string */ Sarissa.serialize = function(oDoc){ return (new XMLSerializer()).serializeToString(oDoc); }; }else{ if((Sarissa.getDomDocument("","foo", null)).xml){ // see non-IE version Sarissa.serialize = function(oDoc) { // TODO: check for HTML document and return innerHTML instead return oDoc.xml; }; /** * Utility class to serialize DOM Node objects to XML strings * @constructor */ XMLSerializer = function(){}; /** * Serialize the given DOM Node to an XML string * @param oNode the DOM Node to serialize */ XMLSerializer.prototype.serializeToString = function(oNode) { return oNode.xml; }; }; }; /** * strips tags from a markup string */ Sarissa.stripTags = function (s) { return s.replace(/<[^>]+>/g,""); }; /** * <p>Deletes all child nodes of the given node</p> * @argument oNode the Node to empty */ Sarissa.clearChildNodes = function(oNode) { while(oNode.hasChildNodes()){ oNode.removeChild(oNode.firstChild); }; }; /** * <p> Copies the childNodes of nodeFrom to nodeTo</p> * <p> <b>Note:</b> The second object's original content is deleted before * the copy operation, unless you supply a true third parameter</p> * @argument nodeFrom the Node to copy the childNodes from * @argument nodeTo the Node to copy the childNodes to * @argument bPreserveExisting whether to preserve the original content of nodeTo, default is false */ Sarissa.copyChildNodes = function(nodeFrom, nodeTo, bPreserveExisting) { if(!bPreserveExisting){ Sarissa.clearChildNodes(nodeTo); }; var ownerDoc = nodeTo.nodeType == Node.DOCUMENT_NODE ? nodeTo : nodeTo.ownerDocument; var nodes = nodeFrom.childNodes; if(ownerDoc.importNode && (!_SARISSA_IS_IE)) { for(var i=0;i < nodes.length;i++) { nodeTo.appendChild(ownerDoc.importNode(nodes[i], true)); }; } else{ for(var i=0;i < nodes.length;i++) { nodeTo.appendChild(nodes[i].cloneNode(true)); }; }; }; /** * <p> Moves the childNodes of nodeFrom to nodeTo</p> * <p> <b>Note:</b> The second object's original content is deleted before * the move operation, unless you supply a true third parameter</p> * @argument nodeFrom the Node to copy the childNodes from * @argument nodeTo the Node to copy the childNodes to * @argument bPreserveExisting whether to preserve the original content of nodeTo, default is false */ Sarissa.moveChildNodes = function(nodeFrom, nodeTo, bPreserveExisting) { if(!bPreserveExisting){ Sarissa.clearChildNodes(nodeTo); }; var nodes = nodeFrom.childNodes; // if within the same doc, just move, else copy and delete if(nodeFrom.ownerDocument == nodeTo.ownerDocument){ nodeTo.appendChild(nodes[i]); }else{ var ownerDoc = nodeTo.nodeType == Node.DOCUMENT_NODE ? nodeTo : nodeTo.ownerDocument; if(ownerDoc.importNode && (!_SARISSA_IS_IE)) { for(var i=0;i < nodes.length;i++) { nodeTo.appendChild(ownerDoc.importNode(nodes[i], true)); }; } else{ for(var i=0;i < nodes.length;i++) { nodeTo.appendChild(nodes[i].cloneNode(true)); }; }; Sarissa.clearChildNodes(nodeFrom); }; }; /** * <p>Serialize any object to an XML string. All properties are serialized using the property name * as the XML element name. Array elements are rendered as <code>array-item</code> elements, * using their index/key as the value of the <code>key</code> attribute.</p> * @argument anyObject the object to serialize * @argument objectName a name for that object * @return the XML serializationj of the given object as a string */ Sarissa.xmlize = function(anyObject, objectName, indentSpace){ indentSpace = indentSpace?indentSpace:''; var s = indentSpace + '<' + objectName + '>'; var isLeaf = false; if(!(anyObject instanceof Object) || anyObject instanceof Number || anyObject instanceof String || anyObject instanceof Boolean || anyObject instanceof Date){ s += Sarissa.escape(""+anyObject); isLeaf = true; }else{ s += "\n"; var itemKey = ''; var isArrayItem = anyObject instanceof Array; for(var name in anyObject){ s += Sarissa.xmlize(anyObject[name], (isArrayItem?"array-item key=\""+name+"\"":name), indentSpace + " "); }; s += indentSpace; }; return s += (objectName.indexOf(' ')!=-1?"</array-item>\n":"</" + objectName + ">\n"); }; /** * Escape the given string chacters that correspond to the five predefined XML entities * @param sXml the string to escape */ Sarissa.escape = function(sXml){ return sXml.replace(/&/g, "&") .replace(/</g, "<") .replace(/>/g, ">") .replace(/"/g, """) .replace(/'/g, "'"); }; /** * Unescape the given string. This turns the occurences of the predefined XML * entities to become the characters they represent correspond to the five predefined XML entities * @param sXml the string to unescape */ Sarissa.unescape = function(sXml){ return sXml.replace(/'/g,"'") .replace(/"/g,"\"") .replace(/>/g,">") .replace(/</g,"<") .replace(/&/g,"&"); }; // EOF Index: index.jsp =================================================================== RCS file: /cvsroot/struts/ajaxtags/index.jsp,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** index.jsp 21 May 2005 22:51:19 -0000 1.4 --- index.jsp 28 Jun 2005 20:35:44 -0000 1.5 *************** *** 4,7 **** --- 4,8 ---- <head> <title>Struts Ajax-Enabled HTML Taglib Examples</title> + <script type="text/javascript" src="sarissa.js"></script> </head> <body> *************** *** 136,139 **** --- 137,163 ---- <!-- ********** END EXAMPLE 5 ********** --> + <!-- ********** EXAMPLE 6 ********** --> + <table width="100%" bgcolor="#c0c0c0" border="0" cellpadding="4" cellspacing="0"> + <tr><td><b><font size="+2">Example 6</font></b> + <br> + std:QueryString/std:XSLT + </td></tr> + </table> + This example shows how a request can be made to a server with a query string + and results returned as XML and transformed to displayable HTML via XSLT. + This uses the stdXSLT handler contributed by Ricky Tong, as well as the + Sarissa library for the client-side transformation code. + <html:form action="example6" ajaxRef="example6"> + Name: <html:text property="f_name" size="22" value="Frank" /> + <br> + Phone: <html:text property="f_tel" size="14" value="610-323-7253" /> + <br> + <html:button property="button" value="Click to do Ajax XSLT!" ajaxRef="button" /> + </html:form> + Result:<br> + <span id="example6_resultLayer"> </span> + <br><br><hr><br> + <!-- ********** END EXAMPLE 6 ********** --> + <html:enableAjax /> </body> |
From: <fza...@us...> - 2005-06-28 20:35:58
|
Update of /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/handlers/std In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12808/WEB-INF/src/org/apache/struts/taglib/html/ajax/handlers/std Modified Files: stdQueryString.java Added Files: stdXSLT.java Log Message: --- NEW FILE: stdXSLT.java --- /* * Copyright 2005 Ricky Tong * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.apache.struts.taglib.html.ajax.handlers.std; import org.apache.struts.taglib.html.ajax.handlers.HandlerRendererBase; /** * This class renders the Javascript for the stdXSLT response handler. * Note by Frank: This was originally named stdInnerXML by Ricky, but I * believe stdXSLT more accurately reflects what it is. Hope you don't mind * Ricky! :) * * @author <a href="mailto:ri...@no...">Ricky Tong</a> */ public class stdXSLT implements HandlerRendererBase { /** * Render the Javascript for this handler. * * @return The Javascript contents to insert into the page */ public String render() { StringBuffer sb = new StringBuffer(); sb.append("function stdXSLT() {\n"); sb.append(" if (ajaxXHR.readyState == 4) {\n"); sb.append(" if (ajaxXHR.status == 200) {\n"); sb.append(" RHPs = ajaxRHP.split(','); \n"); sb.append(" var processor = new XSLTProcessor(); \n"); sb.append(" var xslDoc = Sarissa.getDomDocument(); \n"); // load xslt sb.append(" xslDoc.async = false; \n"); sb.append(" xslDoc.load(RHPs[1]); \n"); sb.append(" if(xslDoc.parseError != 0){ \n"); sb.append(" alert(Sarissa.getParseErrorText(xslDoc)); \n"); sb.append(" } \n"); sb.append(" processor.importStylesheet(xslDoc); \n"); sb.append(" var xmlDoc = Sarissa.getDomDocument(); \n"); sb.append(" xmlDoc.async = false; \n"); sb.append(" xmlDoc.loadXML(ajaxXHR.responseText); \n"); sb.append(" var newDocument = processor.transformToDocument(" + "xmlDoc); \n"); sb.append(" document.getElementById(RHPs[0]).innerHTML = " + "Sarissa.serialize(newDocument) \n"); sb.append(" } else {\n"); sb.append(" alert(ajaxXHR.status);\n"); sb.append(" }\n"); sb.append(" }\n"); sb.append("}\n"); return sb.toString(); } // End render() } // End class Index: stdQueryString.java =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/handlers/std/stdQueryString.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** stdQueryString.java 21 Jun 2005 18:48:14 -0000 1.4 --- stdQueryString.java 28 Jun 2005 20:35:44 -0000 1.5 *************** *** 51,55 **** sb.append(" fe = nav[1].substring(1, nav[1].length - 1);\n"); sb.append(" } else {\n"); ! sb.append(" fe = eval(form.name + '.' + nav[1]);\n"); sb.append(" fe = fe.value;\n"); sb.append(" }\n"); --- 51,55 ---- sb.append(" fe = nav[1].substring(1, nav[1].length - 1);\n"); sb.append(" } else {\n"); ! sb.append(" fe = eval('document.' + form.name + '.' + nav[1]);\n"); sb.append(" fe = fe.value;\n"); sb.append(" }\n"); |
From: <fza...@us...> - 2005-06-28 20:35:58
|
Update of /cvsroot/struts/ajaxtags/WEB-INF/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12808/WEB-INF/src Modified Files: history.txt readme.txt Log Message: Index: history.txt =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/history.txt,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** history.txt 24 Jun 2005 20:32:48 -0000 1.14 --- history.txt 28 Jun 2005 20:35:43 -0000 1.15 *************** *** 28,31 **** --- 28,35 ---- * Changed build script to update struts-html-1.1.tld as well. This was to address some issues specifically discovered when running under Resin. + * Added stdXSLT handler contributed by Ricky Tong (ri...@no...), + and sample in sample webapp to demonstrate it. Thank you Ricky! Note + that this handler requires the Sarissa library, available at + http://sarissa.sourceforge.net. Index: readme.txt =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/readme.txt,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** readme.txt 24 Jun 2005 20:32:48 -0000 1.12 --- readme.txt 28 Jun 2005 20:35:43 -0000 1.13 *************** *** 184,187 **** --- 184,193 ---- std:InnerHTML ........ Sets the innerHTML property of a named element to what the server returns + std:XSLT ............. This handler is capable of transforming XML returned + by the server to HTML, or another XML form, or + anything else you can do with XSLT. Contributed by + Ricky Tong. Note that this handler requires use of + the Sarissa library available at + http://sarissa.sourceforget.net. For requestHandlers, there is a child <target> element. This is simply the *************** *** 213,216 **** --- 219,227 ---- * Response Handlers std:InnerHTML ........ The DOM ID of an element on the page. + std:XSLT ............. A comma-separated list where the first element is the + DOM ID of an element on the page where output will be + displayed (by setting innerHTML), and the second + element is the path of the XML file for the XSL + Transform. And that's it for the config file! *************** *** 276,280 **** ! Enjoy! ! -Frank W. Zammetti --- 287,298 ---- ! ------------ ! Contributors ! ------------ ! The following people have contributed to AjaxTags: ! * Aron Gombas contributed a patch to fix some typos and implement more ! robust logging . ! * Günther Wieser found some issues with the build process and did some ! troubleshooting under Resin. ! * Ricky Tong (ri...@no...) contributed the stdXSLT handler. |
From: <fza...@us...> - 2005-06-28 20:35:57
|
Update of /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12808/WEB-INF/src/org/apache/struts/taglib/html/ajax Modified Files: AjaxInit.java Log Message: Index: AjaxInit.java =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/ajax/AjaxInit.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** AjaxInit.java 21 Jun 2005 18:48:13 -0000 1.3 --- AjaxInit.java 28 Jun 2005 20:35:44 -0000 1.4 *************** *** 223,226 **** --- 223,236 ---- AjaxConfig.addHandler(stdSetTextBoxAreaHandler); + // stdXSLT handler + AjaxHandler stdXSLTHandler = new AjaxHandler(); + stdXSLTHandler.setName("std:XSLT"); + stdXSLTHandler.setType("response"); + stdXSLTHandler.setFunction("stdXSLT"); + stdXSLTHandler.setLocation("local"); + stdXSLTHandler.setSTD(); + stdXSLTHandler.freeze(); + AjaxConfig.addHandler(stdXSLTHandler); + } // End addStdHandlers() |
From: <fza...@us...> - 2005-06-28 20:35:57
|
Update of /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12808/WEB-INF/src/org/apache/struts/taglib/html Modified Files: BaseHandlerTag.java Log Message: Index: BaseHandlerTag.java =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/src/org/apache/struts/taglib/html/BaseHandlerTag.java,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** BaseHandlerTag.java 24 Jun 2005 20:32:48 -0000 1.7 --- BaseHandlerTag.java 28 Jun 2005 20:35:43 -0000 1.8 *************** *** 191,195 **** * Sets the Ajax reference ID. * ! * @param ajaxRef ajaxRef. */ public void setAjaxRef(String inAjaxRef) { --- 191,195 ---- * Sets the Ajax reference ID. * ! * @param inAjaxRef ajaxRef. */ public void setAjaxRef(String inAjaxRef) { |
From: <fza...@us...> - 2005-06-28 20:35:56
|
Update of /cvsroot/struts/ajaxtags/WEB-INF In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12808/WEB-INF Modified Files: ajax-config.xml struts-config.xml Log Message: Index: ajax-config.xml =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/ajax-config.xml,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** ajax-config.xml 21 May 2005 22:51:19 -0000 1.4 --- ajax-config.xml 28 Jun 2005 20:35:43 -0000 1.5 *************** *** 120,122 **** --- 120,136 ---- </element> </form> + <!-- Configuration for example 6 --> + <form ajaxRef="example6"> + <element ajaxRef="button"> + <event type="onclick"> + <requestHandler type="std:QueryString"> + <target>example6.do</target> + <parameter>f_name=f_name,f_tel=f_tel</parameter> + </requestHandler> + <responseHandler type="std:XSLT"> + <parameter>example6_resultLayer,record.xsl</parameter> + </responseHandler> + </event> + </element> + </form> </ajaxConfig> Index: struts-config.xml =================================================================== RCS file: /cvsroot/struts/ajaxtags/WEB-INF/struts-config.xml,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** struts-config.xml 21 May 2005 22:06:52 -0000 1.3 --- struts-config.xml 28 Jun 2005 20:35:43 -0000 1.4 *************** *** 30,33 **** --- 30,37 ---- <form-property name="button2" type="java.lang.String" /> </form-bean> + <form-bean name="example6Form" type="org.apache.struts.action.DynaActionForm"> + <form-property name="f_name" type="java.lang.String" /> + <form-property name="f_tel" type="java.lang.String" /> + </form-bean> </form-beans> *************** *** 41,44 **** --- 45,49 ---- <action path="/example4" name="example4Form" scope="request" type="com.omnytex.ajaxtags.Example4Action" /> <action path="/example5" name="example5Form" scope="request" type="com.omnytex.ajaxtags.Example5Action" /> + <action path="/example6" name="example6Form" scope="request" type="com.omnytex.ajaxtags.Example6Action" /> </action-mappings> |
From: <fza...@us...> - 2005-06-28 20:35:56
|
Update of /cvsroot/struts/ajaxtags/WEB-INF/src/com/omnytex/ajaxtags In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12808/WEB-INF/src/com/omnytex/ajaxtags Added Files: Example6Action.java Log Message: --- NEW FILE: Example6Action.java --- /* * Copyright 2005 Ricky Tong * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.omnytex.ajaxtags; import java.io.PrintWriter; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts.action.Action; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import org.apache.struts.action.DynaActionForm; /** * This is the Action for example 6. Example 6 accepts a name and phone * number submission, then generates XML using it. This XML is then * rendered in the browser via an XSLT transformation using the stdXSLT * handler. Note from Frank: I just modified this slightly to make it more * consistent with the other demo Actions. Functionally however, it is * unchanged. * * @author <a href="mailto:ri...@no...">Ricky Tong</a> */ public class Example6Action extends Action { public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { try { DynaActionForm daf = (DynaActionForm)form; String f_name = (String)daf.get("f_name"); String f_tel = (String)daf.get("f_tel"); PrintWriter out = response.getWriter(); out.println("<people><record name=\"" + f_name + "\" tel=\"" + f_tel + "\"/><record name=\"abc\" tel=\"123\"/><record " + "name=\"bcd\" tel=\"234\"/><record name=\"cde\" " + "tel=\"345\"/></people>"); out.flush(); out.close(); } catch (Exception e) { System.err.println("Exception in Example3Action.execute(): " + e); } return null; } // End execute() } // End class |
From: <jm...@us...> - 2005-06-28 01:45:48
|
Update of /cvsroot/struts/dialogs/src/org/superinterface/wizard/impl/doc-files In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4132/src/org/superinterface/wizard/impl/doc-files Added Files: ewstatemachine.gif Log Message: |
From: <jm...@us...> - 2005-06-28 01:45:47
|
Update of /cvsroot/struts/dialogs/src/org/superinterface/wizard/intf/doc-files In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4132/src/org/superinterface/wizard/intf/doc-files Added Files: ewstatemachine.gif Log Message: |
Update of /cvsroot/struts/dialogs/src/org/superinterface/wizard/intf In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4132/src/org/superinterface/wizard/intf Added Files: IWizard.java IWizardListener.java IWizardStep.java IWizardTransition.java package.html Log Message: |
From: <jm...@us...> - 2005-06-28 01:45:46
|
Update of /cvsroot/struts/dialogs/src/org/superinterface/wizard/impl In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4132/src/org/superinterface/wizard/impl Added Files: Wizard.java WizardStep.java WizardTransition.java package.html Log Message: |
Update of /cvsroot/struts/dialogs/war In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1832/war Added Files: embedded-child-login.jsp embedded-child-logout.jsp embedded-masterpage-resin.jsp embedded-masterpage-tomcat.jsp login.gif selectlogin.html Removed Files: btn.gif crudaction-cancel.jsp crudaction-list.jsp.good crudaction-store-success.jsp dialogloginactionnocache.jsp dialogloginnocacheuserpage.jsp wizard-sc-signupconfirm.jsp wizard-sc-signupdetails.jsp wizard-sc-signupstart.jsp Log Message: Added images for master/child JSP page --- NEW FILE: embedded-child-login.jsp --- <!-- Struts Dialogs, Login Control example Author: Michael Jouravlev, 2004-2005 This is "Login Page" view for login child control --> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %> <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %> <%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %> <table width=100% border=0 celpadding=0 cellspacing=2> <html:form action="/embeddedchild-resin.do"> <!-- Standard Struts error handling --> <logic:messagesPresent> <tr> <td colspan="2" align="left" bgcolor="#FF9966"> <html:messages id="error"> <bean:write name="error"/> </html:messages> </td> </tr> </logic:messagesPresent> <tr> <td align="left">User name:</td> <td align="left"> <html:text name="dialogloginform" property="name" size="15" tabindex="1"/> </td> </tr> <tr> <td align="left">User pasword:</td> <td align="left"> <html:text name="dialogloginform" property="password" size="15" tabindex="2"/> </td> </tr> <tr> <td align="left">Use "guest"/"guest"</td> <td colspan="2" align="left"> <html:image value="Log In" property="DIALOG-EVENT-LOGIN" src="embedded-images/index_19_login.gif"/> </td> </tr> </html:form> </table> --- NEW FILE: embedded-child-logout.jsp --- <!-- Struts Dialogs, Login Control example Author: Michael Jouravlev, 2004-2005 This is "Current User Info" view for login child control --> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %> <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %> <%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %> <table width=100% border=0 celpadding=0 cellspacing=2> <html:form action="/embeddedchild-resin.do"> <!-- Standard Struts error handling --> <logic:messagesPresent> <tr> <td align="left" bgcolor="#FF9966"> <html:messages id="error"> <bean:write name="error"/> </html:messages> </td> </tr> </logic:messagesPresent> <tr> <td align="left" width="50%">Welcome, <%= session.getAttribute("login.username") %></td> </tr> <tr> <td align="left"> </td> </tr> <tr> <td colspan="2" align="left"> <html:image value="Log In" property="DIALOG-EVENT-LOGOUT" src="embedded-images/index_19_logout.gif"/> </td> </tr> </html:form> </table> --- NEW FILE: embedded-masterpage-resin.jsp --- <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %> <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %> <html:html locale="true"> <HEAD> <TITLE>Your Company Name</TITLE> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1"> <!-- ImageReady Preload Script (index.psd) --> <SCRIPT TYPE="text/javascript"> <!-- function newImage(arg) { if (document.images) { rslt = new Image(); rslt.src = arg; return rslt; } } function changeImages() { if (document.images && (preloadFlag == true)) { for (var i=0; i<changeImages.arguments.length; i+=2) { document[changeImages.arguments[i]].src = changeImages.arguments[i+1]; } } } var preloadFlag = false; function preloadImages() { if (document.images) { Home_over = newImage("embedded-images/Home-over.gif"); Company_over = newImage("embedded-images/Company-over.gif"); Products_over = newImage("embedded-images/Products-over.gif"); Careers_over = newImage("embedded-images/Careers-over.gif"); Info_over = newImage("embedded-images/Info-over.gif"); Contact_Us_over = newImage("embedded-images/Contact-Us-over.gif"); preloadFlag = true; } } // --> </SCRIPT> <!-- End Preload Script --> </HEAD> <link href="embedded-css/styles.css" rel="stylesheet" type="text/css"> <BODY BGCOLOR=#FFFFFF LEFTMARGIN=0 TOPMARGIN=0 MARGINWIDTH=0 MARGINHEIGHT=0 ONLOAD="preloadImages();"><center> <!-- ImageReady Slices (index.psd) --> <TABLE WIDTH=775 BORDER=0 CELLPADDING=0 CELLSPACING=0> <!--DWLayoutTable--> <TR> <TD COLSPAN=16> <IMG SRC="embedded-images/head1.gif" WIDTH=775 HEIGHT=41 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=41 ALT=""></TD> </TR> <TR> <TD COLSPAN=2> <A HREF="#" ONMOUSEOVER="window.status='Home'; changeImages('Home', 'embedded-images/Home-over.gif'); return true;" ONMOUSEOUT="window.status=''; changeImages('Home', 'embedded-images/Home.gif'); return true;"> <IMG NAME="Home" SRC="embedded-images/Home.gif" WIDTH=68 HEIGHT=37 BORDER=0 ALT="Home"></A></TD> <TD width="66"> <A HREF="#" ONMOUSEOVER="window.status='Company'; changeImages('Company', 'embedded-images/Company-over.gif'); return true;" ONMOUSEOUT="window.status=''; changeImages('Company', 'embedded-images/Company.gif'); return true;"> <IMG NAME="Company" SRC="embedded-images/Company.gif" WIDTH=66 HEIGHT=37 BORDER=0 ALT="Company"></A></TD> <TD COLSPAN=2> <A HREF="#" ONMOUSEOVER="window.status='Products'; changeImages('Products', 'embedded-images/Products-over.gif'); return true;" ONMOUSEOUT="window.status=''; changeImages('Products', 'embedded-images/Products.gif'); return true;"> <IMG NAME="Products" SRC="embedded-images/Products.gif" WIDTH=71 HEIGHT=37 BORDER=0 ALT="Products"></A></TD> <TD COLSPAN=4> <A HREF="#" ONMOUSEOVER="window.status='Careers'; changeImages('Careers', 'embedded-images/Careers-over.gif'); return true;" ONMOUSEOUT="window.status=''; changeImages('Careers', 'embedded-images/Careers.gif'); return true;"> <IMG NAME="Careers" SRC="embedded-images/Careers.gif" WIDTH=66 HEIGHT=37 BORDER=0 ALT="Careers"></A></TD> <TD> <A HREF="#" ONMOUSEOVER="window.status='Info'; changeImages('Info', 'embedded-images/Info-over.gif'); return true;" ONMOUSEOUT="window.status=''; changeImages('Info', 'embedded-images/Info.gif'); return true;"> <IMG NAME="Info" SRC="embedded-images/Info.gif" WIDTH=41 HEIGHT=37 BORDER=0 ALT="Info"></A></TD> <% if (session.getAttribute("login.username") != null) { %> <TD> <A HREF="#" ONMOUSEOVER="window.status='Contact Us'; changeImages('Contact_Us', 'embedded-images/Contact-Us-over.gif'); return true;" ONMOUSEOUT="window.status=''; changeImages('Contact_Us', 'embedded-images/Contact-Us.gif'); return true;"> <IMG NAME="Contact_Us" SRC="embedded-images/Contact-Us.gif" WIDTH=84 HEIGHT=37 BORDER=0 ALT="Contact Us"></A></TD> <% } else {%> <TD><IMG SRC="embedded-images/Contact-Us-blank.gif" WIDTH=84 HEIGHT=37 BORDER=0></TD> <% } %> <TD COLSPAN=5> <IMG SRC="embedded-images/head2.gif" WIDTH=379 HEIGHT=37 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=37 ALT=""></TD> </TR> <TR> <TD COLSPAN=16> <IMG SRC="embedded-images/head3.gif" WIDTH=775 HEIGHT=161 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=161 ALT=""></TD> </TR> <TR> <TD COLSPAN=7> <% if (session.getAttribute("login.username") != null) { %> <IMG SRC="embedded-images/user_info.gif" WIDTH=234 HEIGHT=27 ALT=""></TD> <% } else {%> <IMG SRC="embedded-images/sign_in.gif" WIDTH=234 HEIGHT=27 ALT=""></TD> <% } %> <TD ROWSPAN=14> <IMG SRC="embedded-images/si2.gif" WIDTH=17 HEIGHT=626 ALT=""></TD> <TD ROWSPAN=14> <IMG SRC="embedded-images/au1.gif" WIDTH=20 HEIGHT=626 ALT=""></TD> <TD COLSPAN=3 ROWSPAN=2> <IMG SRC="embedded-images/about_us.gif" WIDTH=229 HEIGHT=39 ALT=""></TD> <TD ROWSPAN=14> <IMG SRC="embedded-images/au2.gif" WIDTH=22 HEIGHT=626 ALT=""></TD> <TD COLSPAN=2 ROWSPAN=3> <IMG SRC="embedded-images/prod1.gif" WIDTH=245 HEIGHT=89 ALT=""></TD> <TD ROWSPAN=14> <IMG SRC="embedded-images/so1.gif" WIDTH=8 HEIGHT=626 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=27 ALT=""></TD> </TR> <TR> <TD ROWSPAN=3> <IMG SRC="embedded-images/si1.gif" WIDTH=5 HEIGHT=104 ALT=""> </TD> <TD COLSPAN=6 ROWSPAN=3 align="center" valign="middle"> <jsp:include page="/embeddedchild-resin.do"/> </TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=12 ALT=""> </TD> </TR> <TR> <TD COLSPAN=3 ROWSPAN=9 align="left" valign="top"><div align="justify">Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat. At vero eos et accusam et justo duo dolores et ea. At vero eos et accusam et justo duo dolores et ea.<br> Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat. At vero eos et accusam et justo duo dolores et ea. At vero eos et accusam et justo duo dolores et ea.<br> Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat. At vero eos et accusam et justo duo dolores et ea. At vero eos et accusam et justo duo dolores et ea.<br> Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat. At vero eos et accusam et justo duo dolores et ea. At vero eos et accusam et justo duo dolores et ea. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat. At vero eos et accusam.</div></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=50 ALT=""></TD> </TR> <TR> <% if (session.getAttribute("login.username") != null) { %> <TD ROWSPAN=3> <IMG SRC="embedded-images/prod1_buy_member.gif" ALT="" WIDTH=139 HEIGHT=126 border="0" usemap="#Map5"></TD> <TD ROWSPAN=3 align="left" valign="top">This powerful machine with 450W power supply can even be used as a server.</TD> <% } else { %> <TD ROWSPAN=3> <IMG SRC="embedded-images/prod1_buy.gif" ALT="" WIDTH=139 HEIGHT=126 border="0" usemap="#Map5"></TD> <TD ROWSPAN=3 align="left" valign="top">This powerful machine with 450W power supply can even be used as a server.<br><br> Log in and get instant $50 off!</TD> <% } %> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=42 ALT=""></TD> </TR> <TR> <TD COLSPAN=7> <IMG SRC="embedded-images/latest_news.gif" WIDTH=234 HEIGHT=37 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=37 ALT=""></TD> </TR> <TR> <TD ROWSPAN=9> <IMG SRC="embedded-images/si1-31.gif" WIDTH=5 HEIGHT=458 ALT=""></TD> <TD COLSPAN=6 ROWSPAN=8 align="left" valign="top"><div align="justify"><span class="text1">20/02/2004</span><br> Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat. At vero eos et accusam et justo duo dolores et ea. At vero eos et accusam et justo duo dolores et ea. </div> <p align="right"><a href="#">Read more</a><img src="embedded-images/bullet.gif" border="0" align="absbottom" usemap="#Map2"></p> <p align="left"><span class="text1">18/02/2004</span><br> Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat. At vero eos et accusam et justo duo dolores et ea. At vero eos et accusam et justo duo dolores et ea.</p> <p align="right"><a href="#">Read more</a><img src="embedded-images/bullet.gif" border="0" align="absbottom" usemap="#Map3"></p> <p align="justify"><span class="text1">17/02/2004</span><br> Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat. At vero eos et accusam et justo duo dolores et ea. At vero eos et accusam et justo duo dolores et ea.</p> <p align="right"><a href="#">Read more</a><img src="embedded-images/bullet.gif" border="0" align="absbottom" usemap="#Map4"></p></TD> <TD height="47"> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=47 ALT=""></TD> </TR> <TR> <TD height="67" COLSPAN=2> <IMG SRC="embedded-images/prod2.gif" WIDTH=245 HEIGHT=67 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=67 ALT=""></TD> </TR> <TR> <% if (session.getAttribute("login.username") != null) { %> <TD ROWSPAN=3> <IMG SRC="embedded-images/prod2_buy_member.gif" ALT="" WIDTH=139 HEIGHT=130 border="0" usemap="#Map6"></TD> <TD ROWSPAN=3 align="left" valign="top"> Desktop machine with ergonomic flat panel monitor. </TD> <% } else { %> <TD ROWSPAN=3> <IMG SRC="embedded-images/prod2_buy.gif" ALT="" WIDTH=139 HEIGHT=130 border="0" usemap="#Map6"></TD> <TD ROWSPAN=3 align="left" valign="top"> Desktop machine with ergonomic flat panel monitor.<br><br> Log in and get instant $50 off! </TD> <% } %> <TD height="5"> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=5 ALT=""></TD> </TR> <TR> <TD height="14"> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=14 ALT=""></TD> </TR> <TR> <TD height="111"> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=111 ALT=""></TD> </TR> <TR> <TD COLSPAN=2 ROWSPAN=2> <IMG SRC="embedded-images/prod3.gif" WIDTH=245 HEIGHT=62 ALT=""></TD> <TD height="16"> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=16 ALT=""></TD> </TR> <TR> <TD COLSPAN=3 ROWSPAN=3> <IMG SRC="embedded-images/au3.gif" WIDTH=229 HEIGHT=198 ALT=""></TD> <TD height="46"> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=46 ALT=""></TD> </TR> <TR> <% if (session.getAttribute("login.username") != null) { %> <TD ROWSPAN=2> <IMG SRC="embedded-images/prod3_buy_member.gif" ALT="" WIDTH=139 HEIGHT=152 border="0" usemap="#Map7"></TD> <TD height="130" align="left" valign="top">19-inch flat panel monitor with only 64K colors, but with 8ms response time. <% } else { %> <TD ROWSPAN=2> <IMG SRC="embedded-images/prod3_buy.gif" ALT="" WIDTH=139 HEIGHT=152 border="0" usemap="#Map7"></TD> <TD height="130" align="left" valign="top">19-inch flat panel monitor with only 64K colors, but with 8ms response time.<br><br>Gamers, log in and get instant $50 off! <% } %> </TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=130 ALT=""></TD> </TR> <TR> <TD COLSPAN=6> <IMG SRC="embedded-images/si3.gif" WIDTH=229 HEIGHT=22 ALT=""></TD> <TD> <IMG SRC="embedded-images/so2.gif" WIDTH=106 HEIGHT=22 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=22 ALT=""></TD> </TR> <TR> <TD COLSPAN=16> <IMG SRC="embedded-images/footer.gif" WIDTH=775 HEIGHT=27 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=27 ALT=""></TD> </TR> <TR> <TD COLSPAN=16 align="center" valign="top"> <div align="center"><a href="#">Home</a> | <a href="#">Company</a> | <a href="#">Products</a> | <a href="#">Info</a> | <a href="#">News</a> | <a href="#">Support</a> | <a href="#">Careers</a> | <a href="#">Site Map</a> | <a href="#">Contact Us</a> <p>© Copyright Your Company Name. Designed by <a href="http://www.templatesbox.com/templates/072.htm">TemplatesBox.com</a></p> </div></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=64 ALT=""></TD> </TR> <TR> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=5 HEIGHT=1 ALT=""></TD> <TD width="63"> <IMG SRC="embedded-images/spacer.gif" WIDTH=63 HEIGHT=1 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=66 HEIGHT=1 ALT=""></TD> <TD width="15"> <IMG SRC="embedded-images/spacer.gif" WIDTH=15 HEIGHT=1 ALT=""></TD> <TD width="56"> <IMG SRC="embedded-images/spacer.gif" WIDTH=56 HEIGHT=1 ALT=""></TD> <TD width="8"> <IMG SRC="embedded-images/spacer.gif" WIDTH=8 HEIGHT=1 ALT=""></TD> <TD width="21"> <IMG SRC="embedded-images/spacer.gif" WIDTH=21 HEIGHT=1 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=17 HEIGHT=1 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=20 HEIGHT=1 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=41 HEIGHT=1 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=84 HEIGHT=1 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=104 HEIGHT=1 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=22 HEIGHT=1 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=139 HEIGHT=1 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=106 HEIGHT=1 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=8 HEIGHT=1 ALT=""></TD> <TD></TD> </TR> </TABLE> <!-- End ImageReady Slices --> <map name="Map"> <area shape="rect" coords="5,45,78,64" href="#" alt="GO"> </map> <map name="Map2"> <area shape="rect" coords="3,2,19,12" href="#" alt="Read more"> </map> <map name="Map3"> <area shape="rect" coords="0,2,29,13" href="#" alt="Read more"> </map> <map name="Map4"> <area shape="rect" coords="0,0,23,13" href="#" alt="Read more"> </map> <map name="Map5"> <area shape="rect" coords="43,87,116,105" href="#" alt="BUY"> </map> <map name="Map6"> <area shape="rect" coords="43,88,116,107" href="#" alt="BUY"> </map> <map name="Map7"> <area shape="rect" coords="43,109,116,129" href="#" alt="BUY"> </map> </center></BODY> </html:html> --- NEW FILE: embedded-masterpage-tomcat.jsp --- <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %> <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %> <html:html locale="true"> <HEAD> <TITLE>Your Company Name</TITLE> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1"> <!-- ImageReady Preload Script (index.psd) --> <SCRIPT TYPE="text/javascript"> <!-- function newImage(arg) { if (document.images) { rslt = new Image(); rslt.src = arg; return rslt; } } function changeImages() { if (document.images && (preloadFlag == true)) { for (var i=0; i<changeImages.arguments.length; i+=2) { document[changeImages.arguments[i]].src = changeImages.arguments[i+1]; } } } var preloadFlag = false; function preloadImages() { if (document.images) { Home_over = newImage("embedded-images/Home-over.gif"); Company_over = newImage("embedded-images/Company-over.gif"); Products_over = newImage("embedded-images/Products-over.gif"); Careers_over = newImage("embedded-images/Careers-over.gif"); Info_over = newImage("embedded-images/Info-over.gif"); Contact_Us_over = newImage("embedded-images/Contact-Us-over.gif"); preloadFlag = true; } } // --> </SCRIPT> <!-- End Preload Script --> </HEAD> <link href="embedded-css/styles.css" rel="stylesheet" type="text/css"> <BODY BGCOLOR=#FFFFFF LEFTMARGIN=0 TOPMARGIN=0 MARGINWIDTH=0 MARGINHEIGHT=0 ONLOAD="preloadImages();"><center> <!-- ImageReady Slices (index.psd) --> <TABLE WIDTH=775 BORDER=0 CELLPADDING=0 CELLSPACING=0> <!--DWLayoutTable--> <TR> <TD COLSPAN=16> <IMG SRC="embedded-images/head1.gif" WIDTH=775 HEIGHT=41 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=41 ALT=""></TD> </TR> <TR> <TD COLSPAN=2> <A HREF="#" ONMOUSEOVER="window.status='Home'; changeImages('Home', 'embedded-images/Home-over.gif'); return true;" ONMOUSEOUT="window.status=''; changeImages('Home', 'embedded-images/Home.gif'); return true;"> <IMG NAME="Home" SRC="embedded-images/Home.gif" WIDTH=68 HEIGHT=37 BORDER=0 ALT="Home"></A></TD> <TD width="66"> <A HREF="#" ONMOUSEOVER="window.status='Company'; changeImages('Company', 'embedded-images/Company-over.gif'); return true;" ONMOUSEOUT="window.status=''; changeImages('Company', 'embedded-images/Company.gif'); return true;"> <IMG NAME="Company" SRC="embedded-images/Company.gif" WIDTH=66 HEIGHT=37 BORDER=0 ALT="Company"></A></TD> <TD COLSPAN=2> <A HREF="#" ONMOUSEOVER="window.status='Products'; changeImages('Products', 'embedded-images/Products-over.gif'); return true;" ONMOUSEOUT="window.status=''; changeImages('Products', 'embedded-images/Products.gif'); return true;"> <IMG NAME="Products" SRC="embedded-images/Products.gif" WIDTH=71 HEIGHT=37 BORDER=0 ALT="Products"></A></TD> <TD COLSPAN=4> <A HREF="#" ONMOUSEOVER="window.status='Careers'; changeImages('Careers', 'embedded-images/Careers-over.gif'); return true;" ONMOUSEOUT="window.status=''; changeImages('Careers', 'embedded-images/Careers.gif'); return true;"> <IMG NAME="Careers" SRC="embedded-images/Careers.gif" WIDTH=66 HEIGHT=37 BORDER=0 ALT="Careers"></A></TD> <TD> <A HREF="#" ONMOUSEOVER="window.status='Info'; changeImages('Info', 'embedded-images/Info-over.gif'); return true;" ONMOUSEOUT="window.status=''; changeImages('Info', 'embedded-images/Info.gif'); return true;"> <IMG NAME="Info" SRC="embedded-images/Info.gif" WIDTH=41 HEIGHT=37 BORDER=0 ALT="Info"></A></TD> <% if (session.getAttribute("login.username") != null) { %> <TD> <A HREF="#" ONMOUSEOVER="window.status='Contact Us'; changeImages('Contact_Us', 'embedded-images/Contact-Us-over.gif'); return true;" ONMOUSEOUT="window.status=''; changeImages('Contact_Us', 'embedded-images/Contact-Us.gif'); return true;"> <IMG NAME="Contact_Us" SRC="embedded-images/Contact-Us.gif" WIDTH=84 HEIGHT=37 BORDER=0 ALT="Contact Us"></A></TD> <% } else {%> <TD><IMG SRC="embedded-images/Contact-Us-blank.gif" WIDTH=84 HEIGHT=37 BORDER=0></TD> <% } %> <TD COLSPAN=5> <IMG SRC="embedded-images/head2.gif" WIDTH=379 HEIGHT=37 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=37 ALT=""></TD> </TR> <TR> <TD COLSPAN=16> <IMG SRC="embedded-images/head3.gif" WIDTH=775 HEIGHT=161 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=161 ALT=""></TD> </TR> <TR> <TD COLSPAN=7> <% if (session.getAttribute("login.username") != null) { %> <IMG SRC="embedded-images/user_info.gif" WIDTH=234 HEIGHT=27 ALT=""></TD> <% } else {%> <IMG SRC="embedded-images/sign_in.gif" WIDTH=234 HEIGHT=27 ALT=""></TD> <% } %> <TD ROWSPAN=14> <IMG SRC="embedded-images/si2.gif" WIDTH=17 HEIGHT=626 ALT=""></TD> <TD ROWSPAN=14> <IMG SRC="embedded-images/au1.gif" WIDTH=20 HEIGHT=626 ALT=""></TD> <TD COLSPAN=3 ROWSPAN=2> <IMG SRC="embedded-images/about_us.gif" WIDTH=229 HEIGHT=39 ALT=""></TD> <TD ROWSPAN=14> <IMG SRC="embedded-images/au2.gif" WIDTH=22 HEIGHT=626 ALT=""></TD> <TD COLSPAN=2 ROWSPAN=3> <IMG SRC="embedded-images/prod1.gif" WIDTH=245 HEIGHT=89 ALT=""></TD> <TD ROWSPAN=14> <IMG SRC="embedded-images/so1.gif" WIDTH=8 HEIGHT=626 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=27 ALT=""></TD> </TR> <TR> <TD ROWSPAN=3> <IMG SRC="embedded-images/si1.gif" WIDTH=5 HEIGHT=104 ALT=""> </TD> <TD COLSPAN=6 ROWSPAN=3 align="center" valign="middle"> <jsp:include page="/embeddedchild-tomcat.do"/> </TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=12 ALT=""> </TD> </TR> <TR> <TD COLSPAN=3 ROWSPAN=9 align="left" valign="top"><div align="justify">Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat. At vero eos et accusam et justo duo dolores et ea. At vero eos et accusam et justo duo dolores et ea.<br> Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat. At vero eos et accusam et justo duo dolores et ea. At vero eos et accusam et justo duo dolores et ea.<br> Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat. At vero eos et accusam et justo duo dolores et ea. At vero eos et accusam et justo duo dolores et ea.<br> Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat. At vero eos et accusam et justo duo dolores et ea. At vero eos et accusam et justo duo dolores et ea. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat. At vero eos et accusam.</div></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=50 ALT=""></TD> </TR> <TR> <% if (session.getAttribute("login.username") != null) { %> <TD ROWSPAN=3> <IMG SRC="embedded-images/prod1_buy_member.gif" ALT="" WIDTH=139 HEIGHT=126 border="0" usemap="#Map5"></TD> <TD ROWSPAN=3 align="left" valign="top">This powerful machine with 450W power supply can even be used as a server.</TD> <% } else { %> <TD ROWSPAN=3> <IMG SRC="embedded-images/prod1_buy.gif" ALT="" WIDTH=139 HEIGHT=126 border="0" usemap="#Map5"></TD> <TD ROWSPAN=3 align="left" valign="top">This powerful machine with 450W power supply can even be used as a server.<br><br> Log in and get instant $50 off!</TD> <% } %> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=42 ALT=""></TD> </TR> <TR> <TD COLSPAN=7> <IMG SRC="embedded-images/latest_news.gif" WIDTH=234 HEIGHT=37 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=37 ALT=""></TD> </TR> <TR> <TD ROWSPAN=9> <IMG SRC="embedded-images/si1-31.gif" WIDTH=5 HEIGHT=458 ALT=""></TD> <TD COLSPAN=6 ROWSPAN=8 align="left" valign="top"><div align="justify"><span class="text1">20/02/2004</span><br> Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat. At vero eos et accusam et justo duo dolores et ea. At vero eos et accusam et justo duo dolores et ea. </div> <p align="right"><a href="#">Read more</a><img src="embedded-images/bullet.gif" border="0" align="absbottom" usemap="#Map2"></p> <p align="left"><span class="text1">18/02/2004</span><br> Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat. At vero eos et accusam et justo duo dolores et ea. At vero eos et accusam et justo duo dolores et ea.</p> <p align="right"><a href="#">Read more</a><img src="embedded-images/bullet.gif" border="0" align="absbottom" usemap="#Map3"></p> <p align="justify"><span class="text1">17/02/2004</span><br> Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat. At vero eos et accusam et justo duo dolores et ea. At vero eos et accusam et justo duo dolores et ea.</p> <p align="right"><a href="#">Read more</a><img src="embedded-images/bullet.gif" border="0" align="absbottom" usemap="#Map4"></p></TD> <TD height="47"> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=47 ALT=""></TD> </TR> <TR> <TD height="67" COLSPAN=2> <IMG SRC="embedded-images/prod2.gif" WIDTH=245 HEIGHT=67 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=67 ALT=""></TD> </TR> <TR> <% if (session.getAttribute("login.username") != null) { %> <TD ROWSPAN=3> <IMG SRC="embedded-images/prod2_buy_member.gif" ALT="" WIDTH=139 HEIGHT=130 border="0" usemap="#Map6"></TD> <TD ROWSPAN=3 align="left" valign="top"> Desktop machine with ergonomic flat panel monitor. </TD> <% } else { %> <TD ROWSPAN=3> <IMG SRC="embedded-images/prod2_buy.gif" ALT="" WIDTH=139 HEIGHT=130 border="0" usemap="#Map6"></TD> <TD ROWSPAN=3 align="left" valign="top"> Desktop machine with ergonomic flat panel monitor.<br><br> Log in and get instant $50 off! </TD> <% } %> <TD height="5"> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=5 ALT=""></TD> </TR> <TR> <TD height="14"> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=14 ALT=""></TD> </TR> <TR> <TD height="111"> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=111 ALT=""></TD> </TR> <TR> <TD COLSPAN=2 ROWSPAN=2> <IMG SRC="embedded-images/prod3.gif" WIDTH=245 HEIGHT=62 ALT=""></TD> <TD height="16"> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=16 ALT=""></TD> </TR> <TR> <TD COLSPAN=3 ROWSPAN=3> <IMG SRC="embedded-images/au3.gif" WIDTH=229 HEIGHT=198 ALT=""></TD> <TD height="46"> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=46 ALT=""></TD> </TR> <TR> <% if (session.getAttribute("login.username") != null) { %> <TD ROWSPAN=2> <IMG SRC="embedded-images/prod3_buy_member.gif" ALT="" WIDTH=139 HEIGHT=152 border="0" usemap="#Map7"></TD> <TD height="130" align="left" valign="top">19-inch flat panel monitor with only 64K colors, but with 8ms response time. <% } else { %> <TD ROWSPAN=2> <IMG SRC="embedded-images/prod3_buy.gif" ALT="" WIDTH=139 HEIGHT=152 border="0" usemap="#Map7"></TD> <TD height="130" align="left" valign="top">19-inch flat panel monitor with only 64K colors, but with 8ms response time.<br><br>Gamers, log in and get instant $50 off! <% } %> </TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=130 ALT=""></TD> </TR> <TR> <TD COLSPAN=6> <IMG SRC="embedded-images/si3.gif" WIDTH=229 HEIGHT=22 ALT=""></TD> <TD> <IMG SRC="embedded-images/so2.gif" WIDTH=106 HEIGHT=22 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=22 ALT=""></TD> </TR> <TR> <TD COLSPAN=16> <IMG SRC="embedded-images/footer.gif" WIDTH=775 HEIGHT=27 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=27 ALT=""></TD> </TR> <TR> <TD COLSPAN=16 align="center" valign="top"> <div align="center"><a href="#">Home</a> | <a href="#">Company</a> | <a href="#">Products</a> | <a href="#">Info</a> | <a href="#">News</a> | <a href="#">Support</a> | <a href="#">Careers</a> | <a href="#">Site Map</a> | <a href="#">Contact Us</a> <p>© Copyright Your Company Name. Designed by <a href="http://www.templatesbox.com/templates/072.htm">TemplatesBox.com</a></p> </div></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=1 HEIGHT=64 ALT=""></TD> </TR> <TR> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=5 HEIGHT=1 ALT=""></TD> <TD width="63"> <IMG SRC="embedded-images/spacer.gif" WIDTH=63 HEIGHT=1 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=66 HEIGHT=1 ALT=""></TD> <TD width="15"> <IMG SRC="embedded-images/spacer.gif" WIDTH=15 HEIGHT=1 ALT=""></TD> <TD width="56"> <IMG SRC="embedded-images/spacer.gif" WIDTH=56 HEIGHT=1 ALT=""></TD> <TD width="8"> <IMG SRC="embedded-images/spacer.gif" WIDTH=8 HEIGHT=1 ALT=""></TD> <TD width="21"> <IMG SRC="embedded-images/spacer.gif" WIDTH=21 HEIGHT=1 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=17 HEIGHT=1 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=20 HEIGHT=1 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=41 HEIGHT=1 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=84 HEIGHT=1 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=104 HEIGHT=1 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=22 HEIGHT=1 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=139 HEIGHT=1 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=106 HEIGHT=1 ALT=""></TD> <TD> <IMG SRC="embedded-images/spacer.gif" WIDTH=8 HEIGHT=1 ALT=""></TD> <TD></TD> </TR> </TABLE> <!-- End ImageReady Slices --> <map name="Map"> <area shape="rect" coords="5,45,78,64" href="#" alt="GO"> </map> <map name="Map2"> <area shape="rect" coords="3,2,19,12" href="#" alt="Read more"> </map> <map name="Map3"> <area shape="rect" coords="0,2,29,13" href="#" alt="Read more"> </map> <map name="Map4"> <area shape="rect" coords="0,0,23,13" href="#" alt="Read more"> </map> <map name="Map5"> <area shape="rect" coords="43,87,116,105" href="#" alt="BUY"> </map> <map name="Map6"> <area shape="rect" coords="43,88,116,107" href="#" alt="BUY"> </map> <map name="Map7"> <area shape="rect" coords="43,109,116,129" href="#" alt="BUY"> </map> </center></BODY> </html:html> --- NEW FILE: login.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: selectlogin.html --- <html> <h2>LOGIN</h2> </html> --- btn.gif DELETED --- --- crudaction-cancel.jsp DELETED --- --- crudaction-list.jsp.good DELETED --- --- crudaction-store-success.jsp DELETED --- --- dialogloginactionnocache.jsp DELETED --- --- dialogloginnocacheuserpage.jsp DELETED --- --- wizard-sc-signupconfirm.jsp DELETED --- --- wizard-sc-signupdetails.jsp DELETED --- --- wizard-sc-signupstart.jsp DELETED --- |
From: <jm...@us...> - 2005-06-28 01:42:10
|
Update of /cvsroot/struts/dialogs/src/net/sf/dialogs/tools In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1832/src/net/sf/dialogs/tools Removed Files: ActionTools.java Log Message: Added images for master/child JSP page --- ActionTools.java DELETED --- |
Update of /cvsroot/struts/dialogs/war/embedded-images In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1832/war/embedded-images Added Files: Careers-over.gif Careers.gif Company-over.gif Company.gif Contact-Us-blank.gif Contact-Us-over.gif Contact-Us.gif Home-over.gif Home.gif Info-over.gif Info.gif Products-over.gif Products.gif about_us.gif au1.gif au2.gif au3.gif bullet.gif footer.gif head1.gif head2.gif head3.gif index_19.gif index_19_blank.gif index_19_login.gif index_19_logout.gif latest_news.gif prod1.gif prod1_buy.gif prod1_buy_member.gif prod2.gif prod2_buy.gif prod2_buy_member.gif prod3.gif prod3_buy.gif prod3_buy_member.gif si1-31.gif si1.gif si2.gif si3.gif sign_in.gif so1.gif so2.gif spacer.gif user_info.gif Log Message: Added images for master/child JSP page --- NEW FILE: Careers-over.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: Careers.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: Company-over.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: Company.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: Contact-Us-blank.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: Contact-Us-over.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: Contact-Us.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: Home-over.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: Home.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: Info-over.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: Info.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: Products-over.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: Products.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: about_us.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: au1.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: au2.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: au3.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: bullet.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: footer.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: head1.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: head2.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: head3.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: index_19.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: index_19_blank.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: index_19_login.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: index_19_logout.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: latest_news.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: prod1.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: prod1_buy.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: prod1_buy_member.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: prod2.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: prod2_buy.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: prod2_buy_member.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: prod3.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: prod3_buy.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: prod3_buy_member.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: si1-31.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: si1.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: si2.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: si3.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: sign_in.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: so1.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: so2.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: spacer.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: user_info.gif --- (This appears to be a binary file; contents omitted.) |
From: <jm...@us...> - 2005-06-28 01:42:09
|
Update of /cvsroot/struts/dialogs/war/embedded-css In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1832/war/embedded-css Added Files: styles.css Log Message: Added images for master/child JSP page --- NEW FILE: styles.css --- body { margin-bottom: 0px; font-family: Verdana; font-size: 10px; font-style: normal; line-height: normal; font-weight: normal; font-variant: normal; text-transform: none; color: #7A7A7A; } a:link { color: #FF7F00; font-family: Verdana; font-size: 10px; text-decoration: underline; font-weight: bold; } a:hover { color: #FF7F00; font-family: verdana; font-size: 10px; font-weight: bold; font-style: normal; line-height: normal; font-variant: normal; text-transform: none; background-color: #CECECE; } a:visited { color: #7A7A7A; font-family: verdana; font-size: 10px; text-decoration: none; } td, textarea, input, select { font-family: Verdana; font-size: 10px; color: #7A7A7A; } .tableDetail { font-size: 10px; } .text1 { font-family: Verdana; font-size: 10px; font-weight: bold; color: #FF7F00; } |
From: <jm...@us...> - 2005-06-28 01:40:57
|
Update of /cvsroot/struts/dialogs/war/embedded-css In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1162/embedded-css Log Message: Directory /cvsroot/struts/dialogs/war/embedded-css added to the repository |