Applied patches/fixed bugs
git-svn-id: https://svn.apache.org/repos/asf/jakarta/tapestry/branches/branch-3-0@385802 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/config/common.properties b/config/common.properties
index 7ade323..94d02b0 100644
--- a/config/common.properties
+++ b/config/common.properties
@@ -86,7 +86,7 @@
# ---- Javassist ----
javassist.version=2.5.1
-javassist.loc=http://telia.dl.sourceforge.net/sourceforge/jboss/javassist-${javassist.version}.zip
+javassist.loc=http://umn.dl.sourceforge.net/sourceforge/jboss/javassist-${javassist.version}.zip
javassist.dest=${ext.download.dir}/javassist-${javassist.version}
javassist.ext.jar=${root.lib.dir}/${ext.dir}/javassist-${javassist.version}.jar
javassist.jar=${javassist.dest}/javassist.jar
diff --git a/contrib/src/org/apache/tapestry/contrib/table/components/FormTable.jwc b/contrib/src/org/apache/tapestry/contrib/table/components/FormTable.jwc
index 9c793a1..2003fb3 100644
--- a/contrib/src/org/apache/tapestry/contrib/table/components/FormTable.jwc
+++ b/contrib/src/org/apache/tapestry/contrib/table/components/FormTable.jwc
@@ -234,7 +234,7 @@
<component id="tableRows" type="TableFormRows">
<inherited-binding name="row" parameter-name="row"/>
<inherited-binding name="class" parameter-name="rowsClass"/>
- <binding name="convertor" expression="convertor"/>
+ <inherited-binding name="convertor" expression="convertor"/>
</component>
<component id="tableValues" type="TableValues">
diff --git a/contrib/src/org/apache/tapestry/contrib/table/components/TableUtils.java b/contrib/src/org/apache/tapestry/contrib/table/components/TableUtils.java
index b9c78d3..c7b5bb7 100644
--- a/contrib/src/org/apache/tapestry/contrib/table/components/TableUtils.java
+++ b/contrib/src/org/apache/tapestry/contrib/table/components/TableUtils.java
@@ -54,12 +54,10 @@
public static String format(String key, Object[] args)
{
- if (s_objStrings == null) {
synchronized (TableUtils.class) {
if (s_objStrings == null)
s_objStrings = ResourceBundle.getBundle("org.apache.tapestry.contrib.table.components.TableStrings");
}
- }
String pattern = s_objStrings.getString(key);
diff --git a/contrib/src/org/apache/tapestry/contrib/table/model/ognl/OgnlTableColumnEvaluator.java b/contrib/src/org/apache/tapestry/contrib/table/model/ognl/OgnlTableColumnEvaluator.java
index a84b1c4..f3f6b3a 100644
--- a/contrib/src/org/apache/tapestry/contrib/table/model/ognl/OgnlTableColumnEvaluator.java
+++ b/contrib/src/org/apache/tapestry/contrib/table/model/ognl/OgnlTableColumnEvaluator.java
@@ -49,15 +49,12 @@
if (m_strExpression == null || m_strExpression.equals(""))
return "";
- if (m_objParsedExpression == null)
- {
synchronized (this)
{
if (m_objParsedExpression == null)
m_objParsedExpression =
OgnlUtils.getParsedExpression(m_strExpression);
}
- }
try
{
diff --git a/contrib/src/org/apache/tapestry/contrib/table/model/simple/SimpleTableColumnFormRendererSource.java b/contrib/src/org/apache/tapestry/contrib/table/model/simple/SimpleTableColumnFormRendererSource.java
index 0980327..8c43b9a 100644
--- a/contrib/src/org/apache/tapestry/contrib/table/model/simple/SimpleTableColumnFormRendererSource.java
+++ b/contrib/src/org/apache/tapestry/contrib/table/model/simple/SimpleTableColumnFormRendererSource.java
@@ -52,8 +52,6 @@
ITableColumn objColumn,
Object objRow)
{
- if (m_objComponentRenderer == null)
- {
synchronized (this)
{
if (m_objComponentRenderer == null)
@@ -67,7 +65,6 @@
new ComponentTableRendererSource(objAddress);
}
}
- }
return m_objComponentRenderer.getRenderer(
objCycle,
diff --git a/contrib/src/org/apache/tapestry/contrib/table/model/simple/SimpleTableColumnRendererSource.java b/contrib/src/org/apache/tapestry/contrib/table/model/simple/SimpleTableColumnRendererSource.java
index b295a1c..ee0658e 100644
--- a/contrib/src/org/apache/tapestry/contrib/table/model/simple/SimpleTableColumnRendererSource.java
+++ b/contrib/src/org/apache/tapestry/contrib/table/model/simple/SimpleTableColumnRendererSource.java
@@ -52,8 +52,6 @@
ITableColumn objColumn,
Object objRow)
{
- if (m_objComponentRenderer == null)
- {
synchronized (this)
{
if (m_objComponentRenderer == null)
@@ -67,7 +65,6 @@
new ComponentTableRendererSource(objAddress);
}
}
- }
return m_objComponentRenderer.getRenderer(
objCycle,
diff --git a/contrib/src/org/apache/tapestry/contrib/tree/components/table/TreeTableValueRenderSource.java b/contrib/src/org/apache/tapestry/contrib/tree/components/table/TreeTableValueRenderSource.java
index 44aff1c..2057138 100644
--- a/contrib/src/org/apache/tapestry/contrib/tree/components/table/TreeTableValueRenderSource.java
+++ b/contrib/src/org/apache/tapestry/contrib/tree/components/table/TreeTableValueRenderSource.java
@@ -51,8 +51,6 @@
ITableColumn objColumn,
Object objRow)
{
- if (m_objComponentRenderer == null)
- {
synchronized (this)
{
if (m_objComponentRenderer == null)
@@ -67,7 +65,6 @@
new ComponentTableRendererSource(objAddress);
}
}
- }
return m_objComponentRenderer.getRenderer(
objCycle,
diff --git a/examples/Tutorial2/build.xml b/examples/Tutorial2/build.xml
deleted file mode 100644
index ea17781..0000000
--- a/examples/Tutorial2/build.xml
+++ /dev/null
@@ -1,138 +0,0 @@
-<?xml version="1.0"?>
-
-<project name="Simple Dev Environment" default="compile">
-
- <!-- This should point to where you have Tapestry installed -->
- <property name="tapestry.install.dir" value="../../"/>
-
- <!-- This property is only required if you wish to deploy to -->
- <!-- your favorite web container. Ignore otherwise -->
- <property name="deployment.dir" value="./deploy"/>
-
- <!-- NO NEED TO CHANGE ANYTHING FROM HERE DOWN -->
-
- <property name="classes.dir" value="./web/WEB-INF/classes"/>
- <property name="src.dir" value="./src"/>
- <property name="war.dir" value="./webapps"/>
- <property name="war.name" value="learn-tapestry.war"/>
-
- <property name="root.dir" value="${tapestry.install.dir}"/>
- <property file="${root.dir}/config/Version.properties"/>
- <property file="${root.dir}/config/build.properties"/>
- <property file="${root.dir}/config/common.properties"/>
- <property name="private.dir" value="private"/>
-
- <path id="tutorial.classpath">
- <pathelement location="${lib.ext.dir}/javax.servlet.jar"/>
- <pathelement location="${lib.ext.dir}/${commons-logging.jar}"/>
- <pathelement location="${lib.ext.dir}/${commons-lang.jar}"/>
- <pathelement location="${lib.ext.dir}/${log4j.jar}"/>
- <pathelement location="${lib.ext.dir}/javax.xml.jaxp.jar"/>
- <pathelement location="${lib.ext.dir}/org.apache.crimson.jar"/>
- <pathelement location="${lib.ext.dir}/${jetty.jar}"/>
- <pathelement location="${lib.ext.dir}/${jakarta-oro.jar}"/>
- <pathelement location="${lib.ext.dir}/${ognl.jar}"/>
- <pathelement location="${lib.ext.dir}/${bsf.jar}"/>
- <pathelement location="config"/>
- </path>
-
- <path id="libs">
- <fileset dir="${tapestry.install.dir}/lib">
- <include name="net.sf.*.jar"/>
- </fileset>
- <fileset dir="${tapestry.install.dir}/lib/ext">
- <include name="*.jar"/>
- </fileset>
- </path>
-
- <target name="prepare">
- <mkdir dir="${deployment.dir}"/>
- <mkdir dir="${war.dir}"/>
- <mkdir dir="${src.dir}"/>
- <mkdir dir="${classes.dir}"/>
- <mkdir dir="web/WEB-INF/lib"/>
-
- <copy todir="${classes.dir}">
- <fileset dir="${src.dir}">
- <include name="**/*.page"/>
- <include name="**/*.jwc"/>
- <include name="**/*.html"/>
- <include name="**/*.application"/>
- </fileset>
- </copy>
-
- <copy todir="web/WEB-INF/lib">
- <fileset dir="${tapestry.install.dir}/lib">
- <include name="net.sf.*"/>
- </fileset>
- </copy>
- </target>
-
- <target name="compile" depends="prepare">
- <javac srcdir="${src.dir}"
- destdir="${classes.dir}" target="1.1" source="1.3">
- <classpath refid="libs"/>
- </javac>
- </target>
-
- <!-- Run your code within the standard Jetty Web Container -->
- <target name="run" depends="war">
- <delete dir="${private.dir}" quiet="true"/>
- <mkdir dir="${private.dir}"/>
-
- <echo>Running you example code on port 8081 ...</echo>
- <java
- classname="org.mortbay.jetty.Server" fork="true" maxmemory="128MB">
-
- <classpath>
- <!-- Favor files in src over copies in classes -->
- <pathelement location="${src.dir}"/>
- <pathelement location="./config"/>
-
- <path refid="tutorial.classpath"/>
- <pathelement location="${lib.ext.dir}/org.mortbay.jetty.jar"/>
-
- <pathelement location="${classes.dir}"/>
- </classpath>
-
- <arg value="config/jetty-dev-env.xml"/>
-
- <!-- Enable debugging when running the tutorial -->
- <jvmarg line="-showversion -Xdebug -Xnoagent"/>
- <jvmarg line="-Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=20150"/>
- <sysproperty key="java.compiler" value="NONE"/>
-
- <sysproperty key="net.sf.tapestry.disable-caching" value="true"/>
- <sysproperty key="net.sf.tapestry.enable-reset-service" value="true"/>
-
- <!-- Jetty can get easily confused (under NT) unless this is turned off. -->
- <sysproperty key="org.mortbay.util.FileResource.checkAliases" value="false"/>
-
-
- <!--
- This is enabled only if we want to use the private asset service
- <sysproperty key="net.sf.tapestry.asset.dir" value="${private.dir}"/>
- <sysproperty key="net.sf.tapestry.asset.URL" value="/private"/>
- -->
- </java>
- </target>
-
- <target name="war" depends="compile">
- <jar destfile="${war.dir}/${war.name}"
- basedir="./web"/>
- </target>
-
- <target name="deploy" depends="war">
- <copy todir="${deployment.dir}">
- <fileset dir="${war.dir}"/>
- </copy>
- </target>
-
- <target name="clean">
- <delete dir="${war.dir}"/>
- <delete dir="${classes.dir}"/>
- <delete dir="${private.dir}"/>
- <delete dir="${deployment.dir}"/>
- </target>
-
-</project>
diff --git a/examples/Tutorial2/config/jetty-dev-env.xml b/examples/Tutorial2/config/jetty-dev-env.xml
deleted file mode 100644
index a5a855e..0000000
--- a/examples/Tutorial2/config/jetty-dev-env.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!-- $Id$ -->
-<!DOCTYPE Configure PUBLIC
- "-//Mort Bay Consulting//DTD Configure 1.2//EN"
- "http://jetty.mortbay.org/configure_1_2.dtd">
-
-<Configure class="org.mortbay.jetty.Server">
-
- <Call name="addListener">
- <Arg>
- <New class="org.mortbay.http.SocketListener">
- <Set name="Port">8080</Set>
- <Set name="MinThreads">1</Set>
- <Set name="MaxThreads">10</Set>
- <Set name="MaxIdleTimeMs">50000</Set>
- </New>
- </Arg>
- </Call>
-
- <!-- By moving web.xml into WEB-INF, the working directory ends up with the
- approximate format of a WAR. -->
-
- <Call name="addWebApplication">
- <Arg>/tutorial</Arg>
- <Arg>./web</Arg>
- <Set name="DefaultsDescriptor">./config/webdefault.xml</Set>
- </Call>
-
- <Call name="addContext">
- <Arg>/</Arg>
- <Set name="realmName">Jetty Demo Realm</Set>
-
- <Call name="addServlet">
- <Arg>Admin</Arg>
- <Arg>/</Arg>
- <Arg>org.mortbay.servlet.AdminServlet</Arg>
- </Call>
-
- <Call name="setAttribute">
- <Arg>org.mortbay.http.HttpServer</Arg>
- <Arg><Call name="getHttpServer"/></Arg>
- </Call>
- </Call>
-</Configure>
\ No newline at end of file
diff --git a/examples/Tutorial2/config/webdefault.xml b/examples/Tutorial2/config/webdefault.xml
deleted file mode 100644
index 7751b2e..0000000
--- a/examples/Tutorial2/config/webdefault.xml
+++ /dev/null
@@ -1,56 +0,0 @@
-<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
-<!-- $Id$ -->
-
-<web-app>
- <description>
- Default web.xml file.
- This file is applied to a Web application before it's own WEB_INF/web.xml file
- </description>
-
-
- <servlet>
- <servlet-name>Default</servlet-name>
- <servlet-class>org.mortbay.jetty.servlet.Default</servlet-class>
- <init-param>
- <param-name>acceptRanges</param-name>
- <param-value>true</param-value>
- </init-param>
- <init-param>
- <param-name>dirAllowed</param-name>
- <param-value>true</param-value>
- </init-param>
- <init-param>
- <param-name>putAllowed</param-name>
- <param-value>false</param-value>
- </init-param>
- <init-param>
- <param-name>delAllowed</param-name>
- <param-value>false</param-value>
- </init-param>
- <init-param>
- <param-name>redirectWelcome</param-name>
- <param-value>true</param-value>
- </init-param>
- <load-on-startup>1</load-on-startup>
- </servlet>
-
-
- <!-- ==================================================================== -->
- <servlet-mapping>
- <servlet-name>Default</servlet-name>
- <url-pattern>/</url-pattern>
- </servlet-mapping>
-
- <!-- ==================================================================== -->
- <session-config>
- <session-timeout>60</session-timeout>
- </session-config>
-
- <!-- ==================================================================== -->
- <welcome-file-list>
- <welcome-file>index.html</welcome-file>
- <welcome-file>index.htm</welcome-file>
- </welcome-file-list>
-
-</web-app>
-
diff --git a/examples/Tutorial2/src/log4j.properties b/examples/Tutorial2/src/log4j.properties
deleted file mode 100644
index 8fca54f..0000000
--- a/examples/Tutorial2/src/log4j.properties
+++ /dev/null
@@ -1,10 +0,0 @@
-# Set root category priority to DEBUG and its only appender to A1.
-log4j.rootCategory=DEBUG, A1
-
-# A1 is set to be a ConsoleAppender.
-log4j.appender.A1=org.apache.log4j.ConsoleAppender
-
-# A1 uses PatternLayout.
-log4j.appender.A1.layout=org.apache.log4j.PatternLayout
-log4j.appender.A1.layout.ConversionPattern=%c{1} [%p] %m%n
-
diff --git a/examples/Tutorial2/src/tutorial/assets/Assets.application b/examples/Tutorial2/src/tutorial/assets/Assets.application
deleted file mode 100644
index bf6a5be..0000000
--- a/examples/Tutorial2/src/tutorial/assets/Assets.application
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: Simple.application,v 1.8 2002/07/27 15:11:59 hship Exp $ -->
-<!DOCTYPE application PUBLIC
- "-//Howard Lewis Ship//Tapestry Specification 1.2//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_2.dtd">
-
-<application name="Assets tutorial" engine-class="net.sf.tapestry.engine.SimpleEngine">
- <page name="Home" specification-path="/tutorial/assets/Home.page"/>
-</application>
diff --git a/examples/Tutorial2/src/tutorial/assets/AssetsServlet.java b/examples/Tutorial2/src/tutorial/assets/AssetsServlet.java
deleted file mode 100644
index 4e4ef42..0000000
--- a/examples/Tutorial2/src/tutorial/assets/AssetsServlet.java
+++ /dev/null
@@ -1,31 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.assets;
-
-import net.sf.tapestry.ApplicationServlet;
-
-/**
- * @version $Id: SimpleServlet.java,v 1.9 2002/05/04 12:43:31 hship Exp $
- * @author Howard Lewis Ship
- *
- */
-
-public class AssetsServlet extends ApplicationServlet
-{
- protected String getApplicationSpecificationPath()
- {
- return "/tutorial/assets/Assets.application";
- }
-}
\ No newline at end of file
diff --git a/examples/Tutorial2/src/tutorial/assets/Home.html b/examples/Tutorial2/src/tutorial/assets/Home.html
deleted file mode 100644
index 135715d..0000000
--- a/examples/Tutorial2/src/tutorial/assets/Home.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<html>
-<head>
- <title>Assets Example</title>
-</head>
-<body>
-
- <table cellpadding="8" valign="middle">
- <tr>
- <td>
- <a href="http://tapestry.sourceforge.net/">
- <img jwcid="poweredbyImage" alt="View Tapestry Home"/>
- </a>
- </td>
- <td>
- <font color="navy" size="+2"><b><i>Powered by Tapestry</i></b></font>
- </td>
- </tr>
- </table>
-
-</body>
-</html>
diff --git a/examples/Tutorial2/src/tutorial/assets/Home.page b/examples/Tutorial2/src/tutorial/assets/Home.page
deleted file mode 100644
index 0505765..0000000
--- a/examples/Tutorial2/src/tutorial/assets/Home.page
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: Home.jwc,v 1.4 2001/05/22 15:24:16 hship Exp $ -->
-<!DOCTYPE page-specification PUBLIC "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_2.dtd">
-
-<page-specification class="net.sf.tapestry.html.BasePage">
-
- <component id="poweredbyImage" type="Image">
- <binding name="image" expression="assets.imageAsset"/>
- </component>
-
- <context-asset name="imageAsset" path="/images/poweredby.jpg"/>
-
-</page-specification>
diff --git a/examples/Tutorial2/src/tutorial/components/ArrayViewer.html b/examples/Tutorial2/src/tutorial/components/ArrayViewer.html
deleted file mode 100644
index 7f3378e..0000000
--- a/examples/Tutorial2/src/tutorial/components/ArrayViewer.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<span jwcid="$content$">
- <table border=1 width="95%">
- <tr><td align="center">
-
- <table>
- <tr><th>
- <span jwcid="heading"/>
- </th></tr>
- </table>
-
- </td></tr>
-
- <tr><td>
-
- <table border=1 width="100%">
- <span jwcid="elements">
- <tr>
- <span jwcid="cells">
- <td>
- <span jwcid="cell"/>
- </td>
- </span>
- </tr>
- </span>
- </table>
-
- </td></tr>
- </table>
-</span>
\ No newline at end of file
diff --git a/examples/Tutorial2/src/tutorial/components/ArrayViewer.java b/examples/Tutorial2/src/tutorial/components/ArrayViewer.java
deleted file mode 100644
index 25422b3..0000000
--- a/examples/Tutorial2/src/tutorial/components/ArrayViewer.java
+++ /dev/null
@@ -1,73 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.components;
-
-import net.sf.tapestry.BaseComponent;
-import net.sf.tapestry.IBinding;
-import net.sf.tapestry.IRequestCycle;
-import net.sf.tapestry.components.Foreach;
-
-/**
- * Simple ArrayViewer object, for the Component chapter of the Tutorial
- * @author neil clayton
- */
-public class ArrayViewer extends BaseComponent {
- /**
- * Return the bound heading if there is one, else return a static default heading
- */
- public String getHeading() {
- IBinding binding = (IBinding)getBinding("heading");
- if(binding.getObject() != null) {
- return binding.getObject().toString();
- }
- return heading;
- }
-
- /**
- * Sets the heading.
- * @param heading The heading to set
- */
- public void setHeading(String heading) {
- this.heading = heading;
- }
-
- /**
- * @see net.sf.tapestry.AbstractComponent#cleanupAfterRender(IRequestCycle)
- */
- protected void cleanupAfterRender(IRequestCycle cycle) {
- source = null;
- heading = "Array Viewer";
- super.cleanupAfterRender(cycle);
- }
-
- /**
- * Returns the source.
- * @return Object
- */
- public Object getSource() {
- return source;
- }
-
- /**
- * Sets the source.
- * @param source The source to set
- */
- public void setSource(Object source) {
- this.source = source;
- }
-
- private String heading = "Array Viewer";
- private Object source;
-}
diff --git a/examples/Tutorial2/src/tutorial/components/ArrayViewer.jwc b/examples/Tutorial2/src/tutorial/components/ArrayViewer.jwc
deleted file mode 100644
index d1d0570..0000000
--- a/examples/Tutorial2/src/tutorial/components/ArrayViewer.jwc
+++ /dev/null
@@ -1,53 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!DOCTYPE component-specification
- PUBLIC "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_3.dtd">
-
-<component-specification class="tutorial.components.ArrayViewer" allow-body="no" allow-informal-parameters="yes">
-
- <parameter
- name="source"
- java-type="java.lang.Object"
- direction="in"
- required="yes">
- </parameter>
-
- <parameter
- name="heading"
- java-type="java.lang.String"
- direction="in"
- required="no">
- </parameter>
-
- <component id="elements" type="Foreach">
- <inherited-binding name="source" parameter-name="source"/>
- </component>
-
- <component id="cells" type="Foreach">
- <binding name="source" expression="components.elements.value"/>
- </component>
-
- <component id="heading" type="InsertText">
- <binding name="value" expression="getHeading()"/>
- </component>
-
- <component id="cell" type="InsertText">
- <binding name="value" expression="components.cells.value"/>
- </component>
-
-</component-specification>
diff --git a/examples/Tutorial2/src/tutorial/components/Components.application b/examples/Tutorial2/src/tutorial/components/Components.application
deleted file mode 100644
index 011586c..0000000
--- a/examples/Tutorial2/src/tutorial/components/Components.application
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: HelloWorld.application,v 1.9 2002/08/09 11:54:40 hship Exp $ -->
-<!DOCTYPE application PUBLIC
- "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_3.dtd">
-
-<application name="Components Tutorial" engine-class="net.sf.tapestry.engine.SimpleEngine">
- <page name="Home" specification-path="/tutorial/components/Home.page"/>
- <component-alias type="ArrayViewer" specification-path="/tutorial/components/ArrayViewer.jwc" />
-</application>
diff --git a/examples/Tutorial2/src/tutorial/components/ComponentsServlet.java b/examples/Tutorial2/src/tutorial/components/ComponentsServlet.java
deleted file mode 100644
index 27f181a..0000000
--- a/examples/Tutorial2/src/tutorial/components/ComponentsServlet.java
+++ /dev/null
@@ -1,32 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.components;
-
-import net.sf.tapestry.ApplicationServlet;
-
-/**
- * @version $Id: PageLinkingServlet.java,v 1.1 2002/10/03 15:49:02 scornflake Exp $
- * @author Howard Lewis Ship
- *
- **/
-
-public class ComponentsServlet extends ApplicationServlet
-{
- protected String getApplicationSpecificationPath()
- {
- return "/tutorial/components/Components.application";
- }
-
-}
\ No newline at end of file
diff --git a/examples/Tutorial2/src/tutorial/components/Home.html b/examples/Tutorial2/src/tutorial/components/Home.html
deleted file mode 100644
index 457bdc2..0000000
--- a/examples/Tutorial2/src/tutorial/components/Home.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<html>
-<head>
- <title>Component Creation Tutorial</title>
-</head>
-<body>
-
- <h1>ArrayViewer example</h1>
- This pag contains a single instance of ArrayViewer with
- some sample static data.
-
- <hr>
- <span jwcid="viewer">Viewer Will Go here</span>
- </hr>
-
-</body>
-</html>
diff --git a/examples/Tutorial2/src/tutorial/components/Home.java b/examples/Tutorial2/src/tutorial/components/Home.java
deleted file mode 100644
index df47dc6..0000000
--- a/examples/Tutorial2/src/tutorial/components/Home.java
+++ /dev/null
@@ -1,31 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.components;
-
-import net.sf.tapestry.html.BasePage;
-
-/**
- * Example code for the "creating components" section of the tutorial
- * @author neil clayton
- */
-public class Home extends BasePage {
- public Object[] getArraySource() {
- return new Object[] {
- new Object[] { "This is", "a test", "of the array viewer" },
- new Object[] { "There should be nothing in the next two columns", null, null },
- new Object[] { new Integer(1234), Boolean.TRUE, this }
- };
- }
-}
diff --git a/examples/Tutorial2/src/tutorial/components/Home.page b/examples/Tutorial2/src/tutorial/components/Home.page
deleted file mode 100644
index 7ef348c..0000000
--- a/examples/Tutorial2/src/tutorial/components/Home.page
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: Home.page,v 1.6 2002/05/13 14:00:37 scornflake Exp $ -->
-<!DOCTYPE page-specification PUBLIC
- "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_3.dtd">
-
-<page-specification class="tutorial.components.Home">
-
- <component id="viewer" type="ArrayViewer">
- <static-binding name="heading">Array Viewer Example!</static-binding>
- <binding name="source" expression="getArraySource()"/>
- </component>
-
-</page-specification>
diff --git a/examples/Tutorial2/src/tutorial/events/EventHandling.application b/examples/Tutorial2/src/tutorial/events/EventHandling.application
deleted file mode 100644
index 18457bf..0000000
--- a/examples/Tutorial2/src/tutorial/events/EventHandling.application
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: HelloWorld.application,v 1.9 2002/08/09 11:54:40 hship Exp $ -->
-<!DOCTYPE application PUBLIC
- "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_3.dtd">
-
-<application name="Event Handling Tutorial" engine-class="net.sf.tapestry.engine.SimpleEngine">
- <page name="Home" specification-path="/tutorial/events/Home.page"/>
-</application>
diff --git a/examples/Tutorial2/src/tutorial/events/EventHandlingServlet.java b/examples/Tutorial2/src/tutorial/events/EventHandlingServlet.java
deleted file mode 100644
index 026e21d..0000000
--- a/examples/Tutorial2/src/tutorial/events/EventHandlingServlet.java
+++ /dev/null
@@ -1,32 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.events;
-
-import net.sf.tapestry.ApplicationServlet;
-
-/**
- * @version $Id: PageLinkingServlet.java,v 1.1 2002/10/03 15:49:02 scornflake Exp $
- * @author Howard Lewis Ship
- *
- **/
-
-public class EventHandlingServlet extends ApplicationServlet
-{
- protected String getApplicationSpecificationPath()
- {
- return "/tutorial/events/EventHandling.application";
- }
-
-}
\ No newline at end of file
diff --git a/examples/Tutorial2/src/tutorial/events/Home.html b/examples/Tutorial2/src/tutorial/events/Home.html
deleted file mode 100644
index a848fa7..0000000
--- a/examples/Tutorial2/src/tutorial/events/Home.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<html>
-<head>
- <title>Event Handling Tutorial</title>
-</head>
-<body>
-
-<h1>A simple Generic Link</h1>
-Click <span jwcid="google">here</span> to perform a search at Google.
-
-<h1>ActionLink and DirectLink</h1>
-<p>
-This <span jwcid="direct">direct link</span> will get the time of day,
-save it in a variable of the page, and show it underneath this paragraph
-using a InsertText component.
-</p>
-
-<p>
-This <span jwcid="action">action link</span> will do the same thing
-as the direct link (it uses the same listener method). If you would like
-to observe the difference in processing, run this example from a console
-prompt with debug enabled. The listener method will output the string
-<pre>"TIME LISTENER METHOD CALLED"</pre>. You will notice
-the place in the render cycle in which the method is called is different
-depending upon the link type that you click.
-</p>
-
-<p>
-<center>
-<span jwcid="timeofday">Time of day (or nothing) will go here</span>
-</center>
-
-</body>
-</html>
diff --git a/examples/Tutorial2/src/tutorial/events/Home.java b/examples/Tutorial2/src/tutorial/events/Home.java
deleted file mode 100644
index fc82769..0000000
--- a/examples/Tutorial2/src/tutorial/events/Home.java
+++ /dev/null
@@ -1,49 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.events;
-
-import java.text.DateFormat;
-import java.util.Date;
-
-import net.sf.tapestry.IRequestCycle;
-import net.sf.tapestry.RequestCycleException;
-import net.sf.tapestry.html.BasePage;
-
-/**
- * Example code for the event handling section of the tutorial
- * @author neil clayton
- */
-public class Home extends BasePage {
- /**
- * Called by both the "direct" and "action" components
- */
- public void timeListener(IRequestCycle cycle) throws RequestCycleException {
- System.err.println("TIME LISTENER METHOD CALLED");
- pageTime = DateFormat.getDateTimeInstance().format(new Date());
- }
-
- public String getPageTime() {
- return pageTime;
- }
-
- /**
- * @see net.sf.tapestry.AbstractPage#detach()
- */
- public void detach() {
- pageTime = null;
- }
-
- private String pageTime;
-}
diff --git a/examples/Tutorial2/src/tutorial/events/Home.page b/examples/Tutorial2/src/tutorial/events/Home.page
deleted file mode 100644
index 8c43ec0..0000000
--- a/examples/Tutorial2/src/tutorial/events/Home.page
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: Home.page,v 1.6 2002/05/13 14:00:37 scornflake Exp $ -->
-<!DOCTYPE page-specification PUBLIC
- "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_3.dtd">
-
-<page-specification class="tutorial.events.Home">
-
- <component id="google" type="GenericLink">
- <static-binding name="href">http://www.google.com</static-binding>
- </component>
-
- <component id="direct" type="DirectLink">
- <binding name="listener" expression="listeners.timeListener"/>
- <binding name="stateful" expression="false"/>
- </component>
-
- <component id="action" type="ActionLink">
- <binding name="listener" expression="listeners.timeListener"/>
- <binding name="stateful" expression="false"/>
- </component>
-
- <component id="timeofday" type="InsertText">
- <binding name="value" expression="pageTime"/>
- </component>
-</page-specification>
diff --git a/examples/Tutorial2/src/tutorial/forms/Forms.application b/examples/Tutorial2/src/tutorial/forms/Forms.application
deleted file mode 100644
index 9770fb1..0000000
--- a/examples/Tutorial2/src/tutorial/forms/Forms.application
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: HelloWorld.application,v 1.9 2002/08/09 11:54:40 hship Exp $ -->
-<!DOCTYPE application PUBLIC
- "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_3.dtd">
-
-<application name="Forms Tutorial" engine-class="net.sf.tapestry.engine.SimpleEngine">
- <property name="net.sf.tapestry.visit-class">tutorial.forms.VisitorState</property>
-
- <page name="Home" specification-path="/tutorial/forms/Home.page"/>
- <page name="Success" specification-path="/tutorial/forms/Success.page"/>
- <page name="Part1" specification-path="/tutorial/forms/Part1.page"/>
- <page name="Part2" specification-path="/tutorial/forms/Part2.page"/>
- <page name="Part3" specification-path="/tutorial/forms/Part3.page"/>
- <page name="Part4" specification-path="/tutorial/forms/Part4.page"/>
-</application>
diff --git a/examples/Tutorial2/src/tutorial/forms/FormsServlet.java b/examples/Tutorial2/src/tutorial/forms/FormsServlet.java
deleted file mode 100644
index 6db7519..0000000
--- a/examples/Tutorial2/src/tutorial/forms/FormsServlet.java
+++ /dev/null
@@ -1,30 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.forms;
-
-import net.sf.tapestry.ApplicationServlet;
-
-/**
- * @version $Id: SimpleServlet.java,v 1.9 2002/05/04 12:43:31 hship Exp $
- * @author Howard Lewis Ship
- *
- */
-public class FormsServlet extends ApplicationServlet
-{
- protected String getApplicationSpecificationPath()
- {
- return "/tutorial/forms/Forms.application";
- }
-}
\ No newline at end of file
diff --git a/examples/Tutorial2/src/tutorial/forms/Home.html b/examples/Tutorial2/src/tutorial/forms/Home.html
deleted file mode 100644
index 9585f93..0000000
--- a/examples/Tutorial2/src/tutorial/forms/Home.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<html>
-<head>
- <title>Forms Tutorial</title>
-</head>
-<body>
-
-<h1>Form Tutorial</h1>
-<p>The form tutorial is split up into a number of parts, which should allow
-you to follow the progression within the tutorial documentation.</p>
-
-The links below take you to pages that increase in complexity and usage
-of Tapestry form handling. The tutorial covers these in order:
-<ol>
- <li><span jwcid="page1">Simple Forms</span>
- <li><span jwcid="page2">Simple Forms, with simple server side validation</span>
- <li><span jwcid="page3">Simple Forms, with client & server side validation</span>
- <li><span jwcid="page4">Forms with smarter components</span>
-</ol>
-
-</body>
-</html>
diff --git a/examples/Tutorial2/src/tutorial/forms/Home.page b/examples/Tutorial2/src/tutorial/forms/Home.page
deleted file mode 100644
index 04d1a0f..0000000
--- a/examples/Tutorial2/src/tutorial/forms/Home.page
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: Home.page,v 1.6 2002/05/13 14:00:37 scornflake Exp $ -->
-<!DOCTYPE page-specification PUBLIC
- "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_3.dtd">
-
-<page-specification class="net.sf.tapestry.html.BasePage">
- <component id="page1" type="PageLink">
- <static-binding name="page">Part1</static-binding>
- </component>
-
- <component id="page2" type="PageLink">
- <static-binding name="page">Part2</static-binding>
- </component>
-
- <component id="page3" type="PageLink">
- <static-binding name="page">Part3</static-binding>
- </component>
-
- <component id="page4" type="PageLink">
- <static-binding name="page">Part4</static-binding>
- </component>
-</page-specification>
-
diff --git a/examples/Tutorial2/src/tutorial/forms/Part1.html b/examples/Tutorial2/src/tutorial/forms/Part1.html
deleted file mode 100644
index 950a118..0000000
--- a/examples/Tutorial2/src/tutorial/forms/Part1.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<html>
-<head>
- <title>Forms Tutorial</title>
-</head>
-<body>
-
-<h1>Form Tutorial</h1>
-Enter some fields on this page, and press the submit button.
-
-<form jwcid="form">
- <table>
- <tr>
- <td>Your name:</td>
- <td><input jwcid="name">Neil</input></td>
- </tr>
-
- <tr>
- <td>Date of birth:</td>
- <td><input jwcid="dateOfBirth"/></td>
- </tr>
-
- <tr>
- <td>Favourite colour:</td>
- <td><input jwcid="favColour"/></td>
- </tr>
-
- <tr>
- <td colspan=2><input type="submit" jwcid="submit"/></td>
- </tr>
- </table>
-</form>
-
-</body>
-</html>
diff --git a/examples/Tutorial2/src/tutorial/forms/Part1.java b/examples/Tutorial2/src/tutorial/forms/Part1.java
deleted file mode 100644
index f5f0b2e..0000000
--- a/examples/Tutorial2/src/tutorial/forms/Part1.java
+++ /dev/null
@@ -1,31 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.forms;
-
-import net.sf.tapestry.IRequestCycle;
-import net.sf.tapestry.RequestCycleException;
-import net.sf.tapestry.html.BasePage;
-
-/**
- * Example code for the forms part of Tutorial
- * @author Neil Clayton
- */
-public class Part1 extends BasePage {
- public void enterDetails(IRequestCycle cycle) throws RequestCycleException {
- // Submission has been performed. Do something here.
- cycle.setPage("Success");
- }
-
-}
diff --git a/examples/Tutorial2/src/tutorial/forms/Part1.page b/examples/Tutorial2/src/tutorial/forms/Part1.page
deleted file mode 100644
index 31253b4..0000000
--- a/examples/Tutorial2/src/tutorial/forms/Part1.page
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: Home.page,v 1.6 2002/05/13 14:00:37 scornflake Exp $ -->
-<!DOCTYPE page-specification PUBLIC
- "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_3.dtd">
-
-<page-specification class="tutorial.forms.Part1">
- <bean name="delegate" class="net.sf.tapestry.valid.ValidationDelegate"/>
-
- <component id="form" type="Form">
- <binding name="delegate" expression="beans.delegate"/>
- </component>
-
- <component id="name" type="TextField">
- <binding name="value" expression="visit.userName"/>
- </component>
-
- <component id="dateOfBirth" type="TextField">
- <binding name="value" expression="visit.dateOfBirthAsString"/>
- </component>
-
- <component id="favColour" type="TextField">
- <binding name="value" expression="visit.favoriteColour"/>
- </component>
-
- <component id="submit" type="Submit">
- <binding name="listener" expression="listeners.enterDetails"/>
- </component>
-</page-specification>
diff --git a/examples/Tutorial2/src/tutorial/forms/Part2.html b/examples/Tutorial2/src/tutorial/forms/Part2.html
deleted file mode 100644
index da70ecc..0000000
--- a/examples/Tutorial2/src/tutorial/forms/Part2.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<html>
-<head>
- <title>Forms Tutorial</title>
-</head>
-<body>
-
-<h1>Form Tutorial</h1>
-Enter some fields on this page, and press the submit button.
-
-<span jwcid="body">
- <form jwcid="form">
- <table>
- <tr>
- <td>Your name:</td>
- <td><input jwcid="name">Neil</input></td>
- </tr>
-
- <tr>
- <td>Date of birth:</td>
- <td><input jwcid="dateOfBirth"/></td>
- </tr>
-
- <tr>
- <td>Favourite colour:</td>
- <td><input jwcid="favColour"/></td>
- </tr>
-
- <tr>
- <td colspan=2><font color="red"><span jwcid="errors"/></font></td>
- </tr>
-
- <tr>
- <td colspan=2><input type="submit" jwcid="submit"/></td>
- </tr>
- </table>
- </form>
-</span>
-
-</body>
-</html>
diff --git a/examples/Tutorial2/src/tutorial/forms/Part2.java b/examples/Tutorial2/src/tutorial/forms/Part2.java
deleted file mode 100644
index caa8428..0000000
--- a/examples/Tutorial2/src/tutorial/forms/Part2.java
+++ /dev/null
@@ -1,38 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.forms;
-
-import net.sf.tapestry.IRequestCycle;
-import net.sf.tapestry.RequestCycleException;
-import net.sf.tapestry.html.BasePage;
-import net.sf.tapestry.valid.ValidationDelegate;
-
-/**
- * Example code for the forms part of Tutorial
- * @author Neil Clayton
- */
-public class Part2 extends BasePage {
- public void enterDetails(IRequestCycle cycle) throws RequestCycleException {
- // Submission has been performed. Validate the fields
- ValidationDelegate delegate = (ValidationDelegate)getBeans().getBean("delegate");
- if(delegate.getHasErrors()) {
- // there are errors
- return;
- }
-
- cycle.setPage("Success");
- }
-
-}
diff --git a/examples/Tutorial2/src/tutorial/forms/Part2.page b/examples/Tutorial2/src/tutorial/forms/Part2.page
deleted file mode 100644
index 1493c84..0000000
--- a/examples/Tutorial2/src/tutorial/forms/Part2.page
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: Home.page,v 1.6 2002/05/13 14:00:37 scornflake Exp $ -->
-<!DOCTYPE page-specification PUBLIC
- "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_3.dtd">
-
-<page-specification class="tutorial.forms.Part2">
- <bean name="delegate" class="net.sf.tapestry.valid.ValidationDelegate"/>
-
- <bean name="stringValidator" class="net.sf.tapestry.valid.StringValidator" lifecycle="page">
- <set-property name="required" expression="true"/>
- <set-property name="clientScriptingEnabled" expression="false"/>
- </bean>
-
- <component id="form" type="Form">
- <binding name="delegate" expression="beans.delegate"/>
- </component>
-
- <component id="body" type="Body"/>
-
- <component id="name" type="ValidField">
- <binding name="value" expression="visit.userName"/>
- <binding name="validator" expression='beans.stringValidator'/>
- <static-binding name="displayName">User name</static-binding>
- </component>
-
- <component id="dateOfBirth" type="ValidField">
- <binding name="value" expression="visit.dateOfBirthAsString"/>
- <binding name="validator" expression='beans.stringValidator'/>
- <static-binding name="displayName">Date of birth</static-binding>
- </component>
-
- <component id="favColour" type="ValidField">
- <binding name="value" expression="visit.favoriteColour"/>
- <binding name="validator" expression='beans.stringValidator'/>
- <static-binding name="displayName">Favorite colour</static-binding>
- </component>
-
- <component id="errors" type="Delegator">
- <binding name="delegate" expression="beans.delegate.firstError"/>
- </component>
-
- <component id="submit" type="Submit">
- <binding name="listener" expression="listeners.enterDetails"/>
- </component>
-</page-specification>
diff --git a/examples/Tutorial2/src/tutorial/forms/Part3.html b/examples/Tutorial2/src/tutorial/forms/Part3.html
deleted file mode 100644
index da70ecc..0000000
--- a/examples/Tutorial2/src/tutorial/forms/Part3.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<html>
-<head>
- <title>Forms Tutorial</title>
-</head>
-<body>
-
-<h1>Form Tutorial</h1>
-Enter some fields on this page, and press the submit button.
-
-<span jwcid="body">
- <form jwcid="form">
- <table>
- <tr>
- <td>Your name:</td>
- <td><input jwcid="name">Neil</input></td>
- </tr>
-
- <tr>
- <td>Date of birth:</td>
- <td><input jwcid="dateOfBirth"/></td>
- </tr>
-
- <tr>
- <td>Favourite colour:</td>
- <td><input jwcid="favColour"/></td>
- </tr>
-
- <tr>
- <td colspan=2><font color="red"><span jwcid="errors"/></font></td>
- </tr>
-
- <tr>
- <td colspan=2><input type="submit" jwcid="submit"/></td>
- </tr>
- </table>
- </form>
-</span>
-
-</body>
-</html>
diff --git a/examples/Tutorial2/src/tutorial/forms/Part3.page b/examples/Tutorial2/src/tutorial/forms/Part3.page
deleted file mode 100644
index e3aa8a3..0000000
--- a/examples/Tutorial2/src/tutorial/forms/Part3.page
+++ /dev/null
@@ -1,66 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: Home.page,v 1.6 2002/05/13 14:00:37 scornflake Exp $ -->
-<!DOCTYPE page-specification PUBLIC
- "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_3.dtd">
-
-<page-specification class="tutorial.forms.Part2">
- <bean name="delegate" class="net.sf.tapestry.valid.ValidationDelegate"/>
-
- <bean name="stringValidator" class="net.sf.tapestry.valid.StringValidator" lifecycle="page">
- <set-property name="required" expression="true"/>
- <set-property name="clientScriptingEnabled" expression="true"/>
- </bean>
-
- <bean name="dateValidator" class="net.sf.tapestry.valid.DateValidator" lifecycle="page">
- <set-property name="required" expression="true"/>
- <set-property name="clientScriptingEnabled" expression="true"/>
- </bean>
-
- <component id="form" type="Form">
- <binding name="delegate" expression="beans.delegate"/>
- </component>
-
- <component id="body" type="Body"/>
-
- <component id="name" type="ValidField">
- <binding name="value" expression="visit.userName"/>
- <binding name="validator" expression='beans.stringValidator'/>
- <static-binding name="displayName">User name</static-binding>
- </component>
-
- <component id="dateOfBirth" type="ValidField">
- <binding name="value" expression="visit.dateOfBirth"/>
- <binding name="validator" expression='beans.dateValidator'/>
- <static-binding name="displayName">Date of birth</static-binding>
- </component>
-
- <component id="favColour" type="ValidField">
- <binding name="value" expression="visit.favoriteColour"/>
- <binding name="validator" expression='beans.stringValidator'/>
- <static-binding name="displayName">Favorite colour</static-binding>
- </component>
-
- <component id="errors" type="Delegator">
- <binding name="delegate" expression="beans.delegate.firstError"/>
- </component>
-
- <component id="submit" type="Submit">
- <binding name="listener" expression="listeners.enterDetails"/>
- </component>
-</page-specification>
diff --git a/examples/Tutorial2/src/tutorial/forms/Part4.html b/examples/Tutorial2/src/tutorial/forms/Part4.html
deleted file mode 100644
index 7c499bb..0000000
--- a/examples/Tutorial2/src/tutorial/forms/Part4.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<span jwcid="shell">
- <span jwcid="body">
- <h1>Form Tutorial</h1>
- Enter some fields on this page, and press the submit button.
-
- <form jwcid="form">
- <table>
- <tr>
- <td>Your name:</td>
- <td><input jwcid="name">Neil</input></td>
- </tr>
-
- <tr>
- <td>Date of birth:</td>
- <td><input jwcid="dateOfBirth"/></td>
- </tr>
-
- <tr>
- <td>Favourite colour:</td>
- <td><input jwcid="favColour"/></td>
- </tr>
-
- <tr>
- <td colspan=2><font color="red"><span jwcid="errors"/></font></td>
- </tr>
-
- <tr>
- <td colspan=2><input type="submit" jwcid="submit"/></td>
- </tr>
- </table>
- </form>
- </span>
-</span>
\ No newline at end of file
diff --git a/examples/Tutorial2/src/tutorial/forms/Part4.java b/examples/Tutorial2/src/tutorial/forms/Part4.java
deleted file mode 100644
index f7a64d4..0000000
--- a/examples/Tutorial2/src/tutorial/forms/Part4.java
+++ /dev/null
@@ -1,51 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.forms;
-
-import net.sf.tapestry.IRequestCycle;
-import net.sf.tapestry.RequestCycleException;
-import net.sf.tapestry.form.IPropertySelectionModel;
-import net.sf.tapestry.form.StringPropertySelectionModel;
-import net.sf.tapestry.html.BasePage;
-import net.sf.tapestry.valid.ValidationDelegate;
-
-/**
- * Example code for the forms part of Tutorial
- * @author Neil Clayton
- */
-public class Part4 extends BasePage
-{
- public void enterDetails(IRequestCycle cycle) throws RequestCycleException
- {
- // Submission has been performed. Validate the fields
- ValidationDelegate delegate = (ValidationDelegate) getBeans().getBean("delegate");
- if (delegate.getHasErrors())
- {
- // there are errors
- return;
- }
-
- cycle.setPage("Success");
- }
-
- /**
- * Returns a set of colours that the user may choose from.
- */
- public static IPropertySelectionModel getColourModel()
- {
- return new StringPropertySelectionModel(
- new String[]{"Black", "Fiji Blue", "Green", "Red", "Yellow"});
- }
-}
diff --git a/examples/Tutorial2/src/tutorial/forms/Part4.page b/examples/Tutorial2/src/tutorial/forms/Part4.page
deleted file mode 100644
index fca0dfe..0000000
--- a/examples/Tutorial2/src/tutorial/forms/Part4.page
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: Home.page,v 1.6 2002/05/13 14:00:37 scornflake Exp $ -->
-<!DOCTYPE page-specification PUBLIC
- "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_3.dtd">
-
-<page-specification class="tutorial.forms.Part4">
- <bean name="delegate" class="net.sf.tapestry.valid.ValidationDelegate"/>
-
- <bean name="stringValidator" class="net.sf.tapestry.valid.StringValidator" lifecycle="page">
- <set-property name="required" expression="true"/>
- <set-property name="clientScriptingEnabled" expression="true"/>
- </bean>
-
- <component id="form" type="Form">
- <binding name="delegate" expression="beans.delegate"/>
- </component>
-
- <component id="shell" type="Shell">
- <static-binding name="title">Smarter Components</static-binding>
- </component>
- <component id="body" type="Body"/>
-
- <component id="name" type="ValidField">
- <binding name="value" expression="visit.userName"/>
- <binding name="validator" expression='beans.stringValidator'/>
- <static-binding name="displayName">User name</static-binding>
- </component>
-
- <component id="dateOfBirth" type="DatePicker">
- <binding name="value" expression="visit.dateOfBirth"/>
- </component>
-
- <component id="favColour" type="PropertySelection">
- <binding name="value" expression="visit.favoriteColour"/>
- <binding name="model" expression="@tutorial.forms.Part4@getColourModel()"/>
- </component>
-
- <component id="errors" type="Delegator">
- <binding name="delegate" expression="beans.delegate.firstError"/>
- </component>
-
- <component id="submit" type="Submit">
- <binding name="listener" expression="listeners.enterDetails"/>
- </component>
-</page-specification>
diff --git a/examples/Tutorial2/src/tutorial/forms/Success.html b/examples/Tutorial2/src/tutorial/forms/Success.html
deleted file mode 100644
index 431efb1..0000000
--- a/examples/Tutorial2/src/tutorial/forms/Success.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<html>
-<head>
- <title>Forms Tutorial [success!]</title>
-</head>
-<body>
-
-<h1>Submission Was OK!</h1>
-<p>You have successfully submitted the form page. The validation (if present)
-on the form has passed. This page shows you the values of the <b>Visit</b> object,
-which was used to hold the field values that you entered on the form:</p>
-
-<center>
-<table border=1 width="70%">
-<tr>
-<td>
-
-<ul>
- <li>Name: <span jwcid="name"/>
- <li>Date of Birth: <span jwcid="dob"/>
- <li>Favorite Colour: <span jwcid="colour"/>
-</ul>
-
-</td>
-</tr>
-</table>
-</center>
-
-</body>
-</html>
diff --git a/examples/Tutorial2/src/tutorial/forms/Success.page b/examples/Tutorial2/src/tutorial/forms/Success.page
deleted file mode 100644
index ac76257..0000000
--- a/examples/Tutorial2/src/tutorial/forms/Success.page
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: Home.page,v 1.6 2002/05/13 14:00:37 scornflake Exp $ -->
-<!DOCTYPE page-specification PUBLIC
- "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_3.dtd">
-
-<page-specification class="net.sf.tapestry.html.BasePage">
- <component id="name" type="InsertText">
- <binding name="value" expression="visit.userName"/>
- </component>
-
- <component id="dob" type="InsertText">
- <binding name="value" expression="visit.dateOfBirth"/>
- </component>
-
- <component id="colour" type="InsertText">
- <binding name="value" expression="visit.favoriteColour"/>
- </component>
-</page-specification>
diff --git a/examples/Tutorial2/src/tutorial/forms/VisitorState.java b/examples/Tutorial2/src/tutorial/forms/VisitorState.java
deleted file mode 100644
index 46944fe..0000000
--- a/examples/Tutorial2/src/tutorial/forms/VisitorState.java
+++ /dev/null
@@ -1,95 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.forms;
-
-import java.io.Serializable;
-import java.text.DateFormat;
-import java.text.ParseException;
-import java.util.Date;
-
-/**
- * Used to capture the state of each user within the web application
- * @author Neil Clayton
- */
-public class VisitorState implements Serializable
-{
- /**
- * Returns the dateOfBirth.
- * @return String
- */
- public Date getDateOfBirth()
- {
- return dateOfBirth;
- }
-
- public String getDateOfBirthAsString()
- {
- return DateFormat.getDateInstance().format(dateOfBirth);
- }
-
- /**
- * Returns the favoriteColour.
- * @return String
- */
- public String getFavoriteColour()
- {
- return favoriteColour;
- }
-
- /**
- * Returns the name.
- * @return String
- */
- public String getUserName()
- {
- return userName;
- }
-
- /**
- * Sets the dateOfBirth.
- * @param dateOfBirth The dateOfBirth to set
- */
- public void setDateOfBirth(Date dateOfBirth)
- {
- this.dateOfBirth = dateOfBirth;
- }
-
- /**
- * Sets the favoriteColour.
- * @param favoriteColour The favoriteColour to set
- */
- public void setFavoriteColour(String favoriteColour)
- {
- this.favoriteColour = favoriteColour;
- }
-
- public void setDateOfBirthAsString(String newDOB) throws ParseException
- {
- dateOfBirth = DateFormat.getDateInstance().parse(newDOB);
- }
-
- /**
- * Sets the name.
- * @param name The name to set
- */
- public void setUserName(String name)
- {
- this.userName = name;
- }
-
- private String userName;
- private Date dateOfBirth = new Date(0);
- private String favoriteColour;
-}
diff --git a/examples/Tutorial2/src/tutorial/hello/HelloWorld.application b/examples/Tutorial2/src/tutorial/hello/HelloWorld.application
deleted file mode 100644
index d42ee49..0000000
--- a/examples/Tutorial2/src/tutorial/hello/HelloWorld.application
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: HelloWorld.application,v 1.9 2002/08/09 11:54:40 hship Exp $ -->
-<!DOCTYPE application PUBLIC
- "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_3.dtd">
-
-<application name="Hello World Tutorial" engine-class="net.sf.tapestry.engine.SimpleEngine">
- <page name="Home" specification-path="/tutorial/hello/Home.page"/>
-</application>
diff --git a/examples/Tutorial2/src/tutorial/hello/HelloWorldServlet.java b/examples/Tutorial2/src/tutorial/hello/HelloWorldServlet.java
deleted file mode 100644
index 7b8988b..0000000
--- a/examples/Tutorial2/src/tutorial/hello/HelloWorldServlet.java
+++ /dev/null
@@ -1,32 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.hello;
-
-import net.sf.tapestry.ApplicationServlet;
-
-/**
- * @version $Id$
- * @author Howard Lewis Ship
- *
- **/
-
-public class HelloWorldServlet extends ApplicationServlet
-{
- protected String getApplicationSpecificationPath()
- {
- return "/tutorial/hello/HelloWorld.application";
- }
-
-}
\ No newline at end of file
diff --git a/examples/Tutorial2/src/tutorial/hello/Home.html b/examples/Tutorial2/src/tutorial/hello/Home.html
deleted file mode 100644
index e4389d1..0000000
--- a/examples/Tutorial2/src/tutorial/hello/Home.html
+++ /dev/null
@@ -1,13 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<html>
-<head>
- <title>Hello World</title>
-</head>
-<body>
-Welcome to your first <b>Tapestry Application</b>
-<p>
-<h1>
- <span jwcid="insertSomeText">This text will be replaced by Tapesty</span>
-</h1>
-</body>
-</html>
diff --git a/examples/Tutorial2/src/tutorial/hello/Home.java b/examples/Tutorial2/src/tutorial/hello/Home.java
deleted file mode 100644
index f34b567..0000000
--- a/examples/Tutorial2/src/tutorial/hello/Home.java
+++ /dev/null
@@ -1,30 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.hello;
-
-import net.sf.tapestry.html.BasePage;
-
-/**
- * @version $Id$
- * @author Neil Clayton
- *
- **/
-public class Home extends BasePage
-{
- public String getSomeText()
- {
- return "It's a brave new world!";
- }
-}
\ No newline at end of file
diff --git a/examples/Tutorial2/src/tutorial/hello/Home.page b/examples/Tutorial2/src/tutorial/hello/Home.page
deleted file mode 100644
index 5de9d31..0000000
--- a/examples/Tutorial2/src/tutorial/hello/Home.page
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: Home.page,v 1.6 2002/05/13 14:00:37 scornflake Exp $ -->
-<!DOCTYPE page-specification PUBLIC
- "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_3.dtd">
-
-<page-specification class="tutorial.hello.Home">
- <component id="insertSomeText" type="Insert">
- <binding name="value" expression="someText"/>
- </component>
-</page-specification>
diff --git a/examples/Tutorial2/src/tutorial/pagelinking/Home.html b/examples/Tutorial2/src/tutorial/pagelinking/Home.html
deleted file mode 100644
index 4df7e90..0000000
--- a/examples/Tutorial2/src/tutorial/pagelinking/Home.html
+++ /dev/null
@@ -1,14 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<html>
-<head>
- <title>Page Linking Tutorial</title>
-</head>
-<body>
-
-<h1>The first page</h1>
-The link shown will take you to page two of this application.
-
-Click <a href="#" jwcid="page2">here</a> for the second page!
-
-</body>
-</html>
diff --git a/examples/Tutorial2/src/tutorial/pagelinking/Home.page b/examples/Tutorial2/src/tutorial/pagelinking/Home.page
deleted file mode 100644
index fd5adb4..0000000
--- a/examples/Tutorial2/src/tutorial/pagelinking/Home.page
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: Home.page,v 1.6 2002/05/13 14:00:37 scornflake Exp $ -->
-<!DOCTYPE page-specification PUBLIC
- "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_3.dtd">
-
-<page-specification class="net.sf.tapestry.html.BasePage">
- <component id="page2" type="PageLink">
- <static-binding name="page">SecondPage</static-binding>
- </component>
-</page-specification>
diff --git a/examples/Tutorial2/src/tutorial/pagelinking/PageLinking.application b/examples/Tutorial2/src/tutorial/pagelinking/PageLinking.application
deleted file mode 100644
index 6ec1cd8..0000000
--- a/examples/Tutorial2/src/tutorial/pagelinking/PageLinking.application
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: HelloWorld.application,v 1.9 2002/08/09 11:54:40 hship Exp $ -->
-<!DOCTYPE application PUBLIC
- "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_3.dtd">
-
-<application name="Page Linking Tutorial" engine-class="net.sf.tapestry.engine.SimpleEngine">
- <page name="Home" specification-path="/tutorial/pagelinking/Home.page"/>
- <page name="SecondPage" specification-path="/tutorial/pagelinking/SecondPage.page"/>
-</application>
diff --git a/examples/Tutorial2/src/tutorial/pagelinking/PageLinkingServlet.java b/examples/Tutorial2/src/tutorial/pagelinking/PageLinkingServlet.java
deleted file mode 100644
index b4bbe9e..0000000
--- a/examples/Tutorial2/src/tutorial/pagelinking/PageLinkingServlet.java
+++ /dev/null
@@ -1,32 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.pagelinking;
-
-import net.sf.tapestry.ApplicationServlet;
-
-/**
- * @version $Id$
- * @author Howard Lewis Ship
- *
- **/
-
-public class PageLinkingServlet extends ApplicationServlet
-{
- protected String getApplicationSpecificationPath()
- {
- return "/tutorial/pagelinking/PageLinking.application";
- }
-
-}
\ No newline at end of file
diff --git a/examples/Tutorial2/src/tutorial/pagelinking/SecondPage.html b/examples/Tutorial2/src/tutorial/pagelinking/SecondPage.html
deleted file mode 100644
index 3de573a..0000000
--- a/examples/Tutorial2/src/tutorial/pagelinking/SecondPage.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<html>
-<head>
- <title>Page Linking Tutorial (page 2)</title>
-</head>
-<body>
-<h1>Page Two</h1>
-
-<center>
-<table border=0>
- <tr><th>Well, here we are! Let have some Action!</th></tr>
- <tr><td><hr></td></tr>
- <tr><td>Click <span jwcid="homePage">here</span> to go back to the home page.</td></tr>
- <tr><td>Click <span jwcid="linkListener">here</span> to invoke a <b>DirectLink</b> listener</td></tr>
- <form jwcid="form">
- <tr><td>Click <span jwcid="buttonListener">here</span> to invoke a <b>Submit</b> listener</td></tr>
- </form>
-
- <!-- This part shows the 'result' of the listener -->
- <tr><td><hr></td></tr>
- <tr><td><span jwcid="result"/></td></tr>
-
-</body>
-</html>
diff --git a/examples/Tutorial2/src/tutorial/pagelinking/SecondPage.java b/examples/Tutorial2/src/tutorial/pagelinking/SecondPage.java
deleted file mode 100644
index 0535772..0000000
--- a/examples/Tutorial2/src/tutorial/pagelinking/SecondPage.java
+++ /dev/null
@@ -1,45 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.pagelinking;
-
-import net.sf.tapestry.html.BasePage;
-import net.sf.tapestry.IRequestCycle;
-import net.sf.tapestry.RequestCycleException;
-
-/**
- * Provides the listeners and a place to store a simple 'result' string
- * that can be shown back to the user.
- */
-public class SecondPage extends BasePage {
- public void linkListener(IRequestCycle cycle) throws RequestCycleException {
- result = "The link listener was called - which is a good thing.";
- }
-
- public void buttonListener(IRequestCycle cycle) throws RequestCycleException {
- result = "The submit listener was called - which is also a good thing.";
- }
-
- public String getResult() {
- return result;
- }
-
- /** Clean up */
- public void detach() {
- super.detach();
- result = null;
- }
-
- private String result;
-}
diff --git a/examples/Tutorial2/src/tutorial/pagelinking/SecondPage.page b/examples/Tutorial2/src/tutorial/pagelinking/SecondPage.page
deleted file mode 100644
index baa94ea..0000000
--- a/examples/Tutorial2/src/tutorial/pagelinking/SecondPage.page
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: Home.page,v 1.6 2002/05/13 14:00:37 scornflake Exp $ -->
-<!DOCTYPE page-specification PUBLIC
- "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_3.dtd">
-
-<page-specification class="tutorial.pagelinking.SecondPage">
- <component id="homePage" type="PageLink">
- <static-binding name="page">Home</static-binding>
- </component>
-
- <component id="form" type="Form">
- <binding name="stateful" expression="false"/>
- </component>
-
- <component id="result" type="InsertText">
- <binding name="value" expression="result"/>
- </component>
-
- <component id="linkListener" type="DirectLink">
- <binding name="listener" expression="listeners.linkListener"/>
- <binding name="stateful" expression="false"/>
- </component>
-
- <component id="buttonListener" type="Submit">
- <binding name="listener" expression="listeners.buttonListener"/>
- </component>
-</page-specification>
diff --git a/examples/Tutorial2/src/tutorial/pagetypes/Home.html b/examples/Tutorial2/src/tutorial/pagetypes/Home.html
deleted file mode 100644
index 41cbc8a..0000000
--- a/examples/Tutorial2/src/tutorial/pagetypes/Home.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<html>
-<head>
- <title>PageTypes Example</title>
-</head>
-<body>
-
-<h1>PageTypes Example</h1>
-The links below allow you to force the exceptions that will show you the standard
-pages in Tapestry. Right now, you're looking at a <b>Home<b/> page, with a few
-<b>DirectLink</b> components on it.
-
-<ol>
- <li><a jwcid="staleSession">StaleSession</a>
- <li><a jwcid="staleLink">StateLink</a>
- <li><a jwcid="exceptionLink">Exception</a>
- <li><a jwcid="niceException">Friendly exception page</a>
-</ol>
-
-</body>
-</html>
diff --git a/examples/Tutorial2/src/tutorial/pagetypes/Home.java b/examples/Tutorial2/src/tutorial/pagetypes/Home.java
deleted file mode 100644
index c912559..0000000
--- a/examples/Tutorial2/src/tutorial/pagetypes/Home.java
+++ /dev/null
@@ -1,58 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.pagetypes;
-
-import net.sf.tapestry.html.BasePage;
-import net.sf.tapestry.IRequestCycle;
-import net.sf.tapestry.RequestCycleException;
-import net.sf.tapestry.StaleSessionException;
-import net.sf.tapestry.StaleLinkException;
-import org.apache.log4j.Logger;
-
-import javax.swing.*;
-
-/**
- * @version $Id: Home.java,v 1.3 2003/01/13 03:33:40 hlship Exp $
- * @author Neil Clayton
- *
- **/
-public class Home extends BasePage {
- public void niceExceptionPage(IRequestCycle cycle) throws RequestCycleException {
- // This will cause the NewException page to be shown, due to the overrides
- // we have placed in the Engine used in this example
- throw new RequestCycleException("This exception is intentionally thrown by the link handler",
- this,
- new MyException("this is an intentional runtime exception"));
- }
-
- public void forceStaleSession(IRequestCycle cycle) throws RequestCycleException {
- log.warn("throwing stale session exception");
- throw new StaleSessionException("The session has expired", getPage());
- }
-
- public void forceStaleLink(IRequestCycle cycle) throws RequestCycleException {
- log.warn("throwing stale link exception");
- throw new StaleLinkException("This link is STALE!", this);
- }
-
- public void forceException(IRequestCycle cycle) throws RequestCycleException {
- log.warn("throwing some other exception");
- throw new RequestCycleException("This exception is intentionally thrown by the link handler",
- this,
- new RuntimeException("this is an intentional runtime exception"));
- }
-
- private static final Logger log = Logger.getLogger(Home.class);
-}
\ No newline at end of file
diff --git a/examples/Tutorial2/src/tutorial/pagetypes/Home.page b/examples/Tutorial2/src/tutorial/pagetypes/Home.page
deleted file mode 100644
index f4cd153..0000000
--- a/examples/Tutorial2/src/tutorial/pagetypes/Home.page
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: Home.page,v 1.6 2002/05/13 14:00:37 scornflake Exp $ -->
-<!DOCTYPE page-specification PUBLIC
- "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_3.dtd">
-
-<page-specification class="tutorial.pagetypes.Home">
- <component id="staleSession" type="DirectLink">
- <binding name="listener" expression="listeners.forceStaleSession"/>
- <binding name="stateful" expression="false"/>
- </component>
- <component id="staleLink" type="DirectLink">
- <binding name="listener" expression="listeners.forceStaleLink"/>
- <binding name="stateful" expression="false"/>
- </component>
- <component id="exceptionLink" type="DirectLink">
- <binding name="listener" expression="listeners.forceException"/>
- <binding name="stateful" expression="false"/>
- </component>
- <component id="niceException" type="DirectLink">
- <binding name="listener" expression="listeners.niceExceptionPage"/>
- <binding name="stateful" expression="false"/>
- </component>
-</page-specification>
diff --git a/examples/Tutorial2/src/tutorial/pagetypes/MyException.java b/examples/Tutorial2/src/tutorial/pagetypes/MyException.java
deleted file mode 100644
index 35b33ff..0000000
--- a/examples/Tutorial2/src/tutorial/pagetypes/MyException.java
+++ /dev/null
@@ -1,24 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.pagetypes;
-
-/**
- * This is a sample exception class
- */
-public class MyException extends Exception {
- public MyException(String message) {
- super(message);
- }
-}
diff --git a/examples/Tutorial2/src/tutorial/pagetypes/NewException.html b/examples/Tutorial2/src/tutorial/pagetypes/NewException.html
deleted file mode 100644
index 7ff202d..0000000
--- a/examples/Tutorial2/src/tutorial/pagetypes/NewException.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<html>
-<head>
- <title>An Error has occurred with the Application</title>
-</head>
-
-<body>
-<center>
- <h1>We have 'issues' ... </h1>
-
- <h2><font color="red"><span jwcid="errorMessage"/></font></h2>
-
- <p>
- We don't think we'll be doing that any time soon, since our system
- appears to have some kind of problem. We would appreciate it if you
- could <a href="mailto:errors@neverneverland.net">email us</a> a copy
- of this page.
- </p>
-</center>
-</body>
-
-</html>
\ No newline at end of file
diff --git a/examples/Tutorial2/src/tutorial/pagetypes/NewException.java b/examples/Tutorial2/src/tutorial/pagetypes/NewException.java
deleted file mode 100644
index b4ffc76..0000000
--- a/examples/Tutorial2/src/tutorial/pagetypes/NewException.java
+++ /dev/null
@@ -1,39 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.pagetypes;
-
-import net.sf.tapestry.IBinding;
-import net.sf.tapestry.html.BasePage;
-
-public class NewException extends BasePage {
- public Throwable getException() {
- return exception;
- }
-
- public void setException(Throwable exception) {
- this.exception = exception;
- }
-
- public IBinding getExceptionBinding() {
- return exceptionBinding;
- }
-
- public void setExceptionBinding(IBinding exceptionBinding) {
- this.exceptionBinding = exceptionBinding;
- }
-
- private IBinding exceptionBinding;
- private Throwable exception;
-}
diff --git a/examples/Tutorial2/src/tutorial/pagetypes/NewException.page b/examples/Tutorial2/src/tutorial/pagetypes/NewException.page
deleted file mode 100644
index 2acfeda..0000000
--- a/examples/Tutorial2/src/tutorial/pagetypes/NewException.page
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: Home.page,v 1.6 2002/05/13 14:00:37 scornflake Exp $ -->
-<!DOCTYPE page-specification PUBLIC
- "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_3.dtd">
-
-<page-specification class="tutorial.pagetypes.NewException">
- <component id="errorMessage" type="InsertText">
- <binding name="value" expression="exception.message"/>
- </component>
-</page-specification>
\ No newline at end of file
diff --git a/examples/Tutorial2/src/tutorial/pagetypes/PageTypes.application b/examples/Tutorial2/src/tutorial/pagetypes/PageTypes.application
deleted file mode 100644
index eec4058..0000000
--- a/examples/Tutorial2/src/tutorial/pagetypes/PageTypes.application
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: HelloWorld.application,v 1.9 2002/08/09 11:54:40 hship Exp $ -->
-<!DOCTYPE application PUBLIC
- "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_3.dtd">
-
-<application name="PageTypes Demo" engine-class="tutorial.pagetypes.PageTypesEngine">
- <page name="Home" specification-path="/tutorial/pagetypes/Home.page"/>
- <page name="NewException" specification-path="/tutorial/pagetypes/NewException.page"/>
-</application>
diff --git a/examples/Tutorial2/src/tutorial/pagetypes/PageTypesEngine.java b/examples/Tutorial2/src/tutorial/pagetypes/PageTypesEngine.java
deleted file mode 100644
index a59a530..0000000
--- a/examples/Tutorial2/src/tutorial/pagetypes/PageTypesEngine.java
+++ /dev/null
@@ -1,64 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.pagetypes;
-
-import net.sf.tapestry.*;
-import net.sf.tapestry.engine.SimpleEngine;
-import net.sf.tapestry.util.prop.OgnlUtils;
-
-import javax.servlet.ServletException;
-
-/**
- * Provides the ability to handle an exception in a different manner
- */
-public class PageTypesEngine extends SimpleEngine {
- private static final String NEW_EXCEPTION_PAGE = "NewException";
-
- protected void activateExceptionPage(IRequestCycle cycle, ResponseOutputStream output, Throwable cause)
- throws ServletException {
- RequestCycleException cycleE = (RequestCycleException)cause;
- if (cycleE.getRootCause() instanceof MyException) {
- handleNewException(cycle, output, cycleE.getRootCause());
- } else {
- super.activateExceptionPage(cycle, output, cause);
- }
- }
-
- /**
- * This standard exception handling block is what is found in
- * the SimpleEngine. This is not normal. Usually, if you are overriding
- * the Exception pae, you just have to provide a new page - not override the engine
- * to do it. This is done only because I want to show both the standard and new
- * exception pages in the same application.
- */
- protected void handleNewException(IRequestCycle cycle, ResponseOutputStream output, Throwable cause) throws ServletException {
- try {
- IPage exceptionPage = cycle.getPage(NEW_EXCEPTION_PAGE);
- OgnlUtils.set("exception", getResourceResolver(), exceptionPage, cause);
- cycle.setPage(exceptionPage);
- renderResponse(cycle, output);
- } catch (Throwable ex) {
- // Worst case scenario. The exception page itself is broken, leaving
- // us with no option but to write the cause to the output.
- reportException(Tapestry.getString("AbstractEngine.unable-to-process-client-request"), cause);
-
- // Also, write the exception thrown when redendering the exception
- // page, so that can get fixed as well.
- reportException(Tapestry.getString("AbstractEngine.unable-to-present-exception-page"), ex);
- // And throw the exception.
- throw new ServletException(ex.getMessage(), ex);
- }
- }
-}
diff --git a/examples/Tutorial2/src/tutorial/pagetypes/PageTypesServlet.java b/examples/Tutorial2/src/tutorial/pagetypes/PageTypesServlet.java
deleted file mode 100644
index 6abc861..0000000
--- a/examples/Tutorial2/src/tutorial/pagetypes/PageTypesServlet.java
+++ /dev/null
@@ -1,32 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.pagetypes;
-
-import net.sf.tapestry.ApplicationServlet;
-
-/**
- * @version $Id: HelloWorldServlet.java,v 1.3 2003/01/13 03:33:41 hlship Exp $
- * @author Howard Lewis Ship
- *
- **/
-
-public class PageTypesServlet extends ApplicationServlet
-{
- protected String getApplicationSpecificationPath()
- {
- return "/tutorial/pagetypes/PageTypes.application";
- }
-
-}
\ No newline at end of file
diff --git a/examples/Tutorial2/src/tutorial/simple/Home.html b/examples/Tutorial2/src/tutorial/simple/Home.html
deleted file mode 100644
index 00caa07..0000000
--- a/examples/Tutorial2/src/tutorial/simple/Home.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<html>
-<head>
- <title>Simple</title>
-</head>
-<body>
-
-This application demonstrates some dynamic behavior using Tapestry components.
-
-<p>The current date and time is: <b><span jwcid="insertDate">Current Date</span></b>
-
-<p>Click <a jwcid="refresh">here</a> to refresh.
-
-</body>
-</html>
diff --git a/examples/Tutorial2/src/tutorial/simple/Home.java b/examples/Tutorial2/src/tutorial/simple/Home.java
deleted file mode 100644
index c94f50f..0000000
--- a/examples/Tutorial2/src/tutorial/simple/Home.java
+++ /dev/null
@@ -1,33 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.simple;
-
-import java.util.Date;
-
-import net.sf.tapestry.html.BasePage;
-
-/**
- * @version $Id: Home.java,v 1.8 2002/05/04 12:43:31 hship Exp $
- * @author Howard Lewis Ship
- *
- **/
-
-public class Home extends BasePage
-{
- public Date getCurrentDate()
- {
- return new Date();
- }
-}
\ No newline at end of file
diff --git a/examples/Tutorial2/src/tutorial/simple/Home.page b/examples/Tutorial2/src/tutorial/simple/Home.page
deleted file mode 100644
index 96a29aa..0000000
--- a/examples/Tutorial2/src/tutorial/simple/Home.page
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: Home.jwc,v 1.4 2001/05/22 15:24:16 hship Exp $ -->
-<!DOCTYPE page-specification PUBLIC "-//Howard Lewis Ship//Tapestry Specification 1.3//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_2.dtd">
-
-<page-specification class="tutorial.simple.Home">
-
- <component id="insertDate" type="Insert">
- <binding name="value" expression="currentDate"/>
- </component>
-
- <component id="refresh" type="PageLink">
- <static-binding name="page">Home</static-binding>
- </component>
-
-</page-specification>
diff --git a/examples/Tutorial2/src/tutorial/simple/Simple.application b/examples/Tutorial2/src/tutorial/simple/Simple.application
deleted file mode 100644
index 3a719c2..0000000
--- a/examples/Tutorial2/src/tutorial/simple/Simple.application
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2004 The Apache Software Foundation
-
- 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.
--->
-<!-- $Id: Simple.application,v 1.8 2002/07/27 15:11:59 hship Exp $ -->
-<!DOCTYPE application PUBLIC
- "-//Howard Lewis Ship//Tapestry Specification 1.2//EN"
- "http://tapestry.sf.net/dtd/Tapestry_1_2.dtd">
-
-<application name="Simple Tutorial" engine-class="net.sf.tapestry.engine.SimpleEngine">
- <page name="Home" specification-path="/tutorial/simple/Home.page"/>
-</application>
diff --git a/examples/Tutorial2/src/tutorial/simple/SimpleServlet.java b/examples/Tutorial2/src/tutorial/simple/SimpleServlet.java
deleted file mode 100644
index ceedd8d..0000000
--- a/examples/Tutorial2/src/tutorial/simple/SimpleServlet.java
+++ /dev/null
@@ -1,31 +0,0 @@
-// Copyright 2004 The Apache Software Foundation
-//
-// 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 tutorial.simple;
-
-import net.sf.tapestry.ApplicationServlet;
-
-/**
- * @version $Id: SimpleServlet.java,v 1.9 2002/05/04 12:43:31 hship Exp $
- * @author Howard Lewis Ship
- *
- */
-
-public class SimpleServlet extends ApplicationServlet
-{
- protected String getApplicationSpecificationPath()
- {
- return "/tutorial/simple/Simple.application";
- }
-}
\ No newline at end of file
diff --git a/examples/Tutorial2/web/WEB-INF/web.xml b/examples/Tutorial2/web/WEB-INF/web.xml
deleted file mode 100644
index ee1052f..0000000
--- a/examples/Tutorial2/web/WEB-INF/web.xml
+++ /dev/null
@@ -1,101 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
- "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
-<web-app>
- <display-name>Tapestry Tutorial</display-name>
-
- <!-- A typical Tapestry WAR will have exactly one servlet. The Tutorial is actually
- several seperate Tapestry application bundled together. The framework allows for
- this (you'll notice that each object stored in the ServletContext has a unique
- name to avoid collisions between sibling Tapestry applications.
-
- It's a good idea to load the servlet on startup; this helps get the large
- number of Tapestry classes loaded.
-
- -->
-
- <servlet>
- <servlet-name>hello</servlet-name>
- <servlet-class>tutorial.hello.HelloWorldServlet</servlet-class>
- <load-on-startup>0</load-on-startup>
- </servlet>
-
- <servlet>
- <servlet-name>pagelinking</servlet-name>
- <servlet-class>tutorial.pagelinking.PageLinkingServlet</servlet-class>
- <load-on-startup>0</load-on-startup>
- </servlet>
-
- <servlet>
- <servlet-name>forms</servlet-name>
- <servlet-class>tutorial.forms.FormsServlet</servlet-class>
- <load-on-startup>0</load-on-startup>
- </servlet>
-
- <servlet>
- <servlet-name>events</servlet-name>
- <servlet-class>tutorial.events.EventHandlingServlet</servlet-class>
- <load-on-startup>0</load-on-startup>
- </servlet>
-
- <servlet>
- <servlet-name>components</servlet-name>
- <servlet-class>tutorial.components.ComponentsServlet</servlet-class>
- <load-on-startup>0</load-on-startup>
- </servlet>
-
- <servlet>
- <servlet-name>pagetypes</servlet-name>
- <servlet-class>tutorial.pagetypes.PageTypesServlet</servlet-class>
- <load-on-startup>0</load-on-startup>
- </servlet>
-
- <servlet>
- <servlet-name>assets</servlet-name>
- <servlet-class>tutorial.assets.AssetsServlet</servlet-class>
- <load-on-startup>0</load-on-startup>
- </servlet>
-
- <servlet-mapping>
- <servlet-name>hello</servlet-name>
- <url-pattern>/hello</url-pattern>
- </servlet-mapping>
-
- <servlet-mapping>
- <servlet-name>pagelinking</servlet-name>
- <url-pattern>/pagelinking</url-pattern>
- </servlet-mapping>
-
- <servlet-mapping>
- <servlet-name>forms</servlet-name>
- <url-pattern>/forms</url-pattern>
- </servlet-mapping>
-
- <servlet-mapping>
- <servlet-name>events</servlet-name>
- <url-pattern>/events</url-pattern>
- </servlet-mapping>
-
- <servlet-mapping>
- <servlet-name>components</servlet-name>
- <url-pattern>/components</url-pattern>
- </servlet-mapping>
-
- <servlet-mapping>
- <servlet-name>pagetypes</servlet-name>
- <url-pattern>/pagetypes</url-pattern>
- </servlet-mapping>
-
- <servlet-mapping>
- <servlet-name>assets</servlet-name>
- <url-pattern>/assets</url-pattern>
- </servlet-mapping>
-
- <session-config>
- <session-timeout>15</session-timeout>
- </session-config>
-
- <welcome-file-list>
- <welcome-file>index.html</welcome-file>
- </welcome-file-list>
-</web-app>
diff --git a/examples/Tutorial2/web/images/poweredby.jpg b/examples/Tutorial2/web/images/poweredby.jpg
deleted file mode 100644
index 7d2d2d9..0000000
--- a/examples/Tutorial2/web/images/poweredby.jpg
+++ /dev/null
Binary files differ
diff --git a/examples/Tutorial2/web/index.html b/examples/Tutorial2/web/index.html
deleted file mode 100644
index 617b791..0000000
--- a/examples/Tutorial2/web/index.html
+++ /dev/null
@@ -1,58 +0,0 @@
-<html>
- <head>
- <title>Tapestry Tutorial Web Application</title>
- </head>
-
- <body bgcolor="#839cd1">
- <table border=0 class=""><tr><td>
- <table border=0 width="90%" align="center">
- <tr>
- <th align="center"><img border=0 src="images/poweredby.jpg" alt="Powered By Tapestry"/></th>
- <th align="center" nowrap><h1>Tapestry Tutorial Application</h1></th>
- </tr>
-
- <tr>
- <td nowrap><a href="hello">Hello World</a></td>
- <td>The simplest of applications</td>
- </tr>
-
- <tr bgcolor="silver">
- <td nowrap><a href="pagelinking">Simple Page Linking</a></td>
- <td>An example of linking pages together using the <b>PageLink</b> component</td>
- </tr>
-
- <tr>
- <td nowrap><a href="forms">Forms Examples</a></td>
- <td>Some more complex examples showing the use of text fields,
- drop down boxes, form validation and actions.</td>
- </tr>
-
- <tr bgcolor="silver">
- <td nowrap><a href="events">Event Handling Examples</a></td>
- <td>Further example on the handling of actions - either link based
- or form based</td>
- </tr>
-
- <tr>
- <td nowrap><a href="components">Creating a Comonent</a></td>
- <td>How to create components, with properties, that can
- be reused across pages. This section also introduces
- property bindings.</td>
- </tr>
-
- <tr bgcolor="silver">
- <td nowrap><a href="pagetypes">Explore different page types</a></td>
- <td>Describes the various types of special pages in Tapestry,
- and provides an example of how to override the standard
- Exception page.</td>
- </tr>
-
- <tr>
- <td nowrap><a href="assets">Simple Page, with an Asset (heading)</a></td>
- <td>Very simple example of Assets</td>
- </tr>
- </table>
- </td></tr></table>
- </ul>
- </body>
-</html>
\ No newline at end of file
diff --git a/framework/src/org/apache/tapestry/enhance/DefaultComponentClassEnhancer.java b/framework/src/org/apache/tapestry/enhance/DefaultComponentClassEnhancer.java
index 0076f4f..46c38df 100644
--- a/framework/src/org/apache/tapestry/enhance/DefaultComponentClassEnhancer.java
+++ b/framework/src/org/apache/tapestry/enhance/DefaultComponentClassEnhancer.java
@@ -85,22 +85,18 @@
public Class getEnhancedClass(IComponentSpecification specification, String className)
{
- Class result = getCachedClass(specification);
-
- if (result == null)
- {
- synchronized (this)
+ synchronized (specification)
{
- result = getCachedClass(specification);
+ Class result = getCachedClass(specification);
+
if (result == null)
{
result = constructComponentClass(specification, className);
storeCachedClass(specification, result);
}
- }
- }
- return result;
+ return result;
+ }
}
protected void storeCachedClass(IComponentSpecification specification, Class cachedClass)
diff --git a/framework/src/org/apache/tapestry/enhance/javassist/EnhancedClassFactory.java b/framework/src/org/apache/tapestry/enhance/javassist/EnhancedClassFactory.java
index dd55939..d858219 100644
--- a/framework/src/org/apache/tapestry/enhance/javassist/EnhancedClassFactory.java
+++ b/framework/src/org/apache/tapestry/enhance/javassist/EnhancedClassFactory.java
@@ -101,12 +101,9 @@
public CtClass getObjectType(String type)
{
- CtClass result = getClassMapping().getType(type);
- if (result == null)
- {
synchronized (this) {
- result = getClassMapping().getType(type);
+ CtClass result = getClassMapping().getType(type);
if (result == null)
{
@@ -120,10 +117,9 @@
throw new CodeGenerationException(e);
}
}
+ return result;
}
- }
- return result;
}
diff --git a/framework/src/org/apache/tapestry/util/LocalizedContextResourceFinder.java b/framework/src/org/apache/tapestry/util/LocalizedContextResourceFinder.java
index 20f3c2c..ee11fbf 100644
--- a/framework/src/org/apache/tapestry/util/LocalizedContextResourceFinder.java
+++ b/framework/src/org/apache/tapestry/util/LocalizedContextResourceFinder.java
@@ -54,8 +54,16 @@
public LocalizedResource resolve(String contextPath, Locale locale)
{
int dotx = contextPath.lastIndexOf('.');
- String basePath = contextPath.substring(0, dotx);
- String suffix = contextPath.substring(dotx);
+ String basePath = null;
+ String suffix = null;
+ // This handles assets without extensions - still allows them to be localized.
+ if (dotx > -1) {
+ basePath = contextPath.substring(0, dotx);
+ suffix = contextPath.substring(dotx);
+ } else {
+ basePath = contextPath;
+ suffix = "";
+ }
LocalizedNameGenerator generator = new LocalizedNameGenerator(basePath, locale, suffix);
diff --git a/status.xml b/status.xml
index 6dc2a78..d3fa527 100644
--- a/status.xml
+++ b/status.xml
@@ -11,6 +11,7 @@
<person name="Tsvetelin Saykov" id="TS"/>
<person name="Neil Clayton" id="NC"/>
<person name="Paul Ferraro" id="PF"/>
+ <person name="Jesse Kuhnert" id="JK" />
<!-- Retired -->
<person name="Malcom Edgar" id="ME"/>
<!-- Add more people here -->
@@ -126,6 +127,21 @@
<changes>
<release version="3.0.4" date="unreleased">
<action type="fix" dev="GL" fixes-bug="TAPESTRY-431"> Fixed TemplateParser throws an exception and stops parsing when duplicate attributes are found in a tag. </action>
+ <action type="fix" dev="JK" fixes-bug="TAPESTRY-877" due-to="Brian K. Wallace">
+ Javassist url was incorrect.
+ </action>
+ <action type="remove" dev="JK" fixes-bug="TAPESTRY-878" due-to="Brian K. Wallace" >
+ Removed old tutorial example.
+ </action>
+ <action type="fix" dev="JK" fixes-bug="TAPESTRY-806" due-to="Nick Westgate" >
+ Double checked locking bug prevents use of multi processor environments (efficiently).
+ </action>
+ <action type="fix" dev="JK" fixes-bug="TAPESTRY-241" due-to="Kurtis Williams" >
+ binding for convertor needed to be inherited-binding
+ </action>
+ <action type="fix" dev="JK" fixes-bug="TAPESTRY-193" due-to="Brian K. Wallace" >
+ AssetService not resolving file prefixes correctly.
+ </action>
</release>
<release version="3.0.3" date="Mar 26 2005">
<action type="fix" dev="PF" fixes-bug="TAPESTRY-278"> Fixes security flaw in asset service. </action>