[
https://issues.apache.org/jira/browse/DERBY-6828?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15144261#comment-15144261
]
Knut Anders Hatlen commented on DERBY-6828:
-------------------------------------------
Looks like it's the message printed when the security manager is successfully
installed. Here:
{code}
// Report success.
if (securityManager.equals(System.getSecurityManager())) {
String successMessage = server.localizeMessage(
"DRDA_SecurityInstalled.I", null);
{code}
Notice that the second argument to localizeMessage() is {{null}}. It is passed
further down to LocalizedResource.getTextMessage():
{code}
public String getTextMessage(String key, Object... objectArr) {
if (res == null){
setResource();
}
try{
return MessageFormat.format(res.getString(key),
objectArr);
} catch (Exception e) {
String tmpFormat = key;
for (int i=0; i<objectArr.length; i++)
tmpFormat = tmpFormat + ", <{"
+ (i) + "}>";
return MessageFormat.format(tmpFormat,
objectArr);
}
}
{code}
Here, an exception is raised because it cannot find the key in the Czech
translation. However, the exception handler does not expect {{objectArr}} to be
{{null}}, and a {{NullPointerException}} is raised.
> 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
>
> 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)