Author: svenmeier
Date: Sat Jul 23 14:48:38 2011
New Revision: 1150111

URL: http://svn.apache.org/viewvc?rev=1150111&view=rev
Log:
test session with Session.exists(), calculate Locale as Localizer does it

Modified:
    
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/model/StringResourceModel.java

Modified: 
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/model/StringResourceModel.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/model/StringResourceModel.java?rev=1150111&r1=1150110&r2=1150111&view=diff
==============================================================================
--- 
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/model/StringResourceModel.java
 (original)
+++ 
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/model/StringResourceModel.java
 Sat Jul 23 14:48:38 2011
@@ -24,7 +24,6 @@ import org.apache.wicket.Application;
 import org.apache.wicket.Component;
 import org.apache.wicket.Localizer;
 import org.apache.wicket.Session;
-import org.apache.wicket.WicketRuntimeException;
 import org.apache.wicket.resource.loader.ComponentStringResourceLoader;
 import org.apache.wicket.util.string.Strings;
 import org.apache.wicket.util.string.interpolator.PropertyVariableInterpolator;
@@ -396,13 +395,15 @@ public class StringResourceModel extends
        {
 
                final Localizer localizer = getLocalizer();
-               final Session session = Session.get();
-               if (session == null)
+               final Locale locale;
+               if (component != null)
                {
-                       throw new WicketRuntimeException(
-                               "Cannot attach a string resource model without 
a Session context because that is required to get a Locale");
+                       locale = component.getLocale();
+               }
+               else
+               {
+                       locale = Session.exists() ? Session.get().getLocale() : 
Locale.getDefault();
                }
-               final Locale locale = session.getLocale();
 
                String value;
 
@@ -462,8 +463,7 @@ public class StringResourceModel extends
                                }
 
                                // Apply the parameters
-                               final MessageFormat format = new 
MessageFormat(value, component != null
-                                       ? component.getLocale() : locale);
+                               final MessageFormat format = new 
MessageFormat(value, locale);
                                value = format.format(realParams);
 
                                if (model != null)


Reply via email to