[ 
https://issues.apache.org/jira/browse/DERBY-6828?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15145730#comment-15145730
 ] 

Bryan Pendleton commented on DERBY-6828:
----------------------------------------

In LocalizedResource.getResource, we appear to be expecting the call:

    res = ResourceBundle.getBundle(messageFileName,locale);

to throw an exception, in the case where
 messageFileName="org.apache.derby.loc.drda.messages" and locale=cs_US
in which case we'd catch that exception and fall back to:

    res = ResourceBundle.getBundle(messageFileName,Locale.ENGLISH);

But the first call *doesn't* throw an exception; instead we get a valid
PropertyResourceBundle back. Unfortunately, when we try to use that
PropertyResourceBundle as follows:

    return MessageFormat.format(res.getString(key), objectArr);

we fail with:

java.util.MissingResourceException: Can't find resource for bundle 
java.util.PropertyResourceBundle, key DRDA_SecurityInstalled.I
        at java.util.ResourceBundle.getObject(ResourceBundle.java:450)
        at java.util.ResourceBundle.getString(ResourceBundle.java:407)
        at 
org.apache.derby.iapi.tools.i18n.LocalizedResource.getTextMessage(LocalizedResource.java:297)
        at 
org.apache.derby.impl.drda.NetworkServerControlImpl.localizeMessage(NetworkServerControlImpl.java:3625)
        at 
org.apache.derby.impl.drda.NetworkServerControlImpl.localizeMessage(NetworkServerControlImpl.java:3597)
        at 
org.apache.derby.drda.NetworkServerControl.installSecurityManager(NetworkServerControl.java:706)
        at 
org.apache.derby.drda.NetworkServerControl.main(NetworkServerControl.java:344)



> Network Server don't start in czech localized enviroment due missing key 
> DRDA_MissingNetworkJar.S
> -------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-6828
>                 URL: https://issues.apache.org/jira/browse/DERBY-6828
>             Project: Derby
>          Issue Type: Bug
>          Components: Localization, Network Server
>    Affects Versions: 10.11.1.1
>         Environment: Windows 7 Profesional SP1 64bit (localized CS),
> java version "1.8.0_51"
> Java(TM) SE Runtime Environment (build 1.8.0_51-b16)
> Java HotSpot(TM) 64-Bit Server VM (build 25.51-b03, mixed mode)
>            Reporter: David Ježek
>            Priority: Minor
>              Labels: easyfix
>         Attachments: nullGuard.diff
>
>
> Network Server don't start in czech localized enviroment due missing key 
> DRDA_MissingNetworkJar.S in file 
> org/apache/derby/loc/drda/messages_cs.properties
> Exception:
> Thu Jul 23 15:56:24 CEST 2015 : null
> java.lang.NullPointerException
>         at 
> org.apache.derby.iapi.tools.i18n.LocalizedResource.getTextMessage(Unknown 
> Source)
>         at 
> org.apache.derby.impl.drda.NetworkServerControlImpl.localizeMessage(Unknown 
> Source)
>         at 
> org.apache.derby.impl.drda.NetworkServerControlImpl.localizeMessage(Unknown 
> Source)
>         at 
> org.apache.derby.drda.NetworkServerControl.installSecurityManager(Unknown 
> Source)
>         at org.apache.derby.drda.NetworkServerControl.main(Unknown Source)
> Missing key is called in file org.apache.derby.drda.NetworkServerControl.java 
> at line 818.
> Reproduce under windows in console run:
> set DERBY_OPTS=-Duser.language=cs
> startNetworkServer.bat
> Workaround:
> Run derby server under en localization.
> Windows consola run:
> set DERBY_OPTS=-Duser.language=en
> startNetworkServer.bat



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to