You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by hl...@apache.org on 2006/11/16 18:05:44 UTC
svn commit: r475816 - in /tapestry/tapestry5/tapestry-core/trunk/src:
main/java/org/apache/tapestry/
main/java/org/apache/tapestry/corelib/components/
main/java/org/apache/tapestry/corelib/mixins/
main/java/org/apache/tapestry/internal/model/ main/java...
Author: hlship
Date: Thu Nov 16 09:05:42 2006
New Revision: 475816
URL: http://svn.apache.org/viewvc?view=rev&rev=475816
Log:
Add mixin for rendering informal parameters.
Added:
tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/corelib/mixins/
tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/corelib/mixins/RenderInformals.java
tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/structure/InternalComponentResourcesImplTest.java
Modified:
tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/ComponentResources.java
tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/corelib/components/AbstractField.java
tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/corelib/components/ActionLink.java
tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/corelib/components/Form.java
tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/model/MutableComponentModelImpl.java
tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/structure/InternalComponentResourcesImpl.java
tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/test/InternalBaseTestCase.java
tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/integration/IntegrationTests.java
tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/integration/app1/pages/ActionPage.java
tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/model/MutableComponentModelImplTest.java
tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app1/components/Border.html
tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app1/pages/ActionPage.html
tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app1/pages/SimpleForm.html
Modified: tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/ComponentResources.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/ComponentResources.java?view=diff&rev=475816&r1=475815&r2=475816
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/ComponentResources.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/ComponentResources.java Thu Nov 16 09:05:42 2006
@@ -53,4 +53,11 @@
/** Returns true if the named parameter is bound, false if not. */
boolean isBound(String parameterName);
+ /**
+ * Indentifies all parameters that are not formal parameters and writes each as a
+ * attribute/value pair into the current element of the markup writer.
+ *
+ * @param writer
+ */
+ void renderInformalParameters(MarkupWriter writer);
}
Modified: tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/corelib/components/AbstractField.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/corelib/components/AbstractField.java?view=diff&rev=475816&r1=475815&r2=475816
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/corelib/components/AbstractField.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/corelib/components/AbstractField.java Thu Nov 16 09:05:42 2006
@@ -22,15 +22,24 @@
import org.apache.tapestry.annotations.ComponentClass;
import org.apache.tapestry.annotations.Environmental;
import org.apache.tapestry.annotations.Inject;
+import org.apache.tapestry.annotations.Mixin;
import org.apache.tapestry.annotations.SetupRender;
+import org.apache.tapestry.corelib.mixins.RenderInformals;
import org.apache.tapestry.services.FormSupport;
import org.apache.tapestry.services.PageRenderSupport;
import org.apache.tapestry.services.WebRequest;
-/** Provides initialization of the clientId and elementName properties. */
+/**
+ * Provides initialization of the clientId and elementName properties. In addition, adds the
+ * {@link RenderInformals} mixin.
+ */
@ComponentClass
public abstract class AbstractField implements Field
{
+ @SuppressWarnings("unused")
+ @Mixin
+ private RenderInformals _renderInformals;
+
static class SetupAction implements ComponentAction<AbstractField>, Serializable
{
private static final long serialVersionUID = 2690270808212097020L;
Modified: tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/corelib/components/ActionLink.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/corelib/components/ActionLink.java?view=diff&rev=475816&r1=475815&r2=475816
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/corelib/components/ActionLink.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/corelib/components/ActionLink.java Thu Nov 16 09:05:42 2006
@@ -25,7 +25,9 @@
import org.apache.tapestry.annotations.BeginRender;
import org.apache.tapestry.annotations.ComponentClass;
import org.apache.tapestry.annotations.Inject;
+import org.apache.tapestry.annotations.Mixin;
import org.apache.tapestry.annotations.Parameter;
+import org.apache.tapestry.corelib.mixins.RenderInformals;
/**
* Component that triggers an action on the server with a subsequent full page refresh.
@@ -45,6 +47,10 @@
@Inject
private ComponentResources _resources;
+
+ @SuppressWarnings("unused")
+ @Mixin
+ private RenderInformals _renderInformals;
@BeginRender
void begin(MarkupWriter writer)
Modified: tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/corelib/components/Form.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/corelib/components/Form.java?view=diff&rev=475816&r1=475815&r2=475816
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/corelib/components/Form.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/corelib/components/Form.java Thu Nov 16 09:05:42 2006
@@ -30,8 +30,10 @@
import org.apache.tapestry.annotations.ComponentClass;
import org.apache.tapestry.annotations.Environmental;
import org.apache.tapestry.annotations.Inject;
+import org.apache.tapestry.annotations.Mixin;
import org.apache.tapestry.annotations.OnEvent;
import org.apache.tapestry.annotations.SetupRender;
+import org.apache.tapestry.corelib.mixins.RenderInformals;
import org.apache.tapestry.dom.Element;
import org.apache.tapestry.internal.util.AcceptVoidEventHandler;
import org.apache.tapestry.internal.util.Base64ObjectInputStream;
@@ -85,6 +87,11 @@
private Base64ObjectOutputStream _actions;
+
+ @SuppressWarnings("unused")
+ @Mixin
+ private RenderInformals _renderInformals;
+
@SetupRender
void setup()
{
Added: tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/corelib/mixins/RenderInformals.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/corelib/mixins/RenderInformals.java?view=auto&rev=475816
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/corelib/mixins/RenderInformals.java (added)
+++ tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/corelib/mixins/RenderInformals.java Thu Nov 16 09:05:42 2006
@@ -0,0 +1,36 @@
+package org.apache.tapestry.corelib.mixins;
+
+import org.apache.tapestry.ComponentResources;
+import org.apache.tapestry.MarkupWriter;
+import org.apache.tapestry.annotations.AfterRenderTemplate;
+import org.apache.tapestry.annotations.BeforeRenderTemplate;
+import org.apache.tapestry.annotations.BeginRender;
+import org.apache.tapestry.annotations.ComponentClass;
+import org.apache.tapestry.annotations.Inject;
+import org.apache.tapestry.annotations.PostBeginRender;
+import org.apache.tapestry.annotations.SupportsInformalParameters;
+
+/**
+ * Used to render out all informal parameters, in the {@link PostBeginRender} phase.
+ * <p>
+ * This mixin can be used with components that render a single tag inside the {@link BeginRender}
+ * phase. RenderInformals will activate during the PostBeginRender phase to write additional
+ * attributes, from the informal parameters, into the active element.
+ * <p>
+ * If you want this behavior, but need to render more than a single tag, then implement render phase
+ * methods for the {@link BeforeRenderTemplate} and {@link AfterRenderTemplate} phases. Use those
+ * phases to write the additional elements and close them.
+ */
+@ComponentClass
+@SupportsInformalParameters
+public class RenderInformals
+{
+ @Inject
+ private ComponentResources _resources;
+
+ @PostBeginRender
+ void write(MarkupWriter writer)
+ {
+ _resources.renderInformalParameters(writer);
+ }
+}
Modified: tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/model/MutableComponentModelImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/model/MutableComponentModelImpl.java?view=diff&rev=475816&r1=475815&r2=475816
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/model/MutableComponentModelImpl.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/model/MutableComponentModelImpl.java Thu Nov 16 09:05:42 2006
@@ -237,10 +237,17 @@
public List<String> getMixinClassNames()
{
- if (_mixinClassNames == null)
- return Collections.emptyList();
-
- return Collections.unmodifiableList(_mixinClassNames);
+ List<String> result = newList();
+
+ if (_mixinClassNames != null)
+ result.addAll(_mixinClassNames);
+
+ if (_parentModel != null)
+ result.addAll(_parentModel.getMixinClassNames());
+
+ Collections.sort(result);
+
+ return result;
}
public void enableSupportsInformalParameters()
Modified: tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/structure/InternalComponentResourcesImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/structure/InternalComponentResourcesImpl.java?view=diff&rev=475816&r1=475815&r2=475816
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/structure/InternalComponentResourcesImpl.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/structure/InternalComponentResourcesImpl.java Thu Nov 16 09:05:42 2006
@@ -22,6 +22,7 @@
import org.apache.tapestry.Binding;
import org.apache.tapestry.ComponentEventHandler;
import org.apache.tapestry.Link;
+import org.apache.tapestry.MarkupWriter;
import org.apache.tapestry.internal.InternalComponentResources;
import org.apache.tapestry.internal.TapestryException;
import org.apache.tapestry.internal.services.Instantiator;
@@ -216,6 +217,20 @@
public Component getMixinByClassName(String mixinClassName)
{
return _element.getMixinByClassName(mixinClassName);
+ }
+
+ public void renderInformalParameters(MarkupWriter writer)
+ {
+ if (_bindings == null)
+ return;
+
+ for (String name : _bindings.keySet())
+ {
+ if (_componentModel.getParameterModel(name) != null)
+ continue;
+
+ writer.attributes(name, readParameter(name, String.class));
+ }
}
}
Modified: tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/test/InternalBaseTestCase.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/test/InternalBaseTestCase.java?view=diff&rev=475816&r1=475815&r2=475816
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/test/InternalBaseTestCase.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/test/InternalBaseTestCase.java Thu Nov 16 09:05:42 2006
@@ -34,6 +34,7 @@
import org.apache.tapestry.internal.parser.TemplateToken;
import org.apache.tapestry.internal.services.ComponentInstantiatorSource;
import org.apache.tapestry.internal.services.ComponentTemplateSource;
+import org.apache.tapestry.internal.services.Instantiator;
import org.apache.tapestry.internal.services.PageElementFactory;
import org.apache.tapestry.internal.services.PageLoader;
import org.apache.tapestry.internal.services.PagePool;
@@ -58,6 +59,7 @@
import org.apache.tapestry.services.TapestryModule;
import org.apache.tapestry.services.WebRequest;
import org.apache.tapestry.test.BaseTestCase;
+import org.easymock.EasyMock;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.AfterSuite;
import org.testng.annotations.BeforeSuite;
@@ -402,5 +404,21 @@
{
elementFactory.newRootComponentElement(isA(Page.class), eq(className));
setReturnValue(rootElement);
+ }
+
+ protected final void train_getModel(Instantiator ins, ComponentModel model)
+ {
+ ins.getModel();
+ setReturnValue(model);
+ }
+
+ protected final Instantiator newInstantiator(Component component)
+ {
+ Instantiator ins = newMock(Instantiator.class);
+
+ ins.newInstance(EasyMock.isA(InternalComponentResources.class));
+ setReturnValue(component);
+
+ return ins;
}
}
Modified: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/integration/IntegrationTests.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/integration/IntegrationTests.java?view=diff&rev=475816&r1=475815&r2=475816
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/integration/IntegrationTests.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/integration/IntegrationTests.java Thu Nov 16 09:05:42 2006
@@ -225,7 +225,7 @@
clickAndWait("link=" + i);
String body = _selenium.getBodyText();
-
+
assertTrue(body.contains("You chose: " + i));
}
}
Modified: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/integration/app1/pages/ActionPage.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/integration/app1/pages/ActionPage.java?view=diff&rev=475816&r1=475815&r2=475816
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/integration/app1/pages/ActionPage.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/integration/app1/pages/ActionPage.java Thu Nov 16 09:05:42 2006
@@ -51,4 +51,9 @@
{
return _value;
}
+
+ public String getLinkClass()
+ {
+ return _index == _value ? "selected" : null;
+ }
}
Modified: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/model/MutableComponentModelImplTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/model/MutableComponentModelImplTest.java?view=diff&rev=475816&r1=475815&r2=475816
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/model/MutableComponentModelImplTest.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/model/MutableComponentModelImplTest.java Thu Nov 16 09:05:42 2006
@@ -19,6 +19,7 @@
import org.apache.commons.logging.Log;
import org.apache.tapestry.Resource;
import org.apache.tapestry.internal.test.InternalBaseTestCase;
+import org.apache.tapestry.model.ComponentModel;
import org.apache.tapestry.model.MutableComponentModel;
import org.apache.tapestry.model.MutableEmbeddedComponentModel;
import org.apache.tapestry.model.ParameterModel;
@@ -514,5 +515,42 @@
verify();
}
-
+
+ @Test
+ public void get_mixin_class_names_with_no_mixins()
+ {
+ Resource r = newResource();
+ Log log = newLog();
+
+ replay();
+ ComponentModel model = new MutableComponentModelImpl(CLASS_NAME, log, r, null);
+
+ assertTrue(model.getMixinClassNames().isEmpty());
+
+ verify();
+ }
+
+ @Test
+ public void get_mixin_class_names_mixes_with_parent_model()
+ {
+ Resource r = newResource();
+ Log log = newLog();
+
+ replay();
+
+ MutableComponentModel parent = new MutableComponentModelImpl(CLASS_NAME, log, r, null);
+
+ parent.addMixinClassName("Wilma");
+
+ MutableComponentModel child = new MutableComponentModelImpl(CLASS_NAME, log, r, parent);
+
+ child.addMixinClassName("Fred");
+ child.addMixinClassName("Barney");
+
+ assertEquals(child.getMixinClassNames(), Arrays.asList("Barney", "Fred", "Wilma"));
+
+ verify();
+
+ }
+
}
Added: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/structure/InternalComponentResourcesImplTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/structure/InternalComponentResourcesImplTest.java?view=auto&rev=475816
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/structure/InternalComponentResourcesImplTest.java (added)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/structure/InternalComponentResourcesImplTest.java Thu Nov 16 09:05:42 2006
@@ -0,0 +1,100 @@
+package org.apache.tapestry.internal.structure;
+
+import org.apache.tapestry.Binding;
+import org.apache.tapestry.MarkupWriter;
+import org.apache.tapestry.internal.InternalComponentResources;
+import org.apache.tapestry.internal.services.Instantiator;
+import org.apache.tapestry.internal.test.InternalBaseTestCase;
+import org.apache.tapestry.ioc.services.TypeCoercer;
+import org.apache.tapestry.model.ComponentModel;
+import org.apache.tapestry.model.ParameterModel;
+import org.apache.tapestry.runtime.Component;
+import org.testng.annotations.Test;
+
+public class InternalComponentResourcesImplTest extends InternalBaseTestCase
+{
+ @Test
+ public void render_informal_parameters_no_bindings()
+ {
+ ComponentPageElement element = newComponentPageElement();
+ Component component = newComponent();
+ Instantiator ins = newInstantiator(component);
+ MarkupWriter writer = newMarkupWriter();
+ TypeCoercer coercer = newTypeCoercer();
+ ComponentModel model = newComponentModel();
+
+ train_getModel(ins, model);
+
+ replay();
+
+ InternalComponentResources resources = new InternalComponentResourcesImpl(element, ins,
+ coercer);
+
+ resources.renderInformalParameters(writer);
+
+ verify();
+ }
+
+ @Test
+ public void render_informal_parameters_skips_formal_parameters()
+ {
+ ComponentPageElement element = newComponentPageElement();
+ Component component = newComponent();
+ Instantiator ins = newInstantiator(component);
+ MarkupWriter writer = newMarkupWriter();
+ TypeCoercer coercer = newTypeCoercer();
+ ComponentModel model = newComponentModel();
+ ParameterModel pmodel = newParameterModel();
+ Binding binding = newBinding();
+
+ train_getModel(ins, model);
+
+ train_getParameterModel(model, "fred", pmodel);
+
+ replay();
+
+ InternalComponentResources resources = new InternalComponentResourcesImpl(element, ins,
+ coercer);
+
+ resources.addParameter("fred", binding);
+
+ resources.renderInformalParameters(writer);
+
+ verify();
+ }
+
+ @Test
+ public void render_an_informal_parameter()
+ {
+ ComponentPageElement element = newComponentPageElement();
+ Component component = newComponent();
+ Instantiator ins = newInstantiator(component);
+ MarkupWriter writer = newMarkupWriter();
+ TypeCoercer coercer = newTypeCoercer();
+ ComponentModel model = newComponentModel();
+ Binding binding = newBinding();
+ Object rawValue = new Object();
+ String convertedValue = "*converted*";
+
+ train_getModel(ins, model);
+
+ train_getParameterModel(model, "fred", null);
+
+ train_get(binding, rawValue);
+
+ train_coerce(coercer, rawValue, String.class, convertedValue);
+
+ writer.attributes("fred", convertedValue);
+
+ replay();
+
+ InternalComponentResources resources = new InternalComponentResourcesImpl(element, ins,
+ coercer);
+
+ resources.addParameter("fred", binding);
+
+ resources.renderInformalParameters(writer);
+
+ verify();
+ }
+}
Modified: tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app1/components/Border.html
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app1/components/Border.html?view=diff&rev=475816&r1=475815&r2=475816
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app1/components/Border.html (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app1/components/Border.html Thu Nov 16 09:05:42 2006
@@ -1,6 +1,13 @@
<html xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd">
<head>
<title>Tapestry Integration Test Application #1</title>
+ <style>
+A.selected
+{
+ font-size: large;
+ font-weight: bold;
+}
+ </style>
</head>
<body>
<t:body/>
Modified: tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app1/pages/ActionPage.html
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app1/pages/ActionPage.html?view=diff&rev=475816&r1=475815&r2=475816
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app1/pages/ActionPage.html (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app1/pages/ActionPage.html Thu Nov 16 09:05:42 2006
@@ -4,7 +4,7 @@
<p>
<t:comp type="Count" end="10" value="prop:index">
- <t:comp id="choose" type="ActionLink" context="prop:index">${index}</t:comp>
+ <t:comp id="choose" type="ActionLink" context="prop:index" class="prop:linkClass">${index}</t:comp>
</t:comp>
</p>
Modified: tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app1/pages/SimpleForm.html
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app1/pages/SimpleForm.html?view=diff&rev=475816&r1=475815&r2=475816
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app1/pages/SimpleForm.html (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app1/pages/SimpleForm.html Thu Nov 16 09:05:42 2006
@@ -5,7 +5,7 @@
<t:comp type="Form">
- <t:comp type="TextField" id="email" value="prop:email"/>
+ <t:comp type="TextField" id="email" value="prop:email" size="50"/>
<br/>