Author: ivaynberg
Date: Tue Jul 14 03:42:11 2009
New Revision: 793782
URL: http://svn.apache.org/viewvc?rev=793782&view=rev
Log:
WICKET-2350 Localization messages stops working with validators since 1.4-rc2
Issue: WICKET-2350
Modified:
wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/form/FormComponent.java
Modified:
wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/form/FormComponent.java
URL:
http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/form/FormComponent.java?rev=793782&r1=793781&r2=793782&view=diff
==============================================================================
---
wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/form/FormComponent.java
(original)
+++
wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/form/FormComponent.java
Tue Jul 14 03:42:11 2009
@@ -158,15 +158,28 @@
// retrieve prefix that will be used to construct
message keys
String prefix = formComponent.getValidatorKeyPrefix();
String message = null;
- if (!Strings.isEmpty(prefix))
+
+ // first try the full form of key
[prefix].[form-component-id].[key]
+ String resource = prefix(prefix, getId() + "." + key);
+ message = getString(localizer, resource, formComponent);
+
+ // if not found, try a more general form (without
prefix) [form-component-id].[key]
+ if (Strings.isEmpty(message) && Strings.isEmpty(prefix))
{
- String resource = prefix + "." + key;
+ resource = getId() + "." + key;
message = getString(localizer, resource,
formComponent);
}
- // If not found, than ...
+ // If not found try a more general form [prefix].[key]
if (Strings.isEmpty(message))
{
+ resource = prefix(prefix, key);
+ message = getString(localizer, key,
formComponent);
+ }
+
+ // If not found try the most general form [key]
+ if (Strings.isEmpty(message) && Strings.isEmpty(prefix))
+ {
// Try a variation of the resource key
message = getString(localizer, key,
formComponent);
}
@@ -180,6 +193,18 @@
return message;
}
+ private String prefix(String prefix, String key)
+ {
+ if (!Strings.isEmpty(prefix))
+ {
+ return prefix + "." + key;
+ }
+ else
+ {
+ return key;
+ }
+ }
+
/**
*
* @param localizer