struts-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Don Brown (JIRA)" <j...@apache.org>
Subject [jira] Updated: (STR-2843) PropertyMessageResources.loadLocale(String localeKey) has a problem!
Date Tue, 25 Apr 2006 18:54:45 GMT
     [ http://issues.apache.org/struts/browse/STR-2843?page=all ]

Don Brown updated STR-2843:
---------------------------

        Summary: PropertyMessageResources.loadLocale(String localeKey) has a problem!  (was:
CLONE -PropertyMessageResources.loadLocale(String localeKey) has a problem!)
    Bugzilla Id:   (was: 35155)
      Assign To:     (was: Struts Developer Mailing List)

Had to clone due to corrupted ticket

> PropertyMessageResources.loadLocale(String localeKey) has a problem!
> --------------------------------------------------------------------
>
>          Key: STR-2843
>          URL: http://issues.apache.org/struts/browse/STR-2843
>      Project: Struts Action 1
>         Type: Bug

>   Components: Action
>     Versions: Nightly Build
>  Environment: Operating System: other
> Platform: Other
>     Reporter: qxo

>
> when
> struts-config.xml -->message-resources -->parameter:resourceA
> if resourceA not existed,it should show some error message,but not!
> cause:
>   PropertyMessageResources.loadLocale(String localeKey) has a problem!
> I fixed it;
> Code:
>         protected synchronized void loadLocale(String localeKey) {
>             // Have we already attempted to load messages for this locale?
>             if (locales.get(localeKey) != null) {
>                 return;
>             }
>             
>             if (log.isTraceEnabled()) {
>                 log.trace("loadLocale(" + localeKey + ")");
>             }
>             
>         
>             
>             locales.put(localeKey, localeKey);
>             // Set up to load the property resource for this locale key, if we can
>             String name = config.replace('.', '/');
>             if (localeKey.length() > 0) {
>                 name += "_" + localeKey;
>             }
>             
>             name += ".properties";
>             InputStream is = null;
>           
>             // Load the specified property resource
>             if (log.isTraceEnabled()) {
>                 log.trace("  Loading resource '" + name + "'");
>             }
>             
>             ClassLoader classLoader =
> Thread.currentThread().getContextClassLoader();
>             if (classLoader == null) {
>                 classLoader = this.getClass().getClassLoader();
>             }
>             
>             is = classLoader.getResourceAsStream(name);
>             if (is != null) {
>                 Properties props = new Properties();
>     
>                 try {
>                     props.load(is);                    
>                 } catch (IOException e) {
>                     log.error("loadLocale()", e);
>                 } finally {
>                     try {
>                         is.close();
>                     } catch (IOException e) {
>                         log.error("loadLocale()", e);
>                     }
>                 }
>                 
>                 // Copy the corresponding values into our cache
>                 if (props.size() < 1) {
>                     return;
>                 }
>                 
>                 synchronized (messages) {
>                     Iterator names = props.keySet().iterator();
>                     while (names.hasNext()) {
>                         String key = (String) names.next();
>                         if (log.isTraceEnabled()) {
>                             log.trace("  Saving message key '" +
> messageKey(localeKey, key));
>                         }
>                         messages.put(messageKey(localeKey, key),
> props.getProperty(key));
>                     }
>                 }
>                 if (log.isTraceEnabled()) {
>                     log.trace("  Loading resource completed");
>                 }                
>             }else{
>                 
>                 if (log.isWarnEnabled()) {
>                     log.warn("the resource not found.");
>                 }
>             }
>         }

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/struts/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org


Mime
View raw message