You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by jk...@apache.org on 2006/08/25 16:26:26 UTC
svn commit: r436811 - in /tapestry/tapestry4/trunk:
tapestry-examples/TimeTracker/src/java/org/apache/tapestry/timetracker/page/
tapestry-framework/src/java/org/apache/tapestry/dojo/form/
tapestry-framework/src/java/org/apache/tapestry/util/io/ tapestr...
Author: jkuhnert
Date: Fri Aug 25 07:26:24 2006
New Revision: 436811
URL: http://svn.apache.org/viewvc?rev=436811&view=rev
Log:
Fixes for TAPESTRY-1074. DataSqueezer was getting index out of bounds exceptions when given empty string
inputs.
Modified:
tapestry/tapestry4/trunk/tapestry-examples/TimeTracker/src/java/org/apache/tapestry/timetracker/page/TaskEntryPage.java
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/dojo/form/Autocompleter.java
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/util/io/DataSqueezerImpl.java
tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/junit/utils/TestDataSqueezer.java
tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/services/TestDataSqueezer.java
Modified: tapestry/tapestry4/trunk/tapestry-examples/TimeTracker/src/java/org/apache/tapestry/timetracker/page/TaskEntryPage.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-examples/TimeTracker/src/java/org/apache/tapestry/timetracker/page/TaskEntryPage.java?rev=436811&r1=436810&r2=436811&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-examples/TimeTracker/src/java/org/apache/tapestry/timetracker/page/TaskEntryPage.java (original)
+++ tapestry/tapestry4/trunk/tapestry-examples/TimeTracker/src/java/org/apache/tapestry/timetracker/page/TaskEntryPage.java Fri Aug 25 07:26:24 2006
@@ -107,6 +107,12 @@
cycle.getResponseBuilder().updateComponent("feedbackBlock");
}
+ @EventListener(events = "onblur", targets = "descriptionField", submitForm = "taskForm")
+ public void descriptionChanged(IRequestCycle cycle)
+ {
+ cycle.getResponseBuilder().updateComponent("taskForm");
+ }
+
public void linkUpdateClicked()
{
}
Modified: tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/dojo/form/Autocompleter.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/dojo/form/Autocompleter.java?rev=436811&r1=436810&r2=436811&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/dojo/form/Autocompleter.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/dojo/form/Autocompleter.java Fri Aug 25 07:26:24 2006
@@ -148,10 +148,13 @@
{
String value = cycle.getParameter(getName());
- Object object = getModel().getValue(getDataSqueezer().unsqueeze(value));
+ Object object = null;
try
{
+ if (value != null && value.length() > 0)
+ object = getModel().getValue(getDataSqueezer().unsqueeze(value));
+
getValidatableFieldSupport().validate(this, writer, cycle, object);
setValue(object);
Modified: tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/util/io/DataSqueezerImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/util/io/DataSqueezerImpl.java?rev=436811&r1=436810&r2=436811&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/util/io/DataSqueezerImpl.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/util/io/DataSqueezerImpl.java Fri Aug 25 07:26:24 2006
@@ -160,7 +160,9 @@
if (string.equals(NULL_PREFIX))
return null;
-
+ else if (string.length() <= 0)
+ return null;
+
int offset = string.charAt(0) - FIRST_ADAPTOR_OFFSET;
if (offset >= 0 && offset < _adaptorByPrefix.length)
Modified: tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/junit/utils/TestDataSqueezer.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/junit/utils/TestDataSqueezer.java?rev=436811&r1=436810&r2=436811&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/junit/utils/TestDataSqueezer.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/junit/utils/TestDataSqueezer.java Fri Aug 25 07:26:24 2006
@@ -128,6 +128,13 @@
attempt(new Character('Z'), "cZ");
}
+ public void test_Empty_Value()
+ {
+ Object output = ds.unsqueeze("");
+
+ assert output == null;
+ }
+
public void testString()
{
attempt("Now is the time for all good men ...", "SNow is the time for all good men ...");
Modified: tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/services/TestDataSqueezer.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/services/TestDataSqueezer.java?rev=436811&r1=436810&r2=436811&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/services/TestDataSqueezer.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/services/TestDataSqueezer.java Fri Aug 25 07:26:24 2006
@@ -25,11 +25,14 @@
@Test
public class TestDataSqueezer extends BaseComponentTestCase {
- public void testPipeline() throws Exception {
+ public void testPipeline()
+ throws Exception
+ {
final Registry reg = buildFrameworkRegistry( "squeezer-pipeline.xml" );
final DataSqueezer squeezer = ( DataSqueezer )reg.getService( DataSqueezer.class );
+
final String squeezedValue = squeezer.squeeze( "Hello, World!" );
+
assertTrue( squeezedValue.startsWith( "dummy:" ) );
-
}
}