Author: hlship
Date: Tue Nov 1 23:13:03 2011
New Revision: 1196383
URL: http://svn.apache.org/viewvc?rev=1196383&view=rev
Log:
Remove class ServicesMessages
Removed:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ServicesMessages.java
tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/internal/services/ServicesStrings.properties
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/AjaxComponentEventRequestHandler.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ApplicationStatePersistenceStrategySourceImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/AssetResourceLocatorImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/AssetSourceImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/BeanBlockSourceImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ClientPersistentFieldStorageImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentClassResolverImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentEventImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentEventRequestHandlerImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentInstanceResultProcessor.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentInstantiatorSourceImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/DefaultRequestExceptionHandler.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/DocumentLinkerImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/EventImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/FieldValidatorSourceImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/LiteralPropertyConduit.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MarkupWriterImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MessagesSourceImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PageElementFactoryImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PageMarkupRendererImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PropertyConduitSourceImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/RenderQueueImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ResourceStreamerImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/SaxTemplateParser.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/StaticFilesFilter.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/TemplateParserImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/ClientPersistentFieldStorageImplTest.java
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/ComponentEventImplTest.java
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/TemplateParserImplTest.java
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/AjaxComponentEventRequestHandler.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/AjaxComponentEventRequestHandler.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/AjaxComponentEventRequestHandler.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/AjaxComponentEventRequestHandler.java
Tue Nov 1 23:13:03 2011
@@ -1,4 +1,4 @@
-// Copyright 2007, 2008, 2010 The Apache Software Foundation
+// Copyright 2007, 2008, 2010, 2011 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.
@@ -111,7 +111,7 @@ public class AjaxComponentEventRequestHa
.triggerContextEvent(parameters.getEventType(),
parameters.getEventContext(), callback);
if (!handled)
- throw new
TapestryException(ServicesMessages.eventNotHandled(element,
parameters.getEventType()), element,
+ throw new TapestryException(String.format("Request event '%s' (on
component %s) was not handled; you must provide a matching event handler method
in the component or in one of its containers.", parameters.getEventType(),
element.getCompleteId()), element,
null);
environment.pop(TrackableComponentEventCallback.class);
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ApplicationStatePersistenceStrategySourceImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ApplicationStatePersistenceStrategySourceImpl.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ApplicationStatePersistenceStrategySourceImpl.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ApplicationStatePersistenceStrategySourceImpl.java
Tue Nov 1 23:13:03 2011
@@ -1,4 +1,4 @@
-// Copyright 2007 The Apache Software Foundation
+// Copyright 2007, 2011 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.
@@ -14,6 +14,7 @@
package org.apache.tapestry5.internal.services;
+import org.apache.tapestry5.ioc.internal.util.InternalUtils;
import org.apache.tapestry5.services.ApplicationStatePersistenceStrategy;
import org.apache.tapestry5.services.ApplicationStatePersistenceStrategySource;
@@ -34,9 +35,8 @@ public class ApplicationStatePersistence
ApplicationStatePersistenceStrategy result = configuration.get(name);
if (result == null)
- throw new
RuntimeException(ServicesMessages.missingApplicationStatePersistenceStrategy(
- name,
- configuration.keySet()));
+ throw new RuntimeException(String.format("No application state
persistence strategy is available with name '%s'. Available strategies: %s.",
name, InternalUtils
+ .joinSorted(configuration.keySet())));
return result;
}
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/AssetResourceLocatorImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/AssetResourceLocatorImpl.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/AssetResourceLocatorImpl.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/AssetResourceLocatorImpl.java
Tue Nov 1 23:13:03 2011
@@ -89,7 +89,7 @@ public class AssetResourceLocatorImpl im
// TODO: Perhaps we should send an exception here, so that the caller
can decide
// to send the error. I'm not happy with this.
- response.sendError(HttpServletResponse.SC_FORBIDDEN,
ServicesMessages.wrongAssetDigest(result));
+ response.sendError(HttpServletResponse.SC_FORBIDDEN,
String.format("The asset digest in the request does not match the actual digest
for asset '%s'. This indicates that the content of the asset has changed
between requests.", result.getPath()));
return null;
}
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/AssetSourceImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/AssetSourceImpl.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/AssetSourceImpl.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/AssetSourceImpl.java
Tue Nov 1 23:13:03 2011
@@ -1,4 +1,4 @@
-// Copyright 2006, 2007, 2008, 2009, 2010 The Apache Software Foundation
+// Copyright 2006, 2007, 2008, 2009, 2010, 2011 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.
@@ -124,7 +124,7 @@ public class AssetSourceImpl implements
Resource root = prefixToRootResource.get(prefix);
if (root == null)
- throw new
IllegalArgumentException(ServicesMessages.unknownAssetPrefix(path));
+ throw new IllegalArgumentException(String.format("Unknown prefix
for asset path '%s'.", path));
return root.forFile(path.substring(colonx + 1));
}
@@ -134,7 +134,7 @@ public class AssetSourceImpl implements
Resource localized = locale == null ? unlocalized :
unlocalized.forLocale(locale);
if (localized == null)
- throw new
RuntimeException(ServicesMessages.assetDoesNotExist(unlocalized));
+ throw new RuntimeException(String.format("Unable to locate asset
'%s' (the file does not exist).", unlocalized));
return getAssetForResource(localized);
}
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/BeanBlockSourceImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/BeanBlockSourceImpl.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/BeanBlockSourceImpl.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/BeanBlockSourceImpl.java
Tue Nov 1 23:13:03 2011
@@ -1,4 +1,4 @@
-// Copyright 2007, 2008 The Apache Software Foundation
+// Copyright 2007, 2008, 2011 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.
@@ -48,7 +48,7 @@ public class BeanBlockSourceImpl impleme
result = masterSource.getDisplayBlock(datatype);
if (result == null)
- throw new
RuntimeException(ServicesMessages.noDisplayForDataType(datatype));
+ throw new RuntimeException(String.format("There is no defined way
to display data of type '%s'. Make a contribution to the BeanBlockSource
service for this type.", datatype));
return result;
}
@@ -61,7 +61,7 @@ public class BeanBlockSourceImpl impleme
result = masterSource.getEditBlock(datatype);
if (result == null)
- throw new
RuntimeException(ServicesMessages.noEditForDataType(datatype));
+ throw new RuntimeException(String.format("There is no defined way
to edit data of type '%s'. Make a contribution to the BeanBlockSource service
for this type.", datatype));
return result;
}
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ClientPersistentFieldStorageImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ClientPersistentFieldStorageImpl.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ClientPersistentFieldStorageImpl.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ClientPersistentFieldStorageImpl.java
Tue Nov 1 23:13:03 2011
@@ -1,4 +1,4 @@
-// Copyright 2007, 2008, 2009 The Apache Software Foundation
+// Copyright 2007, 2008, 2009, 2011 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.
@@ -186,8 +186,7 @@ public class ClientPersistentFieldStorag
else
{
if (!Serializable.class.isInstance(newValue))
- throw new IllegalArgumentException(ServicesMessages
- .clientStateMustBeSerializable(newValue));
+ throw new IllegalArgumentException(String.format("State
persisted on the client must be serializable, but %s does not implement the
Serializable interface.", newValue));
persistedValues.put(key, newValue);
}
@@ -237,7 +236,7 @@ public class ClientPersistentFieldStorag
}
catch (Exception ex)
{
- throw new RuntimeException(ServicesMessages.corruptClientState(),
ex);
+ throw new RuntimeException("Serialized client state was corrupted.
This may indicate that too much state is being stored, which can cause the
encoded string to be truncated by the client web browser.", ex);
}
finally
{
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentClassResolverImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentClassResolverImpl.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentClassResolverImpl.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentClassResolverImpl.java
Tue Nov 1 23:13:03 2011
@@ -524,7 +524,7 @@ public class ComponentClassResolverImpl
if (result == null)
{
- throw new
IllegalArgumentException(ServicesMessages.pageNameUnresolved(pageClassName));
+ throw new IllegalArgumentException(String.format("Unable to
resolve class name %s to a logical page name.", pageClassName));
}
return result;
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentEventImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentEventImpl.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentEventImpl.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentEventImpl.java
Tue Nov 1 23:13:03 2011
@@ -75,7 +75,7 @@ public class ComponentEventImpl extends
public Object coerceContext(int index, String desiredTypeName)
{
if (index >= context.getCount())
- throw new
IllegalArgumentException(ServicesMessages.contextIndexOutOfRange(getMethodDescription()));
+ throw new IllegalArgumentException(String.format("Method %s has
more parameters than there are context values for this component event.",
getMethodDescription()));
try
{
Class desiredType = elementResources.toClass(desiredTypeName);
@@ -84,8 +84,7 @@ public class ComponentEventImpl extends
}
catch (Exception ex)
{
- throw new
IllegalArgumentException(ServicesMessages.exceptionInMethodParameter(getMethodDescription(),
- index, ex), ex);
+ throw new IllegalArgumentException(String.format("Exception in
method %s, parameter #%d: %s", getMethodDescription(), index + 1, ex), ex);
}
}
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentEventRequestHandlerImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentEventRequestHandlerImpl.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentEventRequestHandlerImpl.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentEventRequestHandlerImpl.java
Tue Nov 1 23:13:03 2011
@@ -1,4 +1,4 @@
-// Copyright 2006, 2007, 2008, 2009, 2010 The Apache Software Foundation
+// Copyright 2006, 2007, 2008, 2009, 2010, 2011 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.
@@ -82,7 +82,7 @@ public class ComponentEventRequestHandle
.triggerContextEvent(parameters.getEventType(),
parameters.getEventContext(), callback);
if (!handled)
- throw new
TapestryException(ServicesMessages.eventNotHandled(element,
parameters.getEventType()), element,
+ throw new TapestryException(String.format("Request event '%s' (on
component %s) was not handled; you must provide a matching event handler method
in the component or in one of its containers.", parameters.getEventType(),
element.getCompleteId()), element,
null);
environment.pop(TrackableComponentEventCallback.class);
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentInstanceResultProcessor.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentInstanceResultProcessor.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentInstanceResultProcessor.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentInstanceResultProcessor.java
Tue Nov 1 23:13:03 2011
@@ -1,4 +1,4 @@
-// Copyright 2006, 2007, 2008, 2009 The Apache Software Foundation
+// Copyright 2006, 2007, 2008, 2009, 2011 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.
@@ -46,7 +46,7 @@ public class ComponentInstanceResultProc
ComponentResources resources = value.getComponentResources();
if (resources.getContainer() != null)
- logger.warn(ServicesMessages.componentInstanceIsNotAPage(value));
+ logger.warn(String.format("Component %s was returned from an event
handler method, but is not a page component. The page containing the component
will render the client response.",
value.getComponentResources().getCompleteId()));
// We have all these layers and layers between us and the page
instance, but its easy to
// extract the page class name and quickly re-resolve that to the page
instance.
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentInstantiatorSourceImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentInstantiatorSourceImpl.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentInstantiatorSourceImpl.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentInstantiatorSourceImpl.java
Tue Nov 1 23:13:03 2011
@@ -282,8 +282,7 @@ public final class ComponentInstantiator
{
String suggestedPackageName =
buildSuggestedPackageName(className);
- throw new
RuntimeException(ServicesMessages.baseClassInWrongPackage(parentClassName,
- className, suggestedPackageName));
+ throw new RuntimeException(String.format("Base
class %s (super class of %s) is not in a controlled package and is therefore
not valid. You should try moving the class to package %s.", parentClassName,
className, suggestedPackageName));
}
// Tapestry 5.2 was more sensitive that the parent
class have a public no-args constructor.
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/DefaultRequestExceptionHandler.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/DefaultRequestExceptionHandler.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/DefaultRequestExceptionHandler.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/DefaultRequestExceptionHandler.java
Tue Nov 1 23:13:03 2011
@@ -1,4 +1,4 @@
-// Copyright 2006, 2008, 2010 The Apache Software Foundation
+// Copyright 2006, 2008, 2010, 2011 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.
@@ -60,7 +60,7 @@ public class DefaultRequestExceptionHand
public void handleRequestException(Throwable exception) throws IOException
{
- logger.error(ServicesMessages.requestException(exception), exception);
+ logger.error(String.format("Processing of request failed with uncaught
exception: %s", exception), exception);
// TAP5-233: Make sure the client knows that an error occurred.
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/DocumentLinkerImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/DocumentLinkerImpl.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/DocumentLinkerImpl.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/DocumentLinkerImpl.java
Tue Nov 1 23:13:03 2011
@@ -1,4 +1,4 @@
-// Copyright 2007, 2008, 2009, 2010 The Apache Software Foundation
+// Copyright 2007, 2008, 2009, 2010, 2011 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.
@@ -146,7 +146,7 @@ public class DocumentLinkerImpl implemen
String rootElementName = root.getName();
if (!rootElementName.equals("html"))
- throw new
RuntimeException(ServicesMessages.documentMissingHTMLRoot(rootElementName));
+ throw new RuntimeException(String.format("The root element of the
rendered document was <%s>, not <html>. A root element of <html> is needed when
linking JavaScript and stylesheet resources.", rootElementName));
Element head = findOrCreateElement(root, "head", true);
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/EventImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/EventImpl.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/EventImpl.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/EventImpl.java
Tue Nov 1 23:13:03 2011
@@ -75,7 +75,7 @@ public class EventImpl implements Event
if (aborted)
{
- throw new
IllegalStateException(ServicesMessages.componentEventIsAborted(methodDescription));
+ throw new IllegalStateException(String.format("Can not store
result from invoking method %s, because an event result value has already been
obtained from some other event handler method.", methodDescription));
}
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/FieldValidatorSourceImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/FieldValidatorSourceImpl.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/FieldValidatorSourceImpl.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/FieldValidatorSourceImpl.java
Tue Nov 1 23:13:03 2011
@@ -102,8 +102,7 @@ public class FieldValidatorSourceImpl im
Validator validator = validators.get(validatorType);
if (validator == null)
- throw new
IllegalArgumentException(ServicesMessages.unknownValidatorType(validatorType,
- InternalUtils.sortedKeys(validators)));
+ throw new IllegalArgumentException(String.format("Unknown
validator type '%s'. Configured validators are %s.", validatorType,
InternalUtils.join(InternalUtils.sortedKeys(validators))));
// I just have this thing about always treating parameters as finals,
so
// we introduce a second variable to treat a mutable.
@@ -155,8 +154,8 @@ public class FieldValidatorSourceImpl im
if (overrideMessages.contains(generalKey))
return overrideMessages.get(generalKey);
- throw new
IllegalArgumentException(ServicesMessages.missingValidatorConstraint(validatorType,
constraintType,
- perFormKey, generalKey));
+ throw new IllegalArgumentException(String.format("Validator '%s'
requires a validation constraint (of type %s) but none was provided. The
constraint may be provided inside the @Validator annotaton on the property, or
in the associated component message catalog as key '%s' or key '%s'.",
validatorType, constraintType.getName(), perFormKey,
+ generalKey));
}
private MessageFormatter findMessageFormatter(String formId, String
overrideId, Messages overrideMessages,
@@ -420,6 +419,7 @@ public class FieldValidatorSourceImpl im
private static void parseError(int cursor, String specification)
{
- throw new
RuntimeException(ServicesMessages.validatorSpecificationParseError(cursor,
specification));
+ throw new RuntimeException(String.format("Unexpected character '%s' at
position %d of input string: %s", specification.charAt(cursor), cursor + 1,
+ specification));
}
}
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/LiteralPropertyConduit.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/LiteralPropertyConduit.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/LiteralPropertyConduit.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/LiteralPropertyConduit.java
Tue Nov 1 23:13:03 2011
@@ -52,7 +52,7 @@ public class LiteralPropertyConduit exte
public void set(Object instance, Object value)
{
- throw new
RuntimeException(ServicesMessages.literalConduitNotUpdateable());
+ throw new RuntimeException("Literal values are not updateable.");
}
public Class getPropertyType()
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MarkupWriterImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MarkupWriterImpl.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MarkupWriterImpl.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MarkupWriterImpl.java
Tue Nov 1 23:13:03 2011
@@ -17,8 +17,10 @@ package org.apache.tapestry5.internal.se
import org.apache.tapestry5.MarkupWriter;
import org.apache.tapestry5.MarkupWriterListener;
import org.apache.tapestry5.dom.*;
+import org.apache.tapestry5.ioc.internal.util.InternalUtils;
import java.io.PrintWriter;
+import java.util.Arrays;
import java.util.Collection;
import java.util.List;
import java.util.concurrent.CopyOnWriteArrayList;
@@ -119,7 +121,8 @@ public class MarkupWriterImpl implements
int length = namesAndValues.length;
if (length % 2 != 0)
- throw new
IllegalArgumentException(ServicesMessages.markupWriterAttributeNameOrValueOmitted(current.getName(),
namesAndValues));
+ throw new IllegalArgumentException(String.format("Writing
attributes of the element '%s' failed. An attribute name or value is omitted
[%s]. Please provide an even number of values, alternating names and values.",
current.getName(), InternalUtils.join(Arrays
+ .asList(namesAndValues))));
while (i < length)
{
@@ -137,7 +140,9 @@ public class MarkupWriterImpl implements
private void ensureCurrentElement()
{
if (current == null)
- throw new
IllegalStateException(ServicesMessages.markupWriterNoCurrentElement());
+ throw new IllegalStateException("This markup writer does not have
a current element. " +
+ "The current element is established with the first call to
element() and is " +
+ "maintained across subsequent calls.");
}
public Element element(String name, Object... namesAndValues)
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MessagesSourceImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MessagesSourceImpl.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MessagesSourceImpl.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MessagesSourceImpl.java
Tue Nov 1 23:13:03 2011
@@ -211,7 +211,7 @@ public class MessagesSourceImpl extends
}
catch (Exception ex)
{
- throw new
RuntimeException(ServicesMessages.failureReadingMessages(resource, ex), ex);
+ throw new RuntimeException(String.format("Unable to read message
catalog from %s: %s", resource, ex), ex);
}
}
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PageElementFactoryImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PageElementFactoryImpl.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PageElementFactoryImpl.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PageElementFactoryImpl.java
Tue Nov 1 23:13:03 2011
@@ -1,4 +1,4 @@
-// Copyright 2006, 2007, 2008, 2009 The Apache Software Foundation
+// Copyright 2006, 2007, 2008, 2009, 2011 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.
@@ -107,8 +107,7 @@ public class PageElementFactoryImpl impl
int endx = expression.indexOf("}", expansionx);
- if (endx < 0) throw new TapestryException(ServicesMessages
- .unclosedAttributeExpression(expression), location, null);
+ if (endx < 0) throw new TapestryException(String.format("Attribute
expression '%s' is missing a closing brace.", expression), location, null);
String expansion = expression.substring(expansionx + 2, endx);
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PageMarkupRendererImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PageMarkupRendererImpl.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PageMarkupRendererImpl.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PageMarkupRendererImpl.java
Tue Nov 1 23:13:03 2011
@@ -1,4 +1,4 @@
-// Copyright 2006, 2007, 2008, 2010 The Apache Software Foundation
+// Copyright 2006, 2007, 2008, 2010, 2011 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.
@@ -47,6 +47,6 @@ public class PageMarkupRendererImpl impl
markupRendererPipeline.renderMarkup(writer);
if (writer.getDocument().getRootElement() == null)
- throw new
RuntimeException(ServicesMessages.noMarkupFromPageRender(page));
+ throw new RuntimeException(String.format("=Page %s did not
generate any markup when rendered. This could be because its template file
could not be located, or because a render phase method in the page prevented
rendering.", page.getName()));
}
}
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PropertyConduitSourceImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PropertyConduitSourceImpl.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PropertyConduitSourceImpl.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PropertyConduitSourceImpl.java
Tue Nov 1 23:13:03 2011
@@ -1433,7 +1433,7 @@ public class PropertyConduitSourceImpl i
public void set(Object instance, Object value)
{
- throw new
RuntimeException(ServicesMessages.literalConduitNotUpdateable());
+ throw new RuntimeException("Literal values are not
updateable.");
}
public Class getPropertyType()
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/RenderQueueImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/RenderQueueImpl.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/RenderQueueImpl.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/RenderQueueImpl.java
Tue Nov 1 23:13:03 2011
@@ -74,7 +74,7 @@ public class RenderQueueImpl implements
}
catch (RuntimeException ex)
{
- String message = ServicesMessages.renderQueueError(command, ex);
+ String message = String.format("Render queue error in %s: %s",
command, ex);
logger.error(message, ex);
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ResourceStreamerImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ResourceStreamerImpl.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ResourceStreamerImpl.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ResourceStreamerImpl.java
Tue Nov 1 23:13:03 2011
@@ -79,7 +79,7 @@ public class ResourceStreamerImpl implem
{
if (!resource.exists())
{
- response.sendError(HttpServletResponse.SC_NOT_FOUND,
ServicesMessages.assetDoesNotExist(resource));
+ response.sendError(HttpServletResponse.SC_NOT_FOUND,
String.format("Unable to locate asset '%s' (the file does not exist).",
resource));
return;
}
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/SaxTemplateParser.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/SaxTemplateParser.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/SaxTemplateParser.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/SaxTemplateParser.java
Tue Nov 1 23:13:03 2011
@@ -655,7 +655,7 @@ public class SaxTemplateParser
String path = uri.substring(LIB_NAMESPACE_URI_PREFIX.length());
if (!LIBRARY_PATH_PATTERN.matcher(path).matches())
- throw new
RuntimeException(ServicesMessages.invalidPathForLibraryNamespace(uri));
+ throw new RuntimeException(String.format("The path portion of
library namespace URI '%s' is not valid: it must be a simple identifier, or a
series of identifiers seperated by slashes.", uri));
possibleTapestryComponent(state, null, path + "/" +
tokenStream.getLocalName());
}
@@ -702,7 +702,7 @@ public class SaxTemplateParser
{
id = nullForBlank(value);
- validateId(id, "invalid-component-id");
+ validateId(id, "Component id '%s' is not valid; component
ids must be valid Java identifiers: start with a letter, and consist of
letters, numbers and underscores.");
continue;
}
@@ -734,7 +734,7 @@ public class SaxTemplateParser
// component
if (mixins != null && !isComponent)
- throw new
TapestryException(ServicesMessages.mixinsInvalidWithoutIdOrType(elementName),
+ throw new TapestryException(String.format("You may not specify
mixins for element <%s> because it does not represent a component (which
requires either an id attribute or a type attribute).", elementName),
location, null);
if (isComponent)
@@ -816,7 +816,7 @@ public class SaxTemplateParser
String parameterName = getSingleParameter("name");
if (InternalUtils.isBlank(parameterName))
- throw new
TapestryException(ServicesMessages.parameterElementNameRequired(),
+ throw new TapestryException("The name attribute of the <parameter>
element must be specified.",
getLocation(), null);
ensureParameterWithinComponent(state);
@@ -842,7 +842,7 @@ public class SaxTemplateParser
ensureParameterWithinComponent(state);
if (tokenStream.getAttributeCount() > 0)
- throw new
TapestryException(ServicesMessages.parameterElementDoesNotAllowAttributes(),
+ throw new TapestryException("A block parameter element does not
allow any additional attributes. The element name defines the parameter name.",
getLocation(), null);
tokenAccumulator.add(new ParameterToken(tokenStream.getLocalName(),
getLocation()));
@@ -867,8 +867,7 @@ public class SaxTemplateParser
return;
default:
- throw new IllegalStateException(ServicesMessages
- .contentInsideBodyNotAllowed(getLocation()));
+ throw new IllegalStateException(String.format("Content
inside a Tapestry body element is not allowed (at %s). The content has been
ignored.", getLocation()));
}
}
}
@@ -912,7 +911,7 @@ public class SaxTemplateParser
{
String blockId = getSingleParameter("id");
- validateId(blockId, "invalid-block-id");
+ validateId(blockId, "Block id '%s' is not valid; block ids must be
valid Java identifiers: start with a letter, and consist of letters, numbers
and underscores.");
tokenAccumulator.add(new BlockToken(blockId, getLocation()));
@@ -938,7 +937,7 @@ public class SaxTemplateParser
// Only the named attribute is allowed.
- throw new
TapestryException(ServicesMessages.undefinedTapestryAttribute(tokenStream
+ throw new TapestryException(String.format("Element <%s> does not
support an attribute named '%s'. The only allowed attribute name is '%s'.",
tokenStream
.getLocalName(), qName.toString(), attributeName),
getLocation(), null);
}
@@ -955,7 +954,7 @@ public class SaxTemplateParser
// Not a match.
- throw new TapestryException(ServicesMessages.invalidId(messageKey,
id), getLocation(), null);
+ throw new TapestryException(String.format(messageKey, id),
getLocation(), null);
}
private boolean isXMLSpaceAttribute(QName qName)
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/StaticFilesFilter.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/StaticFilesFilter.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/StaticFilesFilter.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/StaticFilesFilter.java
Tue Nov 1 23:13:03 2011
@@ -1,4 +1,4 @@
-// Copyright 2006, 2007, 2008, 2010 The Apache Software Foundation
+// Copyright 2006, 2007, 2008, 2010, 2011 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.
@@ -76,8 +76,7 @@ public class StaticFilesFilter implement
if
(suffix.equalsIgnoreCase(TapestryConstants.TEMPLATE_EXTENSION))
{
- response.sendError(HttpServletResponse.SC_FORBIDDEN,
ServicesMessages
- .resourcesAccessForbidden(path));
+ response.sendError(HttpServletResponse.SC_FORBIDDEN,
String.format("URI %s may not be accessed remotely.", path));
return true;
}
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/TemplateParserImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/TemplateParserImpl.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/TemplateParserImpl.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/TemplateParserImpl.java
Tue Nov 1 23:13:03 2011
@@ -52,7 +52,7 @@ public class TemplateParserImpl implemen
public ComponentTemplate parseTemplate(final Resource templateResource)
{
if (!templateResource.exists())
- throw new
RuntimeException(ServicesMessages.missingTemplateResource(templateResource));
+ throw new RuntimeException(String.format("Template resource %s
does not exist.", templateResource));
return tracker.invoke("Parsing component template " +
templateResource, new Invokable<ComponentTemplate>()
{
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/ClientPersistentFieldStorageImplTest.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/ClientPersistentFieldStorageImplTest.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/ClientPersistentFieldStorageImplTest.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/ClientPersistentFieldStorageImplTest.java
Tue Nov 1 23:13:03 2011
@@ -1,4 +1,4 @@
-// Copyright 2007, 2008, 2009 The Apache Software Foundation
+// Copyright 2007, 2008, 2009, 2011 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.
@@ -264,7 +264,7 @@ public class ClientPersistentFieldStorag
}
catch (RuntimeException ex)
{
- assertEquals(ex.getMessage(),
ServicesMessages.corruptClientState());
+ assertEquals(ex.getMessage(), "Serialized client state was
corrupted. This may indicate that too much state is being stored, which can
cause the encoded string to be truncated by the client web browser.");
assertNotNull(ex.getCause());
}
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/ComponentEventImplTest.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/ComponentEventImplTest.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/ComponentEventImplTest.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/ComponentEventImplTest.java
Tue Nov 1 23:13:03 2011
@@ -367,7 +367,7 @@ public class ComponentEventImplTest exte
unreachable();
} catch (IllegalStateException ex)
{
- assertEquals(ex.getMessage(),
ServicesMessages.componentEventIsAborted("foo.Bar.biff()"));
+ assertEquals(ex.getMessage(), String.format("Can not store result
from invoking method %s, because an event result value has already been
obtained from some other event handler method.", "foo.Bar.biff()"));
}
verify();
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/TemplateParserImplTest.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/TemplateParserImplTest.java?rev=1196383&r1=1196382&r2=1196383&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/TemplateParserImplTest.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/TemplateParserImplTest.java
Tue Nov 1 23:13:03 2011
@@ -703,7 +703,7 @@ public class TemplateParserImplTest exte
3},
{"parameter_namespace_with_attributes.tml",
-
ServicesMessages.parameterElementDoesNotAllowAttributes(), 4},
+ "A block parameter element does not allow any
additional attributes. The element name defines the parameter name.", 4},
{"invalid_library_namespace_path.tml",
"The path portion of library namespace URI
'tapestry-library:subfolder/' is not valid", 2},