changeset 4345:be418afb1b2e

7043548: message drop 3 translation integration Reviewed-by: yhuang
author mfang
date Tue, 10 May 2011 16:19:40 -0700
parents 3d39f994d6ff
children 78f2f50bca1f
files src/share/classes/com/sun/accessibility/internal/resources/accessibility_es.properties src/share/classes/sun/awt/resources/awt_es.properties src/share/classes/sun/launcher/resources/launcher_de.properties src/share/classes/sun/launcher/resources/launcher_es.properties src/share/classes/sun/launcher/resources/launcher_fr.properties src/share/classes/sun/launcher/resources/launcher_it.properties src/share/classes/sun/launcher/resources/launcher_ja.properties src/share/classes/sun/launcher/resources/launcher_ko.properties src/share/classes/sun/launcher/resources/launcher_pt_BR.properties src/share/classes/sun/launcher/resources/launcher_sv.properties src/share/classes/sun/launcher/resources/launcher_zh_CN.properties src/share/classes/sun/launcher/resources/launcher_zh_TW.properties src/share/classes/sun/rmi/server/resources/rmid_es.properties src/share/classes/sun/security/tools/JarSignerResources_ja.java src/share/classes/sun/security/util/AuthResources_de.java src/share/classes/sun/security/util/AuthResources_es.java src/share/classes/sun/security/util/AuthResources_fr.java src/share/classes/sun/security/util/AuthResources_it.java src/share/classes/sun/security/util/AuthResources_ja.java src/share/classes/sun/security/util/AuthResources_ko.java src/share/classes/sun/security/util/AuthResources_pt_BR.java src/share/classes/sun/security/util/AuthResources_sv.java src/share/classes/sun/security/util/AuthResources_zh_CN.java src/share/classes/sun/security/util/AuthResources_zh_TW.java src/share/classes/sun/security/util/Resources_de.java src/share/classes/sun/security/util/Resources_es.java src/share/classes/sun/security/util/Resources_fr.java src/share/classes/sun/security/util/Resources_it.java src/share/classes/sun/security/util/Resources_ja.java src/share/classes/sun/security/util/Resources_ko.java src/share/classes/sun/security/util/Resources_pt_BR.java src/share/classes/sun/security/util/Resources_sv.java src/share/classes/sun/security/util/Resources_zh_TW.java
diffstat 33 files changed, 163 insertions(+), 249 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/classes/com/sun/accessibility/internal/resources/accessibility_es.properties	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/com/sun/accessibility/internal/resources/accessibility_es.properties	Tue May 10 16:19:40 2011 -0700
@@ -131,7 +131,7 @@
 # accessible states
 #
 managesDescendants=gestiona descendientes
-indeterminate=indeterminado
+indeterminate=indeterminada
 truncated=truncado
 
 # new for J2SE 1.6.0
--- a/src/share/classes/sun/awt/resources/awt_es.properties	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/awt/resources/awt_es.properties	Tue May 10 16:19:40 2011 -0700
@@ -175,7 +175,7 @@
 AWT.HostInputMethodDisplayName=M\u00E9todos de Entrada del Sistema
 AWT.InputMethodLanguage.ja=Japon\u00E9s
 AWT.InputMethodLanguage.ko=Coreano
-AWT.InputMethodLanguage.zh=Chino
+AWT.InputMethodLanguage.zh=chino
 AWT.InputMethodLanguage.zh_CN=Chino Simplificado
 AWT.InputMethodLanguage.zh_TW=Chino Tradicional
 AWT.InputMethodCreationFailed=No se ha podido crear {0}. Motivo: {1}
--- a/src/share/classes/sun/launcher/resources/launcher_de.properties	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/launcher/resources/launcher_de.properties	Tue May 10 16:19:40 2011 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
--- a/src/share/classes/sun/launcher/resources/launcher_es.properties	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/launcher/resources/launcher_es.properties	Tue May 10 16:19:40 2011 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
--- a/src/share/classes/sun/launcher/resources/launcher_fr.properties	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/launcher/resources/launcher_fr.properties	Tue May 10 16:19:40 2011 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
--- a/src/share/classes/sun/launcher/resources/launcher_it.properties	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/launcher/resources/launcher_it.properties	Tue May 10 16:19:40 2011 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
--- a/src/share/classes/sun/launcher/resources/launcher_ja.properties	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/launcher/resources/launcher_ja.properties	Tue May 10 16:19:40 2011 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
--- a/src/share/classes/sun/launcher/resources/launcher_ko.properties	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/launcher/resources/launcher_ko.properties	Tue May 10 16:19:40 2011 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
--- a/src/share/classes/sun/launcher/resources/launcher_pt_BR.properties	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/launcher/resources/launcher_pt_BR.properties	Tue May 10 16:19:40 2011 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
--- a/src/share/classes/sun/launcher/resources/launcher_sv.properties	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/launcher/resources/launcher_sv.properties	Tue May 10 16:19:40 2011 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,20 +24,20 @@
 #
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.header  =   Syntax: {0} [-options] class [args...]\n\           (f\u00F6r att k\u00F6ra en klass)\n   eller  {0} [-options] -jar jarfile [args...]\n\           (f\u00F6r att k\u00F6ra en jar-fil)\nd\u00E4r alternativen omfattar:\n
+java.launcher.opt.header  =   Syntax: {0} [-alternativ] class [argument...]\n\           (f\u00F6r att k\u00F6ra en klass)\n   eller  {0} [-alternativ] -jar jarfile [argument...]\n\           (f\u00F6r att k\u00F6ra en jar-fil)\nd\u00E4r alternativen omfattar:\n
 
 java.launcher.opt.datamodel  =\    -d{0}\t  anv\u00E4nd en {0}-bitsdatamodell om det finns\n
 java.launcher.opt.vmselect   =\    {0}\t  f\u00F6r att v\u00E4lja "{1}" VM\n
-java.launcher.opt.hotspot    =\    {0}\t  \u00E4r en synonym f\u00F6r "{1}" VM  [deprecated]\n
+java.launcher.opt.hotspot    =\    {0}\t  \u00E4r en synonym f\u00F6r "{1}" VM  [inaktuell]\n
 
 java.launcher.ergo.message1  =\                  Standard-VM \u00E4r {0}
 java.launcher.ergo.message2  =\                  eftersom du k\u00F6r en serverklassmaskin.\n
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.footer     =\    -cp <klass\u00F6kv\u00E4g f\u00F6r kataloger och zip-/jar-filer>\n\    -classpath <klass\u00F6kv\u00E4g f\u00F6r kataloger och zip-/jar-filer>\n\                  En {0}-separerad lista med kataloger, JAR-arkiv,\n\                  och ZIP-arkiv f\u00F6r s\u00F6kning efter klassfiler.\n\    -D<name>=<value>\n\                  ange en systemegenskap\n\    -verbose[:class|gc|jni]\n\                  aktivera utf\u00F6rliga utdata\n\    -version      skriv ut produktversionen och avsluta\n\    -version:<value>\n\                  beg\u00E4r den specifika versionen som ska k\u00F6ras\n\    -showversion  skriv ut produktversionen och forts\u00E4tt\n\    -jre-restrict-search | -no-jre-restrict-search\n\                  inkludera/exkludera anv\u00E4ndarprivata JRE:er i versions\u00F6kningen\n\    -? -help      skriv ut det h\u00E4r hj\u00E4lpmeddelandet\n\    -X            skriv ut hj\u00E4lp f\u00F6r icke-standardalternativ\n\    -ea[:<packagename>...|:<classname>]\n\    -enableassertions[:<packagename>...|:<classname>]\n\                  aktivera verifiering med angiven detaljgrad\n\    -da[:<packagename>...|:<classname>]\n\    -disableassertions[:<packagename>...|:<classname>]\n\                  avaktivera verifiering med angiven detaljgrad\n\    -esa | -enablesystemassertions\n\                  aktivera systemverifieringar\n\    -dsa | -disablesystemassertions\n\                  avaktivera systemverifieringar\n\    -agentlib:<libname>[=<options>]\n\                  ladda ursprungligt agentbibliotek <libname>, e.g. -agentlib:hprof\n\                  se \u00E4ven -agentlib:jdwp=help och -agentlib:hprof=help\n\    -agentpath:<pathname>[=<options>]\n\                  ladda ursprungligt agentbibliotek med helt s\u00F6kv\u00E4gsnamn\n\    -javaagent:<jarpath>[=<options>]\n\                  ladda Java-programspr\u00E5ksagent, se java.lang.instrument\n\    -splash:<imagepath>\n\                  visa v\u00E4lkomstsk\u00E4rm med angiven bild\nMer information finns p\u00E5 http://java.sun.com/javase/reference.
+java.launcher.opt.footer     =\    -cp <klass\u00F6kv\u00E4g f\u00F6r kataloger och zip-/jar-filer>\n\    -classpath <klass\u00F6kv\u00E4g f\u00F6r kataloger och zip-/jar-filer>\n\                  En {0}-avgr\u00E4nsad lista med kataloger, JAR-arkiv,\n\                  och ZIP-arkiv f\u00F6r s\u00F6kning efter klassfiler.\n\    -D<namn>=<v\u00E4rde>\n\                  ange en systemegenskap\n\    -verbose[:class|gc|jni]\n\                  aktivera utf\u00F6rliga utdata\n\    -version      skriv ut produktversionen och avsluta\n\    -version:<v\u00E4rde>\n\                  beg\u00E4r den specifika versionen som ska k\u00F6ras\n\    -showversion  skriv ut produktversionen och forts\u00E4tt\n\    -jre-restrict-search | -no-jre-restrict-search\n\                  inkludera/exkludera anv\u00E4ndarprivata JRE:er i versions\u00F6kningen\n\    -? -help      skriv ut det h\u00E4r hj\u00E4lpmeddelandet\n\    -X            skriv ut hj\u00E4lp f\u00F6r icke-standardalternativ\n\    -ea[:<paket>...|:<klass>]\n\    -enableassertions[:<paket>...|:<klass>]\n\                  aktivera verifiering med angiven detaljgrad\n\    -da[:<packagename>...|:<klass>]\n\    -disableassertions[:<paket>...|:<klass>]\n\                  avaktivera verifiering med angiven detaljgrad\n\    -esa | -enablesystemassertions\n\                  aktivera systemverifieringar\n\    -dsa | -disablesystemassertions\n\                  avaktivera systemverifieringar\n\    -agentlib:<bibliotek>[=<alternativ>]\n\                  ladda ursprungligt agentbibliotek <bibliotek>, e.g. -agentlib:hprof\n\                  se \u00E4ven -agentlib:jdwp=help och -agentlib:hprof=help\n\    -agentpath:<s\u00F6kv\u00E4g>[=<alternativ>]\n\                  ladda ursprungligt agentbibliotek med helt s\u00F6kv\u00E4gsnamn\n\    -javaagent:<jar-s\u00F6kv\u00E4g>[=<alternativ>]\n\                  ladda Java-programspr\u00E5ksagent, se java.lang.instrument\n\    -splash:<bilds\u00F6kv\u00E4g>\n\                  visa v\u00E4lkomstsk\u00E4rm med angiven bild\nMer information finns p\u00E5 http://java.sun.com/javase/reference.
 
 # Translators please note do not translate the options themselves
-java.launcher.X.usage=\    -Xmixed           k\u00F6rning i blandat l\u00E4ge (standard)\n\    -Xint             endast k\u00F6rning i tolkat l\u00E4ge\n\    -Xbootclasspath:<kataloger och zip-/jar-filer separeras med {0}>\n\                      ange s\u00F6kv\u00E4g f\u00F6r programladdningsklasser och -resurser\n\    -Xbootclasspath/a:<kataloger och zip-/jar-filer separeras med {0}>\n\                      l\u00E4gg till i slutet av programladdningsklassens s\u00F6kv\u00E4g\n\    -Xbootclasspath/p:<kataloger och zip-/jar-filer separeras med {0}>\n\                      l\u00E4gg till i b\u00F6rjan av programladdningsklassens s\u00F6kv\u00E4g\n\    -Xdiag            visa ytterligare diagnostiska meddelanden\n\    -Xnoclassgc       avaktivera klassens skr\u00E4pinsamling\n\    -Xincgc           aktivera inkrementell skr\u00E4pinsamling\n\    -Xloggc:<file>    logga GC-status till en fil med tidsst\u00E4mplar\n\    -Xbatch           avaktivera bakgrundskompilering\n\    -Xms<size>        ange initial storlek f\u00F6r Java-heap\n\    -Xmx<size>        ange maximal storlek f\u00F6r Java-heap\n\    -Xss<size>        ange storlek f\u00F6r java-tr\u00E5dsstack\n\    -Xprof            utdata f\u00F6r processorprofilering\n\    -Xfuture          aktivera str\u00E4ngaste kontroller, f\u00F6rv\u00E4ntad framtida standard\n\    -Xrs              minska OS-signalanv\u00E4ndning av Java/VM (se dokumentation)\n\    -Xcheck:jni       utf\u00F6r ytterligare kontroller f\u00F6r JNI-funktioner\n\    -Xshare:off       anv\u00E4nd inte delad klassdata\n\    -Xshare:auto      anv\u00E4nd delad klassdata om det g\u00E5r (standard)\n\    -Xshare:on        kr\u00E4v att delad klassdata anv\u00E4nds, annars slutf\u00F6rs inte.\n\    -XshowSettings    visa alla inst\u00E4llningar och forts\u00E4tt\n\    -XshowSettings:all\n\                      visa alla inst\u00E4llningar och forts\u00E4tt\n\    -XshowSettings:vm visa alla vm-relaterade inst\u00E4llningar och forts\u00E4tt\n\    -XshowSettings:properties\n\                      visa alla egenskapsinst\u00E4llningar och forts\u00E4tt\n\    -XshowSettings:locale\n\                      visa alla spr\u00E5krelaterade inst\u00E4llningar och forts\u00E4tt\n\n-X-alternativen \u00E4r inte standard och kan \u00E4ndras utan f\u00F6reg\u00E5ende meddelande.\n
+java.launcher.X.usage=\    -Xmixed           k\u00F6rning i blandat l\u00E4ge (standard)\n\    -Xint             endast k\u00F6rning i tolkat l\u00E4ge\n\    -Xbootclasspath:<kataloger och zip-/jar-filer avgr\u00E4nsas med {0}>\n\                      ange s\u00F6kv\u00E4g f\u00F6r programladdningsklasser och -resurser\n\    -Xbootclasspath/a:<kataloger och zip-/jar-filer avgr\u00E4nsas med {0}>\n\                      l\u00E4gg till i slutet av programladdningsklassens s\u00F6kv\u00E4g\n\    -Xbootclasspath/p:<kataloger och zip-/jar-filer avgr\u00E4nsas med {0}>\n\                      l\u00E4gg till i b\u00F6rjan av programladdningsklassens s\u00F6kv\u00E4g\n\    -Xdiag            visa ytterligare diagnostiska meddelanden\n\    -Xnoclassgc       avaktivera klassens skr\u00E4pinsamling\n\    -Xincgc           aktivera inkrementell skr\u00E4pinsamling\n\    -Xloggc:<fil>    logga GC-status till en fil med tidsst\u00E4mplar\n\    -Xbatch           avaktivera bakgrundskompilering\n\    -Xms<storlek>        ange ursprunglig storlek f\u00F6r Java-heap\n\    -Xmx<storlek>        ange maximal storlek f\u00F6r Java-heap\n\    -Xss<storlek>        ange storlek f\u00F6r java-tr\u00E5dsstack\n\    -Xprof            utdata f\u00F6r processorprofilering\n\    -Xfuture          aktivera str\u00E4ngaste kontroller, f\u00F6rv\u00E4ntad framtida standard\n\    -Xrs              minska OS-signalanv\u00E4ndning av Java/VM (se dokumentation)\n\    -Xcheck:jni       utf\u00F6r ytterligare kontroller f\u00F6r JNI-funktioner\n\    -Xshare:off       anv\u00E4nd inte delade klassdata\n\    -Xshare:auto      anv\u00E4nd delade klassdata om det g\u00E5r (standard)\n\    -Xshare:on        kr\u00E4v att delade klassdata anv\u00E4nds, annars slutf\u00F6r inte.\n\    -XshowSettings    visa alla inst\u00E4llningar och forts\u00E4tt\n\    -XshowSettings:all\n\                      visa alla inst\u00E4llningar och forts\u00E4tt\n\    -XshowSettings:vm visa alla vm-relaterade inst\u00E4llningar och forts\u00E4tt\n\    -XshowSettings:properties\n\                      visa alla egenskapsinst\u00E4llningar och forts\u00E4tt\n\    -XshowSettings:locale\n\                      visa alla spr\u00E5krelaterade inst\u00E4llningar och forts\u00E4tt\n\n-X-alternativen \u00E4r inte standard och kan \u00E4ndras utan f\u00F6reg\u00E5ende meddelande.\n
 
 java.launcher.cls.error1=Fel: Hittar inte eller kan inte ladda huvudklassen {0}
 java.launcher.cls.error2=Fel: Huvudmetoden \u00E4r inte {0} i klassen {1}, definiera huvudmetoden som:\n\   public static void main(String[] args)
--- a/src/share/classes/sun/launcher/resources/launcher_zh_CN.properties	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/launcher/resources/launcher_zh_CN.properties	Tue May 10 16:19:40 2011 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
--- a/src/share/classes/sun/launcher/resources/launcher_zh_TW.properties	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/launcher/resources/launcher_zh_TW.properties	Tue May 10 16:19:40 2011 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
--- a/src/share/classes/sun/rmi/server/resources/rmid_es.properties	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/rmi/server/resources/rmid_es.properties	Tue May 10 16:19:40 2011 -0700
@@ -93,4 +93,4 @@
 rmid.log.snapshot.warning=\nrmid: (GRAVE) la instant\u00E1nea del log indica:
 
 # "rmid" should not be translated
-rmid.log.recover.warning=\nrmid: (ADVERTENCIA) {0}: saltando el registro del log durante la recuperaci\u00F3n:
+rmid.log.recover.warning=\nrmid: (ADVERTENCIA) {0}: se omitir\u00E1 el registro del log durante la recuperaci\u00F3n:
--- a/src/share/classes/sun/security/tools/JarSignerResources_ja.java	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/security/tools/JarSignerResources_ja.java	Tue May 10 16:19:40 2011 -0700
@@ -74,8 +74,6 @@
                 "[-digestalg <algorithm>]  \u30C0\u30A4\u30B8\u30A7\u30B9\u30C8\u30FB\u30A2\u30EB\u30B4\u30EA\u30BA\u30E0\u306E\u540D\u524D"},
         {".sigalg.algorithm.name.of.signature.algorithm",
                 "[-sigalg <algorithm>]    \u7F72\u540D\u30A2\u30EB\u30B4\u30EA\u30BA\u30E0\u306E\u540D\u524D"},
-        {".crl.auto.file.include.CRL.in.signed.jar",
-                "[-crl[:auto| <file>]        \u7F72\u540D\u4ED8\u304Djar\u306BCRL\u3092\u542B\u3081\u308B"},
         {".verify.verify.a.signed.JAR.file",
                 "[-verify]            \u7F72\u540D\u4ED8\u304DJAR\u30D5\u30A1\u30A4\u30EB\u306E\u691C\u8A3C"},
         {".verbose.suboptions.verbose.output.when.signing.verifying.",
@@ -183,17 +181,13 @@
         {"TSA.location.", "TSA\u306E\u5834\u6240: "},
         {"TSA.certificate.", "TSA\u8A3C\u660E\u66F8: "},
         {"no.response.from.the.Timestamping.Authority.",
-                "\u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u5C40\u304B\u3089\u306E\u30EC\u30B9\u30DD\u30F3\u30B9\u304C\u3042\u308A\u307E\u305B\u3093\u3002 "},
-        {"When.connecting.from.behind.a.firewall.then.an.HTTP.proxy.may.need.to.be.specified.",
-                "\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3092\u4ECB\u3057\u3066\u63A5\u7D9A\u3059\u308B\u3068\u304D\u306F\u3001\u5FC5\u8981\u306B\u5FDC\u3058\u3066HTTP\u30D7\u30ED\u30AD\u30B7\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 "},
-        {"Supply.the.following.options.to.jarsigner.",
-                "jarsigner\u306B\u6B21\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044: "},
+                "\u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u5C40\u304B\u3089\u306E\u30EC\u30B9\u30DD\u30F3\u30B9\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3092\u4ECB\u3057\u3066\u63A5\u7D9A\u3059\u308B\u3068\u304D\u306F\u3001\u5FC5\u8981\u306B\u5FDC\u3058\u3066HTTP\u307E\u305F\u306FHTTPS\u30D7\u30ED\u30AD\u30B7\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002jarsigner\u306B\u6B21\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044:"},
+        {"or", "\u307E\u305F\u306F"},
         {"Certificate.not.found.for.alias.alias.must.reference.a.valid.KeyStore.entry.containing.an.X.509.public.key.certificate.for.the",
                 "\u8A3C\u660E\u66F8\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F: {0}\u3002{1}\u306F\u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u5C40\u306EX.509\u516C\u958B\u9375\u8A3C\u660E\u66F8\u304C\u542B\u307E\u308C\u3066\u3044\u308B\u6709\u52B9\u306AKeyStore\u30A8\u30F3\u30C8\u30EA\u3092\u53C2\u7167\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002"},
         {"using.an.alternative.signing.mechanism",
                 "\u4EE3\u66FF\u7F72\u540D\u30E1\u30AB\u30CB\u30BA\u30E0\u306E\u4F7F\u7528"},
         {"entry.was.signed.on", "\u30A8\u30F3\u30C8\u30EA\u306F{0}\u306B\u7F72\u540D\u3055\u308C\u307E\u3057\u305F"},
-        {"with.a.CRL.including.d.entries", "%d\u500B\u306E\u30A8\u30F3\u30C8\u30EA\u3092\u542B\u3080CRL\u3092\u4F7F\u7528"},
         {"Warning.", "\u8B66\u544A: "},
         {"This.jar.contains.unsigned.entries.which.have.not.been.integrity.checked.",
                 "\u3053\u306Ejar\u306B\u306F\u3001\u6574\u5408\u6027\u30C1\u30A7\u30C3\u30AF\u3092\u3057\u3066\u3044\u306A\u3044\u672A\u7F72\u540D\u306E\u30A8\u30F3\u30C8\u30EA\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002 "},
--- a/src/share/classes/sun/security/util/AuthResources_de.java	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/security/util/AuthResources_de.java	Tue May 10 16:19:40 2011 -0700
@@ -111,17 +111,15 @@
 
         // com.sun.security.auth.PolicyParser
         {"expected.keystore.type", "Keystore-Typ erwartet"},
-        {"can.not.specify.Principal.with.a.",
-                "Principal kann nicht mit einer "},
-        {"wildcard.class.without.a.wildcard.name",
-                "Platzhalterklasse ohne Platzhalternamen angegeben werden"},
+        {"can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name",
+                "Principal kann nicht mit einer Platzhalterklasse ohne Platzhalternamen angegeben werden"},
         {"expected.codeBase.or.SignedBy", "codeBase oder SignedBy erwartet"},
         {"only.Principal.based.grant.entries.permitted",
                 "Nur Principal-basierte Berechtigungseintr\u00E4ge zul\u00E4ssig"},
         {"expected.permission.entry", "Berechtigungseintrag erwartet"},
         {"number.", "Nummer "},
-        {"expected.", "erwartet "},
-        {".read.end.of.file", ", Dateiende gelesen"},
+        {"expected.expect.read.end.of.file.",
+                "{0} erwartet, Dateiende gelesen"},
         {"expected.read.end.of.file", "\";\" erwartet, Dateiende gelesen"},
         {"line.", "Zeile "},
         {".expected.", ": erwartet: \""},
@@ -136,6 +134,9 @@
         {"SolarisNumericUserPrincipal.",
                 "SolarisNumericUserPrincipal: "},
         {"SolarisPrincipal.", "SolarisPrincipal: "},
+        // provided.null.name is the NullPointerException message when a
+        // developer incorrectly passes a null name to the constructor of
+        // subclasses of java.security.Principal
         {"provided.null.name", "Nullname angegeben"}
 
     };
--- a/src/share/classes/sun/security/util/AuthResources_es.java	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/security/util/AuthResources_es.java	Tue May 10 16:19:40 2011 -0700
@@ -111,17 +111,15 @@
 
         // com.sun.security.auth.PolicyParser
         {"expected.keystore.type", "se esperaba un tipo de almac\u00E9n de claves"},
-        {"can.not.specify.Principal.with.a.",
-                "no se puede especificar Principal con una "},
-        {"wildcard.class.without.a.wildcard.name",
-                "clase comod\u00EDn sin nombre de comod\u00EDn"},
+        {"can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name",
+                "no se puede especificar Principal con una clase de comod\u00EDn sin un nombre de comod\u00EDn"},
         {"expected.codeBase.or.SignedBy", "se esperaba codeBase o SignedBy"},
         {"only.Principal.based.grant.entries.permitted",
                 "s\u00F3lo se permite otorgar entradas basadas en Principal"},
         {"expected.permission.entry", "se esperaba un permiso de entrada"},
         {"number.", "n\u00FAmero "},
-        {"expected.", "se esperaba "},
-        {".read.end.of.file", ", se ha le\u00EDdo el final de archivo"},
+        {"expected.expect.read.end.of.file.",
+                "se esperaba [{0}], se ha le\u00EDdo final de archivo"},
         {"expected.read.end.of.file", "se esperaba ';', se ha le\u00EDdo el final de archivo"},
         {"line.", "l\u00EDnea "},
         {".expected.", ": se esperaba '"},
@@ -136,6 +134,9 @@
         {"SolarisNumericUserPrincipal.",
                 "SolarisNumericUserPrincipal: "},
         {"SolarisPrincipal.", "SolarisPrincipal: "},
+        // provided.null.name is the NullPointerException message when a
+        // developer incorrectly passes a null name to the constructor of
+        // subclasses of java.security.Principal
         {"provided.null.name", "se ha proporcionado un nombre nulo"}
 
     };
--- a/src/share/classes/sun/security/util/AuthResources_fr.java	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/security/util/AuthResources_fr.java	Tue May 10 16:19:40 2011 -0700
@@ -111,17 +111,15 @@
 
         // com.sun.security.auth.PolicyParser
         {"expected.keystore.type", "type de fichier de cl\u00E9s attendu"},
-        {"can.not.specify.Principal.with.a.",
-                "impossible de sp\u00E9cifier le principal avec une "},
-        {"wildcard.class.without.a.wildcard.name",
-                "classe g\u00E9n\u00E9rique sans nom g\u00E9n\u00E9rique"},
+        {"can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name",
+                "impossible de sp\u00E9cifier le principal avec une classe g\u00E9n\u00E9rique sans nom g\u00E9n\u00E9rique"},
         {"expected.codeBase.or.SignedBy", "codeBase ou SignedBy attendu"},
         {"only.Principal.based.grant.entries.permitted",
                 "seules les entr\u00E9es bas\u00E9es sur Principal sont autoris\u00E9es"},
         {"expected.permission.entry", "entr\u00E9e de droit attendue"},
         {"number.", "nombre "},
-        {"expected.", "attendu "},
-        {".read.end.of.file", ", lecture de fin de fichier"},
+        {"expected.expect.read.end.of.file.",
+                "attendu {0}, lecture de fin de fichier"},
         {"expected.read.end.of.file", "attendu ';', lecture de fin de fichier"},
         {"line.", "ligne "},
         {".expected.", ": attendu '"},
@@ -136,6 +134,9 @@
         {"SolarisNumericUserPrincipal.",
                 "SolarisNumericUserPrincipal : "},
         {"SolarisPrincipal.", "SolarisPrincipal : "},
+        // provided.null.name is the NullPointerException message when a
+        // developer incorrectly passes a null name to the constructor of
+        // subclasses of java.security.Principal
         {"provided.null.name", "nom NULL fourni"}
 
     };
--- a/src/share/classes/sun/security/util/AuthResources_it.java	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/security/util/AuthResources_it.java	Tue May 10 16:19:40 2011 -0700
@@ -111,17 +111,15 @@
 
         // com.sun.security.auth.PolicyParser
         {"expected.keystore.type", "tipo keystore previsto"},
-        {"can.not.specify.Principal.with.a.",
-                "impossibile specificare il principal con una "},
-        {"wildcard.class.without.a.wildcard.name",
-                "classe carattere jolly senza un nome carattere jolly"},
+        {"can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name",
+                "impossibile specificare un principal con una classe carattere jolly senza un nome carattere jolly"},
         {"expected.codeBase.or.SignedBy", "previsto codeBase o SignedBy"},
         {"only.Principal.based.grant.entries.permitted",
                 "sono consentiti solo valori garantiti basati sul principal"},
         {"expected.permission.entry", "prevista voce di autorizzazione"},
         {"number.", "numero "},
-        {"expected.", "previsto "},
-        {".read.end.of.file", ", letto end of file"},
+        {"expected.expect.read.end.of.file.",
+                "previsto {0}, letto end of file"},
         {"expected.read.end.of.file", "previsto ';', letto end of file"},
         {"line.", "riga "},
         {".expected.", ": previsto '"},
@@ -136,6 +134,9 @@
         {"SolarisNumericUserPrincipal.",
                 "SolarisNumericUserPrincipal: "},
         {"SolarisPrincipal.", "SolarisPrincipal: "},
+        // provided.null.name is the NullPointerException message when a
+        // developer incorrectly passes a null name to the constructor of
+        // subclasses of java.security.Principal
         {"provided.null.name", "il nome fornito \u00E8 nullo"}
 
     };
--- a/src/share/classes/sun/security/util/AuthResources_ja.java	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/security/util/AuthResources_ja.java	Tue May 10 16:19:40 2011 -0700
@@ -111,17 +111,15 @@
 
         // com.sun.security.auth.PolicyParser
         {"expected.keystore.type", "\u4E88\u60F3\u3055\u308C\u305F\u30AD\u30FC\u30B9\u30C8\u30A2\u30FB\u30BF\u30A4\u30D7"},
-        {"can.not.specify.Principal.with.a.",
-                "\u30D7\u30EA\u30F3\u30B7\u30D1\u30EB\u306F\u3001\u6B21\u306E\u3082\u306E\u3092\u4F7F\u7528\u3057\u3066\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093 "},
-        {"wildcard.class.without.a.wildcard.name",
-                "\u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9\u540D\u306E\u306A\u3044\u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9\u30FB\u30AF\u30E9\u30B9"},
+        {"can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name",
+                "\u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9\u540D\u306E\u306A\u3044\u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9\u30FB\u30AF\u30E9\u30B9\u3092\u4F7F\u7528\u3057\u3066\u3001\u30D7\u30EA\u30F3\u30B7\u30D1\u30EB\u3092\u6307\u5B9A\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093"},
         {"expected.codeBase.or.SignedBy", "\u4E88\u60F3\u3055\u308C\u305FcodeBase\u307E\u305F\u306FSignedBy"},
         {"only.Principal.based.grant.entries.permitted",
                 "\u30D7\u30EA\u30F3\u30B7\u30D1\u30EB\u30FB\u30D9\u30FC\u30B9\u306E\u30A8\u30F3\u30C8\u30EA\u306E\u307F\u304C\u8A31\u53EF\u3055\u308C\u307E\u3059\u3002"},
         {"expected.permission.entry", "\u4E88\u60F3\u3055\u308C\u305F\u30A2\u30AF\u30BB\u30B9\u6A29\u30A8\u30F3\u30C8\u30EA"},
         {"number.", "\u6570 "},
-        {"expected.", "\u4E88\u60F3\u5024 "},
-        {".read.end.of.file", ", \u30D5\u30A1\u30A4\u30EB\u306E\u7D42\u308F\u308A\u304C\u8AAD\u307F\u8FBC\u307E\u308C\u307E\u3057\u305F\u3002"},
+        {"expected.expect.read.end.of.file.",
+                "{0}\u3067\u306F\u306A\u304F\u30D5\u30A1\u30A4\u30EB\u306E\u7D42\u308F\u308A\u304C\u8AAD\u307F\u8FBC\u307E\u308C\u307E\u3057\u305F"},
         {"expected.read.end.of.file", "\u4E88\u60F3\u5024\u306F';'\u3067\u3059\u304C\u3001\u30D5\u30A1\u30A4\u30EB\u306E\u7D42\u308F\u308A\u304C\u8AAD\u307F\u8FBC\u307E\u308C\u307E\u3057\u305F"},
         {"line.", "\u884C\u756A\u53F7 "},
         {".expected.", ": \u4E88\u60F3\u5024'"},
@@ -136,6 +134,9 @@
         {"SolarisNumericUserPrincipal.",
                 "SolarisNumericUserPrincipal: "},
         {"SolarisPrincipal.", "SolarisPrincipal: "},
+        // provided.null.name is the NullPointerException message when a
+        // developer incorrectly passes a null name to the constructor of
+        // subclasses of java.security.Principal
         {"provided.null.name", "null\u306E\u540D\u524D\u304C\u6307\u5B9A\u3055\u308C\u307E\u3057\u305F"}
 
     };
--- a/src/share/classes/sun/security/util/AuthResources_ko.java	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/security/util/AuthResources_ko.java	Tue May 10 16:19:40 2011 -0700
@@ -111,17 +111,15 @@
 
         // com.sun.security.auth.PolicyParser
         {"expected.keystore.type", "\uD0A4 \uC800\uC7A5\uC18C \uC720\uD615\uC774 \uD544\uC694\uD569\uB2C8\uB2E4."},
-        {"can.not.specify.Principal.with.a.",
-                "\uC640\uC77C\uB4DC \uCE74\uB4DC \uBB38\uC790 \uC774\uB984 \uC5C6\uC774 \uC640\uC77C\uB4DC \uCE74\uB4DC \uBB38\uC790 \uD074\uB798\uC2A4\uB97C \uC0AC\uC6A9\uD558\uB294"},
-        {"wildcard.class.without.a.wildcard.name",
-                "\uC8FC\uCCB4\uB97C \uC9C0\uC815\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."},
+        {"can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name",
+                "\uC640\uC77C\uB4DC \uCE74\uB4DC \uBB38\uC790 \uC774\uB984 \uC5C6\uC774 \uC640\uC77C\uB4DC \uCE74\uB4DC \uBB38\uC790 \uD074\uB798\uC2A4\uB97C \uC0AC\uC6A9\uD558\uB294 \uC8FC\uCCB4\uB97C \uC9C0\uC815\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."},
         {"expected.codeBase.or.SignedBy", "codeBase \uB610\uB294 SignedBy\uAC00 \uD544\uC694\uD569\uB2C8\uB2E4."},
         {"only.Principal.based.grant.entries.permitted",
                 "\uC8FC\uCCB4 \uAE30\uBC18 \uAD8C\uD55C \uBD80\uC5EC \uD56D\uBAA9\uB9CC \uD5C8\uC6A9\uB429\uB2C8\uB2E4."},
         {"expected.permission.entry", "\uAD8C\uD55C \uD56D\uBAA9\uC774 \uD544\uC694\uD569\uB2C8\uB2E4."},
         {"number.", "\uC22B\uC790 "},
-        {"expected.", "\uD544\uC694\uD55C \uD56D\uBAA9: "},
-        {".read.end.of.file", ", \uD30C\uC77C\uC758 \uB05D\uC5D0 \uB3C4\uB2EC\uD588\uC2B5\uB2C8\uB2E4."},
+        {"expected.expect.read.end.of.file.",
+                "{0}\uC774(\uAC00) \uD544\uC694\uD558\uC9C0\uB9CC \uD30C\uC77C\uC758 \uB05D\uC5D0 \uB3C4\uB2EC\uD588\uC2B5\uB2C8\uB2E4."},
         {"expected.read.end.of.file", "';'\uC774 \uD544\uC694\uD558\uC9C0\uB9CC \uD30C\uC77C\uC758 \uB05D\uC5D0 \uB3C4\uB2EC\uD588\uC2B5\uB2C8\uB2E4."},
         {"line.", "\uD589 "},
         {".expected.", ": \uD544\uC694\uD55C \uD56D\uBAA9: '"},
@@ -136,6 +134,9 @@
         {"SolarisNumericUserPrincipal.",
                 "SolarisNumericUserPrincipal: "},
         {"SolarisPrincipal.", "SolarisPrincipal: "},
+        // provided.null.name is the NullPointerException message when a
+        // developer incorrectly passes a null name to the constructor of
+        // subclasses of java.security.Principal
         {"provided.null.name", "\uB110 \uC774\uB984\uC744 \uC81C\uACF5\uD588\uC2B5\uB2C8\uB2E4."}
 
     };
--- a/src/share/classes/sun/security/util/AuthResources_pt_BR.java	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/security/util/AuthResources_pt_BR.java	Tue May 10 16:19:40 2011 -0700
@@ -111,17 +111,15 @@
 
         // com.sun.security.auth.PolicyParser
         {"expected.keystore.type", "tipo de armazenamento de chaves esperado"},
-        {"can.not.specify.Principal.with.a.",
-                "n\u00E3o \u00E9 poss\u00EDvel especificar um Principal com uma "},
-        {"wildcard.class.without.a.wildcard.name",
-                "de curinga sem um nome de curinga"},
+        {"can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name",
+                "n\u00E3o \u00E9 poss\u00EDvel especificar um principal com uma classe curinga sem um nome curinga"},
         {"expected.codeBase.or.SignedBy", "CodeBase ou SignedBy esperado"},
         {"only.Principal.based.grant.entries.permitted",
                 "somente \u00E9 permitido conceder entradas com base no Principal"},
         {"expected.permission.entry", "entrada de permiss\u00E3o esperada"},
         {"number.", "n\u00FAmero "},
-        {"expected.", "esperado "},
-        {".read.end.of.file", ", fim de arquivo lido"},
+        {"expected.expect.read.end.of.file.",
+                "esperado {0}, ler fim do arquivo"},
         {"expected.read.end.of.file", "esperado ';', fim de arquivo lido"},
         {"line.", "linha "},
         {".expected.", ": esperado '"},
@@ -136,6 +134,9 @@
         {"SolarisNumericUserPrincipal.",
                 "SolarisNumericUserPrincipal: "},
         {"SolarisPrincipal.", "SolarisPrincipal: "},
+        // provided.null.name is the NullPointerException message when a
+        // developer incorrectly passes a null name to the constructor of
+        // subclasses of java.security.Principal
         {"provided.null.name", "nome nulo fornecido"}
 
     };
--- a/src/share/classes/sun/security/util/AuthResources_sv.java	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/security/util/AuthResources_sv.java	Tue May 10 16:19:40 2011 -0700
@@ -70,11 +70,11 @@
         {"Configuration.Error.Can.not.specify.multiple.entries.for.appName",
             "Konfigurationsfel:\n\tKan inte ange flera poster f\u00F6r {0}"},
         {"Configuration.Error.expected.expect.read.end.of.file.",
-                "Konfigurationsfel:\n\tf\u00F6rv\u00E4ntade [{0}], l\u00E4ste [end of file]"},
+                "Konfigurationsfel:\n\tf\u00F6rv\u00E4ntade [{0}], l\u00E4ste [filslut]"},
         {"Configuration.Error.Line.line.expected.expect.found.value.",
-            "Konfigurationsfel:\n\tLine {0}: f\u00F6rv\u00E4ntade [{1}], hittade [{2}]"},
+            "Konfigurationsfel:\n\tRad {0}: f\u00F6rv\u00E4ntade [{1}], hittade [{2}]"},
         {"Configuration.Error.Line.line.expected.expect.",
-            "Konfigurationsfel:\n\tLine {0}: f\u00F6rv\u00E4ntade [{1}]"},
+            "Konfigurationsfel:\n\tRad {0}: f\u00F6rv\u00E4ntade [{1}]"},
         {"Configuration.Error.Line.line.system.property.value.expanded.to.empty.value",
             "Konfigurationsfel:\n\tRad {0}: systemegenskapen [{1}] ut\u00F6kad till tomt v\u00E4rde"},
 
@@ -111,17 +111,15 @@
 
         // com.sun.security.auth.PolicyParser
         {"expected.keystore.type", "f\u00F6rv\u00E4ntad nyckellagertyp"},
-        {"can.not.specify.Principal.with.a.",
-                "kan inte ange identitetshavare med "},
-        {"wildcard.class.without.a.wildcard.name",
-                "jokerteckenklass utan jokerteckennamn"},
+        {"can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name",
+                "kan inte ange identitetshavare med en jokerteckenklass utan ett jokerteckennamn"},
         {"expected.codeBase.or.SignedBy", "f\u00F6rv\u00E4ntade codeBase eller SignedBy"},
         {"only.Principal.based.grant.entries.permitted",
                 "endast identitetshavarbaserade poster till\u00E5ts"},
         {"expected.permission.entry", "f\u00F6rv\u00E4ntade beh\u00F6righetspost"},
         {"number.", "antal "},
-        {"expected.", "f\u00F6rv\u00E4ntade "},
-        {".read.end.of.file", ", l\u00E4ste filslut"},
+        {"expected.expect.read.end.of.file.",
+                "f\u00F6rv\u00E4ntade {0}, l\u00E4ste filslut"},
         {"expected.read.end.of.file", "f\u00F6rv\u00E4ntade ';', l\u00E4ste filslut"},
         {"line.", "rad "},
         {".expected.", ": f\u00F6rv\u00E4ntade '"},
@@ -136,6 +134,9 @@
         {"SolarisNumericUserPrincipal.",
                 "SolarisNumericUserPrincipal: "},
         {"SolarisPrincipal.", "SolarisPrincipal: "},
+        // provided.null.name is the NullPointerException message when a
+        // developer incorrectly passes a null name to the constructor of
+        // subclasses of java.security.Principal
         {"provided.null.name", "angav null-namn"}
 
     };
--- a/src/share/classes/sun/security/util/AuthResources_zh_CN.java	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/security/util/AuthResources_zh_CN.java	Tue May 10 16:19:40 2011 -0700
@@ -111,17 +111,15 @@
 
         // com.sun.security.auth.PolicyParser
         {"expected.keystore.type", "\u5E94\u4E3A\u5BC6\u94A5\u5E93\u7C7B\u578B"},
-        {"can.not.specify.Principal.with.a.",
-                "\u6CA1\u6709\u901A\u914D\u7B26\u540D\u79F0, \u65E0\u6CD5\u4F7F\u7528"},
-        {"wildcard.class.without.a.wildcard.name",
-                "\u901A\u914D\u7B26\u7C7B\u6307\u5B9A\u4E3B\u7528\u6237"},
+        {"can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name",
+                "\u6CA1\u6709\u901A\u914D\u7B26\u540D\u79F0, \u65E0\u6CD5\u4F7F\u7528\u901A\u914D\u7B26\u7C7B\u6307\u5B9A\u4E3B\u7528\u6237"},
         {"expected.codeBase.or.SignedBy", "\u5E94\u4E3A codeBase \u6216 SignedBy"},
         {"only.Principal.based.grant.entries.permitted",
                 "\u53EA\u5141\u8BB8\u57FA\u4E8E\u4E3B\u7528\u6237\u7684\u6388\u6743\u6761\u76EE"},
         {"expected.permission.entry", "\u5E94\u4E3A\u6743\u9650\u6761\u76EE"},
         {"number.", "\u7F16\u53F7 "},
-        {"expected.", "\u5E94\u4E3A "},
-        {".read.end.of.file", ", \u8BFB\u53D6\u7684\u662F\u6587\u4EF6\u7ED3\u5C3E"},
+        {"expected.expect.read.end.of.file.",
+                "\u5E94\u4E3A{0}, \u8BFB\u53D6\u7684\u662F\u6587\u4EF6\u7ED3\u5C3E"},
         {"expected.read.end.of.file", "\u5E94\u4E3A ';', \u8BFB\u53D6\u7684\u662F\u6587\u4EF6\u7ED3\u5C3E"},
         {"line.", "\u884C "},
         {".expected.", ": \u5E94\u4E3A '"},
@@ -136,6 +134,9 @@
         {"SolarisNumericUserPrincipal.",
                 "SolarisNumericUserPrincipal: "},
         {"SolarisPrincipal.", "SolarisPrincipal: "},
+        // provided.null.name is the NullPointerException message when a
+        // developer incorrectly passes a null name to the constructor of
+        // subclasses of java.security.Principal
         {"provided.null.name", "\u63D0\u4F9B\u7684\u540D\u79F0\u4E3A\u7A7A\u503C"}
 
     };
--- a/src/share/classes/sun/security/util/AuthResources_zh_TW.java	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/security/util/AuthResources_zh_TW.java	Tue May 10 16:19:40 2011 -0700
@@ -111,17 +111,15 @@
 
         // com.sun.security.auth.PolicyParser
         {"expected.keystore.type", "\u9810\u671F\u7684\u91D1\u9470\u5132\u5B58\u5EAB\u985E\u578B"},
-        {"can.not.specify.Principal.with.a.",
-                "\u6C92\u6709\u842C\u7528\u5B57\u5143\u540D\u7A31\uFF0C\u7121\u6CD5\u6307\u5B9A"},
-        {"wildcard.class.without.a.wildcard.name",
-                "\u542B\u6709\u842C\u7528\u5B57\u5143\u985E\u5225\u7684 Principal"},
+        {"can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name",
+                "\u6C92\u6709\u842C\u7528\u5B57\u5143\u540D\u7A31\uFF0C\u7121\u6CD5\u6307\u5B9A\u542B\u6709\u842C\u7528\u5B57\u5143\u985E\u5225\u7684 Principal"},
         {"expected.codeBase.or.SignedBy", "\u9810\u671F\u7684 codeBase \u6216 SignedBy"},
         {"only.Principal.based.grant.entries.permitted",
                 "\u53EA\u5141\u8A31\u4EE5 Principal \u70BA\u57FA\u790E\u7684\u6388\u6B0A\u9805\u76EE"},
         {"expected.permission.entry", "\u9810\u671F\u7684\u6B0A\u9650\u9805\u76EE"},
         {"number.", "\u865F\u78BC "},
-        {"expected.", "\u9810\u671F\u7684 "},
-        {".read.end.of.file", "\uFF0C\u8B80\u53D6\u6A94\u6848\u7D50\u5C3E"},
+        {"expected.expect.read.end.of.file.",
+                "\u9810\u671F\u70BA {0}, \u8B80\u53D6\u6A94\u6848\u7D50\u5C3E"},
         {"expected.read.end.of.file", "\u9810\u671F\u7684 ';'\uFF0C\u8B80\u53D6\u6A94\u6848\u7D50\u5C3E"},
         {"line.", "\u884C "},
         {".expected.", ": \u9810\u671F '"},
@@ -136,6 +134,9 @@
         {"SolarisNumericUserPrincipal.",
                 "SolarisNumericUserPrincipal: "},
         {"SolarisPrincipal.", "SolarisPrincipal: "},
+        // provided.null.name is the NullPointerException message when a
+        // developer incorrectly passes a null name to the constructor of
+        // subclasses of java.security.Principal
         {"provided.null.name", "\u63D0\u4F9B\u7A7A\u503C\u540D\u7A31"}
 
     };
--- a/src/share/classes/sun/security/util/Resources_de.java	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/security/util/Resources_de.java	Tue May 10 16:19:40 2011 -0700
@@ -47,7 +47,8 @@
                 "*******************************************\n\n"},
 
         // keytool: Help part
-        {".OPTION.", " [OPTION]..."},
+// "Option" should be translated.
+        {".OPTION.", " [Option]..."},
         {"Options.", "Optionen:"},
         {"Use.keytool.help.for.all.available.commands",
                  "\"keytool -help\" f\u00FCr alle verf\u00FCgbaren Befehle verwenden"},
@@ -67,6 +68,7 @@
                 "Exportiert ein Zertifikat"}, //-exportcert
         {"Generates.a.key.pair",
                 "Generiert ein Schl\u00FCsselpaar"}, //-genkeypair
+// translation of "secret" key should be different to "private" key.
         {"Generates.a.secret.key",
                 "Generiert einen Secret Key"}, //-genseckey
         {"Generates.certificate.from.a.certificate.request",
@@ -304,8 +306,6 @@
         {"Certificate.chain.length.", "Zertifikatkettenl\u00E4nge: "},
         {"Certificate.i.1.", "Zertifikat[{0,number,integer}]:"},
         {"Certificate.fingerprint.SHA1.", "Zertifikat-Fingerprint (SHA1): "},
-        {"Entry.type.trustedCertEntry.", "Eintragstyp: trustedCertEntry\n"},
-        {"trustedCertEntry.", "trustedCertEntry,"},
         {"Keystore.type.", "Keystore-Typ: "},
         {"Keystore.provider.", "Keystore-Provider: "},
         {"Your.keystore.contains.keyStore.size.entry",
@@ -331,7 +331,7 @@
         {"Do.you.still.want.to.add.it.to.your.own.keystore.no.",
                 "M\u00F6chten Sie es trotzdem zu Ihrem eigenen Keystore hinzuf\u00FCgen? [Nein]:  "},
         {"Trust.this.certificate.no.", "Diesem Zertifikat vertrauen? [Nein]:  "},
-        {"YES", "JA"},
+        {"YES", "Ja"},
         {"New.prompt.", "Neues {0}: "},
         {"Passwords.must.differ", "Kennw\u00F6rter m\u00FCssen sich unterscheiden"},
         {"Re.enter.new.prompt.", "Neues {0} erneut eingeben: "},
@@ -368,7 +368,7 @@
                  "Alias <{0}> verweist auf einen Eintragstyp, der kein Private Key-Eintrag ist. Der Befehl -keyclone unterst\u00FCtzt nur das Clonen von Private Key-Eintr\u00E4gen"},
 
         {".WARNING.WARNING.WARNING.",
-            "*****************  WARNING WARNING WARNING  *****************"},
+            "*****************  Warnung Warnung Warnung  *****************"},
         {"Signer.d.", "Signaturgeber #%d:"},
         {"Timestamp.", "Zeitstempel:"},
         {"Signature.", "Signatur:"},
@@ -378,20 +378,10 @@
         {"No.certificate.from.the.SSL.server",
                 "Kein Zertifikat vom SSL-Server"},
 
-        // Translators of the following 5 pairs, ATTENTION:
-        // the next 5 string pairs are meant to be combined into 2 paragraphs,
-        // 1+3+4 and 2+3+5. make sure your translation also does.
         {".The.integrity.of.the.information.stored.in.your.keystore.",
-            "* Integrit\u00E4t der im Keystore gespeicherten Informationen  *"},
+            "* Die Integrit\u00E4t der Informationen, die in Ihrem Keystore gespeichert sind, *\n* wurde NICHT gepr\u00FCft. Um die Integrit\u00E4t zu pr\u00FCfen, *\n* m\u00FCssen Sie Ihr Keystore-Kennwort angeben.                  *"},
         {".The.integrity.of.the.information.stored.in.the.srckeystore.",
-            "* Integrit\u00E4t der in srckeystore gespeicherten Informationen*"},
-        {".has.NOT.been.verified.In.order.to.verify.its.integrity.",
-            "* ist NICHT verifiziert worden. Damit die Integrit\u00E4t verifiziert werden kann, *"},
-        {".you.must.provide.your.keystore.password.",
-            "* m\u00FCssen Sie Ihr Keystore-Kennwort angeben.                  *"},
-        {".you.must.provide.the.srckeystore.password.",
-            "* m\u00FCssen Sie das Kennwort f\u00FCr srckeystore angeben.                *"},
-
+            "* Die Integrit\u00E4t der Informationen, die in Ihrem Srckeystore gespeichert sind, *\n* wurde NICHT gepr\u00FCft. Um die Integrit\u00E4t zu pr\u00FCfen, *\n* m\u00FCssen Sie Ihr Srckeystore-Kennwort angeben.                  *"},
 
         {"Certificate.reply.does.not.contain.public.key.for.alias.",
                 "Zertifikatantwort enth\u00E4lt keinen Public Key f\u00FCr <{0}>"},
@@ -403,7 +393,7 @@
                 "Zertifikat der obersten Ebene in Antwort:\n"},
         {".is.not.trusted.", "... ist nicht vertrauensw\u00FCrdig. "},
         {"Install.reply.anyway.no.", "Antwort trotzdem installieren? [Nein]:  "},
-        {"NO", "NEIN"},
+        {"NO", "Nein"},
         {"Public.keys.in.reply.and.keystore.don.t.match",
                 "Public Keys in Antwort und Keystore stimmen nicht \u00FCberein"},
         {"Certificate.reply.and.certificate.in.keystore.are.identical",
--- a/src/share/classes/sun/security/util/Resources_es.java	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/security/util/Resources_es.java	Tue May 10 16:19:40 2011 -0700
@@ -47,7 +47,8 @@
                 "*******************************************\n\n"},
 
         // keytool: Help part
-        {".OPTION.", " [OPTION]..."},
+// "Option" should be translated.
+        {".OPTION.", " [Opci\u00F3n]..."},
         {"Options.", "Opciones:"},
         {"Use.keytool.help.for.all.available.commands",
                  "Utilice\"keytool -help\" para todos los comandos disponibles"},
@@ -67,6 +68,7 @@
                 "Exporta el certificado"}, //-exportcert
         {"Generates.a.key.pair",
                 "Genera un par de claves"}, //-genkeypair
+// translation of "secret" key should be different to "private" key.
         {"Generates.a.secret.key",
                 "Genera un clave secreta"}, //-genseckey
         {"Generates.certificate.from.a.certificate.request",
@@ -112,7 +114,7 @@
         {"destination.keystore.type",
                 "tipo de almac\u00E9n de claves de destino"}, //-deststoretype
         {"distinguished.name",
-                "nombre distinguido"}, //-dname
+                "nombre distintivo"}, //-dname
         {"X.509.extension",
                 "extensi\u00F3n X.509"}, //-ext
         {"output.file.name",
@@ -304,8 +306,6 @@
         {"Certificate.chain.length.", "Longitud de la Cadena de Certificado: "},
         {"Certificate.i.1.", "Certificado[{0,number,integer}]:"},
         {"Certificate.fingerprint.SHA1.", "Huella Digital de Certificado (SHA1): "},
-        {"Entry.type.trustedCertEntry.", "Tipo de Entrada: trustedCertEntry\n"},
-        {"trustedCertEntry.", "trustedCertEntry,"},
         {"Keystore.type.", "Tipo de Almac\u00E9n de Claves: "},
         {"Keystore.provider.", "Proveedor de Almac\u00E9n de Claves: "},
         {"Your.keystore.contains.keyStore.size.entry",
@@ -331,7 +331,7 @@
         {"Do.you.still.want.to.add.it.to.your.own.keystore.no.",
                 "\u00BFA\u00FAn desea agregarlo a su propio almac\u00E9n de claves? [no]:  "},
         {"Trust.this.certificate.no.", "\u00BFConfiar en este certificado? [no]:  "},
-        {"YES", "S\u00CD"},
+        {"YES", "S\u00ED"},
         {"New.prompt.", "Nuevo {0}: "},
         {"Passwords.must.differ", "Las contrase\u00F1as deben ser distintas"},
         {"Re.enter.new.prompt.", "Vuelva a escribir el nuevo {0}: "},
@@ -368,7 +368,7 @@
                  "El alias <{0}> hace referencia a un tipo de entrada que no es una clave privada. El comando -keyclone s\u00F3lo permite la clonaci\u00F3n de entradas de claves privadas"},
 
         {".WARNING.WARNING.WARNING.",
-            "*****************  WARNING WARNING WARNING  *****************"},
+            "*****************  Advertencia Advertencia Advertencia  *****************"},
         {"Signer.d.", "#%d de Firmante:"},
         {"Timestamp.", "Registro de Hora:"},
         {"Signature.", "Firma:"},
@@ -378,20 +378,10 @@
         {"No.certificate.from.the.SSL.server",
                 "Ning\u00FAn certificado del servidor SSL"},
 
-        // Translators of the following 5 pairs, ATTENTION:
-        // the next 5 string pairs are meant to be combined into 2 paragraphs,
-        // 1+3+4 and 2+3+5. make sure your translation also does.
         {".The.integrity.of.the.information.stored.in.your.keystore.",
-            "* La integridad de la informaci\u00F3n almacenada en su almac\u00E9n de claves  *"},
+            "* La integridad de la informaci\u00F3n almacenada en el almac\u00E9n de claves  *\n* NO se ha comprobado.  Para comprobar dicha integridad, *\n* debe proporcionar la contrase\u00F1a del almac\u00E9n de claves.                  *"},
         {".The.integrity.of.the.information.stored.in.the.srckeystore.",
-            "* La totalidad de la informaci\u00F3n almacenada en srckeystore*"},
-        {".has.NOT.been.verified.In.order.to.verify.its.integrity.",
-            "* NO se ha comprobado. Para comprobar dicha integridad, *"},
-        {".you.must.provide.your.keystore.password.",
-            "* deber\u00E1 proporcionar su contrase\u00F1a de almac\u00E9n de claves.                  *"},
-        {".you.must.provide.the.srckeystore.password.",
-            "* deber\u00E1 indicar la contrase\u00F1a de srckeystore.                *"},
-
+            "* La integridad de la informaci\u00F3n almacenada en srckeystore*\n* NO se ha comprobado.  Para comprobar dicha integridad, *\n* debe proporcionar la contrase\u00F1a de srckeystore.                *"},
 
         {"Certificate.reply.does.not.contain.public.key.for.alias.",
                 "La respuesta de certificado no contiene una clave p\u00FAblica para <{0}>"},
@@ -403,7 +393,7 @@
                 "Certificado de nivel superior en la respuesta:\n"},
         {".is.not.trusted.", "... no es de confianza. "},
         {"Install.reply.anyway.no.", "\u00BFInstalar respuesta de todos modos? [no]:  "},
-        {"NO", "NO"},
+        {"NO", "No"},
         {"Public.keys.in.reply.and.keystore.don.t.match",
                 "Las claves p\u00FAblicas en la respuesta y en el almac\u00E9n de claves no coinciden"},
         {"Certificate.reply.and.certificate.in.keystore.are.identical",
--- a/src/share/classes/sun/security/util/Resources_fr.java	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/security/util/Resources_fr.java	Tue May 10 16:19:40 2011 -0700
@@ -47,7 +47,8 @@
                 "*******************************************\n\n"},
 
         // keytool: Help part
-        {".OPTION.", " [OPTION]..."},
+// "Option" should be translated.
+        {".OPTION.", " [Option]..."},
         {"Options.", "Options :"},
         {"Use.keytool.help.for.all.available.commands",
                  "Utiliser \"keytool -help\" pour toutes les commandes disponibles"},
@@ -67,6 +68,7 @@
                 "Exporte le certificat"}, //-exportcert
         {"Generates.a.key.pair",
                 "G\u00E9n\u00E8re une paire de cl\u00E9s"}, //-genkeypair
+// translation of "secret" key should be different to "private" key.
         {"Generates.a.secret.key",
                 "G\u00E9n\u00E8re une cl\u00E9 secr\u00E8te"}, //-genseckey
         {"Generates.certificate.from.a.certificate.request",
@@ -304,8 +306,6 @@
         {"Certificate.chain.length.", "Longueur de cha\u00EEne du certificat : "},
         {"Certificate.i.1.", "Certificat[{0,number,integer}]:"},
         {"Certificate.fingerprint.SHA1.", "Empreinte du certificat (SHA1) : "},
-        {"Entry.type.trustedCertEntry.", "Type d'entr\u00E9e : trustedCertEntry\n"},
-        {"trustedCertEntry.", "trustedCertEntry,"},
         {"Keystore.type.", "Type de fichier de cl\u00E9s : "},
         {"Keystore.provider.", "Fournisseur de fichier de cl\u00E9s : "},
         {"Your.keystore.contains.keyStore.size.entry",
@@ -331,7 +331,7 @@
         {"Do.you.still.want.to.add.it.to.your.own.keystore.no.",
                 "Voulez-vous toujours l'ajouter \u00E0 votre fichier de cl\u00E9s ? [non] :  "},
         {"Trust.this.certificate.no.", "Faire confiance \u00E0 ce certificat ? [non] :  "},
-        {"YES", "OUI"},
+        {"YES", "Oui"},
         {"New.prompt.", "Nouveau {0} : "},
         {"Passwords.must.differ", "Les mots de passe doivent diff\u00E9rer"},
         {"Re.enter.new.prompt.", "Indiquez encore le nouveau {0} : "},
@@ -368,7 +368,7 @@
                  "L''entr\u00E9e \u00E0 laquelle l''alias <{0}> fait r\u00E9f\u00E9rence n''est pas une entr\u00E9e de type cl\u00E9 priv\u00E9e. La commande -keyclone prend uniquement en charge le clonage des cl\u00E9s priv\u00E9es"},
 
         {".WARNING.WARNING.WARNING.",
-            "*****************  WARNING WARNING WARNING  *****************"},
+            "*****************  Avertissement Avertissement Avertissement  *****************"},
         {"Signer.d.", "Signataire n\u00B0%d :"},
         {"Timestamp.", "Horodatage :"},
         {"Signature.", "Signature :"},
@@ -378,20 +378,10 @@
         {"No.certificate.from.the.SSL.server",
                 "Aucun certificat du serveur SSL"},
 
-        // Translators of the following 5 pairs, ATTENTION:
-        // the next 5 string pairs are meant to be combined into 2 paragraphs,
-        // 1+3+4 and 2+3+5. make sure your translation also does.
         {".The.integrity.of.the.information.stored.in.your.keystore.",
-            "* L'int\u00E9grit\u00E9 des informations stock\u00E9es dans votre fichier de cl\u00E9s *"},
+            "* L'int\u00E9grit\u00E9 des informations stock\u00E9es dans votre fichier de cl\u00E9s  *\n* n'a PAS \u00E9t\u00E9 v\u00E9rifi\u00E9e. Pour cela, *\n* vous devez fournir le mot de passe de votre fichier de cl\u00E9s.                  *"},
         {".The.integrity.of.the.information.stored.in.the.srckeystore.",
-            "* L'int\u00E9grit\u00E9 des informations stock\u00E9es dans le fichier de cl\u00E9s source *"},
-        {".has.NOT.been.verified.In.order.to.verify.its.integrity.",
-            "* n'a PAS \u00E9t\u00E9 v\u00E9rifi\u00E9e. Pour cela, *"},
-        {".you.must.provide.your.keystore.password.",
-            "* vous devez fournir le mot de passe de votre fichier de cl\u00E9s.                  *"},
-        {".you.must.provide.the.srckeystore.password.",
-            "* vous devez fournir le mot de passe de votre fichier de cl\u00E9s source.                  *"},
-
+            "* L'int\u00E9grit\u00E9 des informations stock\u00E9es dans le fichier de cl\u00E9s source  *\n* n'a PAS \u00E9t\u00E9 v\u00E9rifi\u00E9e. Pour cela, *\n* vous devez fournir le mot de passe de votre fichier de cl\u00E9s source.                  *"},
 
         {"Certificate.reply.does.not.contain.public.key.for.alias.",
                 "La r\u00E9ponse au certificat ne contient pas de cl\u00E9 publique pour <{0}>"},
@@ -403,7 +393,7 @@
                 "Certificat de niveau sup\u00E9rieur dans la r\u00E9ponse :\n"},
         {".is.not.trusted.", "... non s\u00E9curis\u00E9. "},
         {"Install.reply.anyway.no.", "Installer la r\u00E9ponse quand m\u00EAme ? [non] :  "},
-        {"NO", "NON"},
+        {"NO", "Non"},
         {"Public.keys.in.reply.and.keystore.don.t.match",
                 "Les cl\u00E9s publiques de la r\u00E9ponse et du fichier de cl\u00E9s ne concordent pas"},
         {"Certificate.reply.and.certificate.in.keystore.are.identical",
--- a/src/share/classes/sun/security/util/Resources_it.java	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/security/util/Resources_it.java	Tue May 10 16:19:40 2011 -0700
@@ -47,7 +47,8 @@
                 "*******************************************\n\n"},
 
         // keytool: Help part
-        {".OPTION.", " [OPTION]..."},
+// "Option" should be translated.
+        {".OPTION.", " [Opzione]..."},
         {"Options.", "Opzioni:"},
         {"Use.keytool.help.for.all.available.commands",
                  "Utilizzare \"keytool -help\" per visualizzare tutti i comandi disponibili"},
@@ -67,6 +68,7 @@
                 "Esporta il certificato"}, //-exportcert
         {"Generates.a.key.pair",
                 "Genera una coppia di chiavi"}, //-genkeypair
+// translation of "secret" key should be different to "private" key.
         {"Generates.a.secret.key",
                 "Genera una chiave segreta"}, //-genseckey
         {"Generates.certificate.from.a.certificate.request",
@@ -304,8 +306,6 @@
         {"Certificate.chain.length.", "Lunghezza catena certificati: "},
         {"Certificate.i.1.", "Certificato[{0,number,integer}]:"},
         {"Certificate.fingerprint.SHA1.", "Impronta digitale certificato (SHA1): "},
-        {"Entry.type.trustedCertEntry.", "Tipo di voce: trustedCertEntry\n"},
-        {"trustedCertEntry.", "trustedCertEntry,"},
         {"Keystore.type.", "Tipo keystore: "},
         {"Keystore.provider.", "Provider keystore: "},
         {"Your.keystore.contains.keyStore.size.entry",
@@ -368,7 +368,7 @@
                  "L''alias <{0}> fa riferimento a un tipo di voce che non \u00E8 una voce di chiave privata. Il comando -keyclone supporta solo la copia delle voci di chiave private."},
 
         {".WARNING.WARNING.WARNING.",
-            "*****************  WARNING WARNING WARNING  *****************"},
+            "*****************  Avvertenza Avvertenza Avvertenza  *****************"},
         {"Signer.d.", "Firmatario #%d:"},
         {"Timestamp.", "Indicatore orario:"},
         {"Signature.", "Firma:"},
@@ -378,20 +378,10 @@
         {"No.certificate.from.the.SSL.server",
                 "Nessun certificato dal server SSL"},
 
-        // Translators of the following 5 pairs, ATTENTION:
-        // the next 5 string pairs are meant to be combined into 2 paragraphs,
-        // 1+3+4 and 2+3+5. make sure your translation also does.
         {".The.integrity.of.the.information.stored.in.your.keystore.",
-            "* L'integrit\u00E0 delle informazioni memorizzate nel keystore    *"},
+            "* L'integrit\u00E0 delle informazioni memorizzate nel keystore *\n* NON \u00E8 stata verificata. Per verificarne l'integrit\u00E0 *\n* \u00E8 necessario fornire la password del keystore.                  *"},
         {".The.integrity.of.the.information.stored.in.the.srckeystore.",
-            "* L'integrit\u00E0 delle informazioni salvate nel srckeystore*"},
-        {".has.NOT.been.verified.In.order.to.verify.its.integrity.",
-            "* NON \u00E8 stata verificata. A tale scopo \u00E8 necessario fornire *"},
-        {".you.must.provide.your.keystore.password.",
-            "* la password del keystore.                                 *"},
-        {".you.must.provide.the.srckeystore.password.",
-            "* \u00C8 necessario fornire la password per il srckeystore.                *"},
-
+            "* L'integrit\u00E0 delle informazioni memorizzate nel srckeystore *\n* NON \u00E8 stata verificata. Per verificarne l'integrit\u00E0 *\n* \u00E8 necessario fornire la password del srckeystore.                  *"},
 
         {"Certificate.reply.does.not.contain.public.key.for.alias.",
                 "La risposta del certificato non contiene la chiave pubblica per <{0}>"},
@@ -403,7 +393,7 @@
                 "Certificato di primo livello nella risposta:\n"},
         {".is.not.trusted.", "...non \u00E8 considerato sicuro. "},
         {"Install.reply.anyway.no.", "Installare la risposta? [no]:  "},
-        {"NO", "NO"},
+        {"NO", "No"},
         {"Public.keys.in.reply.and.keystore.don.t.match",
                 "Le chiavi pubbliche nella risposta e nel keystore non corrispondono"},
         {"Certificate.reply.and.certificate.in.keystore.are.identical",
--- a/src/share/classes/sun/security/util/Resources_ja.java	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/security/util/Resources_ja.java	Tue May 10 16:19:40 2011 -0700
@@ -47,7 +47,8 @@
                 "*******************************************\n\n"},
 
         // keytool: Help part
-        {".OPTION.", " [OPTION]..."},
+// "Option" should be translated.
+        {".OPTION.", " [\u30AA\u30D7\u30B7\u30E7\u30F3]..."},
         {"Options.", "\u30AA\u30D7\u30B7\u30E7\u30F3:"},
         {"Use.keytool.help.for.all.available.commands",
                  "\u4F7F\u7528\u53EF\u80FD\u306A\u3059\u3079\u3066\u306E\u30B3\u30DE\u30F3\u30C9\u306B\u3064\u3044\u3066\u306F\"keytool -help\"\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044"},
@@ -67,6 +68,7 @@
                 "\u8A3C\u660E\u66F8\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059"}, //-exportcert
         {"Generates.a.key.pair",
                 "\u9375\u30DA\u30A2\u3092\u751F\u6210\u3057\u307E\u3059"}, //-genkeypair
+// translation of "secret" key should be different to "private" key.
         {"Generates.a.secret.key",
                 "\u79D8\u5BC6\u9375\u3092\u751F\u6210\u3057\u307E\u3059"}, //-genseckey
         {"Generates.certificate.from.a.certificate.request",
@@ -304,8 +306,6 @@
         {"Certificate.chain.length.", "\u8A3C\u660E\u66F8\u30C1\u30A7\u30FC\u30F3\u306E\u9577\u3055: "},
         {"Certificate.i.1.", "\u8A3C\u660E\u66F8[{0,number,integer}]:"},
         {"Certificate.fingerprint.SHA1.", "\u8A3C\u660E\u66F8\u306E\u30D5\u30A3\u30F3\u30AC\u30D7\u30EA\u30F3\u30C8(SHA1): "},
-        {"Entry.type.trustedCertEntry.", "\u30A8\u30F3\u30C8\u30EA\u306E\u30BF\u30A4\u30D7: trustedCertEntry\n"},
-        {"trustedCertEntry.", "trustedCertEntry,"},
         {"Keystore.type.", "\u30AD\u30FC\u30B9\u30C8\u30A2\u306E\u30BF\u30A4\u30D7: "},
         {"Keystore.provider.", "\u30AD\u30FC\u30B9\u30C8\u30A2\u30FB\u30D7\u30ED\u30D0\u30A4\u30C0: "},
         {"Your.keystore.contains.keyStore.size.entry",
@@ -368,7 +368,7 @@
                  "\u5225\u540D<{0}>\u304C\u53C2\u7167\u3057\u3066\u3044\u308B\u30A8\u30F3\u30C8\u30EA\u30FB\u30BF\u30A4\u30D7\u306F\u79D8\u5BC6\u9375\u30A8\u30F3\u30C8\u30EA\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002-keyclone\u30B3\u30DE\u30F3\u30C9\u306F\u79D8\u5BC6\u9375\u30A8\u30F3\u30C8\u30EA\u306E\u30AF\u30ED\u30FC\u30F3\u4F5C\u6210\u306E\u307F\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u307E\u3059"},
 
         {".WARNING.WARNING.WARNING.",
-            "*****************  WARNING WARNING WARNING  *****************"},
+            "*****************\u8B66\u544A \u8B66\u544A \u8B66\u544A*****************"},
         {"Signer.d.", "\u7F72\u540D\u8005\u756A\u53F7%d:"},
         {"Timestamp.", "\u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7:"},
         {"Signature.", "\u7F72\u540D:"},
@@ -378,20 +378,10 @@
         {"No.certificate.from.the.SSL.server",
                 "SSL\u30B5\u30FC\u30D0\u30FC\u304B\u3089\u306E\u8A3C\u660E\u66F8\u304C\u3042\u308A\u307E\u305B\u3093"},
 
-        // Translators of the following 5 pairs, ATTENTION:
-        // the next 5 string pairs are meant to be combined into 2 paragraphs,
-        // 1+3+4 and 2+3+5. make sure your translation also does.
         {".The.integrity.of.the.information.stored.in.your.keystore.",
-            "* \u30AD\u30FC\u30B9\u30C8\u30A2\u306B\u4FDD\u5B58\u3055\u308C\u305F\u60C5\u5831\u306E\u6574\u5408\u6027 *"},
+            "*\u30AD\u30FC\u30B9\u30C8\u30A2\u306B\u4FDD\u5B58\u3055\u308C\u305F\u60C5\u5831\u306E\u6574\u5408\u6027\u306F*\n*\u691C\u8A3C\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002\u6574\u5408\u6027\u3092\u691C\u8A3C\u3059\u308B\u306B\u306F*\n*\u30AD\u30FC\u30B9\u30C8\u30A2\u306E\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5165\u529B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002*"},
         {".The.integrity.of.the.information.stored.in.the.srckeystore.",
-            "* \u30BD\u30FC\u30B9\u30FB\u30AD\u30FC\u30B9\u30C8\u30A2\u306B\u4FDD\u5B58\u3055\u308C\u305F\u60C5\u5831\u306E\u5B8C\u5168\u6027 *"},
-        {".has.NOT.been.verified.In.order.to.verify.its.integrity.",
-            "* \u691C\u8A3C\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002\u6574\u5408\u6027\u3092\u691C\u8A3C\u3059\u308B\u306B\u306F  *"},
-        {".you.must.provide.your.keystore.password.",
-            "* \u30AD\u30FC\u30B9\u30C8\u30A2\u306E\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5165\u529B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002        *"},
-        {".you.must.provide.the.srckeystore.password.",
-            "* \u30BD\u30FC\u30B9\u30FB\u30AD\u30FC\u30B9\u30C8\u30A2\u306E\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5165\u529B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002          *"},
-
+            "*\u30BD\u30FC\u30B9\u30FB\u30AD\u30FC\u30B9\u30C8\u30A2\u306B\u4FDD\u5B58\u3055\u308C\u305F\u60C5\u5831\u306E\u6574\u5408\u6027\u306F*\n*\u691C\u8A3C\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002\u6574\u5408\u6027\u3092\u691C\u8A3C\u3059\u308B\u306B\u306F*\n*\u30BD\u30FC\u30B9\u30FB\u30AD\u30FC\u30B9\u30C8\u30A2\u306E\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5165\u529B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002*"},
 
         {"Certificate.reply.does.not.contain.public.key.for.alias.",
                 "\u8A3C\u660E\u66F8\u5FDC\u7B54\u306B\u306F\u3001<{0}>\u306E\u516C\u958B\u9375\u306F\u542B\u307E\u308C\u307E\u305B\u3093"},
--- a/src/share/classes/sun/security/util/Resources_ko.java	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/security/util/Resources_ko.java	Tue May 10 16:19:40 2011 -0700
@@ -47,7 +47,8 @@
                 "*******************************************\n\n"},
 
         // keytool: Help part
-        {".OPTION.", " [OPTION]..."},
+// "Option" should be translated.
+        {".OPTION.", " [\uC635\uC158]..."},
         {"Options.", "\uC635\uC158:"},
         {"Use.keytool.help.for.all.available.commands",
                  "\uC0AC\uC6A9 \uAC00\uB2A5\uD55C \uBAA8\uB4E0 \uBA85\uB839\uC5D0 \"keytool -help\" \uC0AC\uC6A9"},
@@ -67,6 +68,7 @@
                 "\uC778\uC99D\uC11C\uB97C \uC775\uC2A4\uD3EC\uD2B8\uD569\uB2C8\uB2E4."}, //-exportcert
         {"Generates.a.key.pair",
                 "\uD0A4 \uC30D\uC744 \uC0DD\uC131\uD569\uB2C8\uB2E4."}, //-genkeypair
+// translation of "secret" key should be different to "private" key.
         {"Generates.a.secret.key",
                 "\uBCF4\uC548 \uD0A4\uB97C \uC0DD\uC131\uD569\uB2C8\uB2E4."}, //-genseckey
         {"Generates.certificate.from.a.certificate.request",
@@ -304,8 +306,6 @@
         {"Certificate.chain.length.", "\uC778\uC99D\uC11C \uCCB4\uC778 \uAE38\uC774: "},
         {"Certificate.i.1.", "\uC778\uC99D\uC11C[{0,number,integer}]:"},
         {"Certificate.fingerprint.SHA1.", "\uC778\uC99D\uC11C \uC9C0\uBB38(SHA1): "},
-        {"Entry.type.trustedCertEntry.", "\uD56D\uBAA9 \uC720\uD615: trustedCertEntry\n"},
-        {"trustedCertEntry.", "trustedCertEntry,"},
         {"Keystore.type.", "\uD0A4 \uC800\uC7A5\uC18C \uC720\uD615: "},
         {"Keystore.provider.", "\uD0A4 \uC800\uC7A5\uC18C \uC81C\uACF5\uC790: "},
         {"Your.keystore.contains.keyStore.size.entry",
@@ -368,7 +368,7 @@
                  "<{0}> \uBCC4\uCE6D\uC740 \uC804\uC6A9 \uD0A4 \uD56D\uBAA9\uC774 \uC544\uB2CC \uD56D\uBAA9 \uC720\uD615\uC744 \uCC38\uC870\uD569\uB2C8\uB2E4. -keyclone \uBA85\uB839\uC740 \uC804\uC6A9 \uD0A4 \uD56D\uBAA9\uC758 \uBCF5\uC81C\uB9CC \uC9C0\uC6D0\uD569\uB2C8\uB2E4."},
 
         {".WARNING.WARNING.WARNING.",
-            "*****************  WARNING WARNING WARNING  *****************"},
+            "*****************  \uACBD\uACE0 \uACBD\uACE0 \uACBD\uACE0  *****************"},
         {"Signer.d.", "\uC11C\uBA85\uC790 #%d:"},
         {"Timestamp.", "\uC2DC\uAC04 \uAE30\uB85D:"},
         {"Signature.", "\uC11C\uBA85:"},
@@ -378,20 +378,10 @@
         {"No.certificate.from.the.SSL.server",
                 "SSL \uC11C\uBC84\uC5D0\uC11C \uAC00\uC838\uC628 \uC778\uC99D\uC11C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4."},
 
-        // Translators of the following 5 pairs, ATTENTION:
-        // the next 5 string pairs are meant to be combined into 2 paragraphs,
-        // 1+3+4 and 2+3+5. make sure your translation also does.
         {".The.integrity.of.the.information.stored.in.your.keystore.",
-            "* \uD0A4 \uC800\uC7A5\uC18C\uC5D0 \uC800\uC7A5\uB41C \uC815\uBCF4\uC758 \uBB34\uACB0\uC131\uC774 *"},
+            "* \uD0A4 \uC800\uC7A5\uC18C\uC5D0 \uC800\uC7A5\uB41C \uC815\uBCF4\uC758 \uBB34\uACB0\uC131\uC774  *\n* \uD655\uC778\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4! \uBB34\uACB0\uC131\uC744 \uD655\uC778\uD558\uB824\uBA74, *\n* \uD0A4 \uC800\uC7A5\uC18C \uBE44\uBC00\uBC88\uD638\uB97C \uC81C\uACF5\uD574\uC57C \uD569\uB2C8\uB2E4.                  *"},
         {".The.integrity.of.the.information.stored.in.the.srckeystore.",
-            "* srckeystore\uC5D0 \uC800\uC7A5\uB41C \uC815\uBCF4\uC758 \uBB34\uACB0\uC131\uC774*"},
-        {".has.NOT.been.verified.In.order.to.verify.its.integrity.",
-            "* \uD655\uC778\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4! \uBB34\uACB0\uC131\uC744 \uD655\uC778\uD558\uB824\uBA74 *"},
-        {".you.must.provide.your.keystore.password.",
-            "* \uD0A4 \uC800\uC7A5\uC18C \uBE44\uBC00\uBC88\uD638\uB97C \uC81C\uACF5\uD574\uC57C \uD569\uB2C8\uB2E4.                  *"},
-        {".you.must.provide.the.srckeystore.password.",
-            "* srckeystore \uBE44\uBC00\uBC88\uD638\uB97C \uC81C\uACF5\uD574\uC57C \uD569\uB2C8\uB2E4.                *"},
-
+            "* srckeystore\uC5D0 \uC800\uC7A5\uB41C \uC815\uBCF4\uC758 \uBB34\uACB0\uC131\uC774  *\n* \uD655\uC778\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4! \uBB34\uACB0\uC131\uC744 \uD655\uC778\uD558\uB824\uBA74, *\n* srckeystore \uBE44\uBC00\uBC88\uD638\uB97C \uC81C\uACF5\uD574\uC57C \uD569\uB2C8\uB2E4.                  *"},
 
         {"Certificate.reply.does.not.contain.public.key.for.alias.",
                 "\uC778\uC99D\uC11C \uD68C\uC2E0\uC5D0 <{0}>\uC5D0 \uB300\uD55C \uACF5\uC6A9 \uD0A4\uAC00 \uD3EC\uD568\uB418\uC5B4 \uC788\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4."},
--- a/src/share/classes/sun/security/util/Resources_pt_BR.java	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/security/util/Resources_pt_BR.java	Tue May 10 16:19:40 2011 -0700
@@ -47,7 +47,8 @@
                 "*******************************************\n\n"},
 
         // keytool: Help part
-        {".OPTION.", " [OPTION]..."},
+// "Option" should be translated.
+        {".OPTION.", " [Op\u00E7\u00E3o]..."},
         {"Options.", "Op\u00E7\u00F5es:"},
         {"Use.keytool.help.for.all.available.commands",
                  "Use \"keytool -help\" para todos os comandos dispon\u00EDveis"},
@@ -67,8 +68,9 @@
                 "Exporta o certificado"}, //-exportcert
         {"Generates.a.key.pair",
                 "Gera um par de chaves"}, //-genkeypair
+// translation of "secret" key should be different to "private" key.
         {"Generates.a.secret.key",
-                "Gera uma chave secreta"}, //-genseckey
+                "Gera uma chave Secreta"}, //-genseckey
         {"Generates.certificate.from.a.certificate.request",
                 "Gera um certificado de uma solicita\u00E7\u00E3o de certificado"}, //-gencert
         {"Generates.CRL", "Gera CRL"}, //-gencrl
@@ -304,8 +306,6 @@
         {"Certificate.chain.length.", "Comprimento da cadeia de certificados: "},
         {"Certificate.i.1.", "Certificado[{0,number,integer}]:"},
         {"Certificate.fingerprint.SHA1.", "Fingerprint (MD5) do certificado: "},
-        {"Entry.type.trustedCertEntry.", "Tipo de entrada: trustedCertEntry\n"},
-        {"trustedCertEntry.", "trustedCertEntry,"},
         {"Keystore.type.", "Tipo de \u00E1rea de armazenamento de chaves: "},
         {"Keystore.provider.", "Fornecedor da \u00E1rea de armazenamento de chaves: "},
         {"Your.keystore.contains.keyStore.size.entry",
@@ -331,7 +331,7 @@
         {"Do.you.still.want.to.add.it.to.your.own.keystore.no.",
                 "Ainda deseja adicion\u00E1-lo \u00E0 sua \u00E1rea de armazenamento de chaves? [n\u00E3o]:  "},
         {"Trust.this.certificate.no.", "Confiar neste certificado? [n\u00E3o]:  "},
-        {"YES", "SIM"},
+        {"YES", "Sim"},
         {"New.prompt.", "Nova {0}: "},
         {"Passwords.must.differ", "As senhas devem ser diferentes"},
         {"Re.enter.new.prompt.", "Informe novamente a nova {0}: "},
@@ -368,7 +368,7 @@
                  "O alias <{0}> faz refer\u00EAncia a um tipo de entrada que n\u00E3o \u00E9 uma entrada de chave privada. O comando -keyclone oferece suporte somente \u00E0 clonagem de entradas de chave privada"},
 
         {".WARNING.WARNING.WARNING.",
-            "*****************  WARNING WARNING WARNING  *****************"},
+            "*****************  Advert\u00EAncia Advert\u00EAncia Advert\u00EAncia  *****************"},
         {"Signer.d.", "Signat\u00E1rio #%d:"},
         {"Timestamp.", "Timestamp:"},
         {"Signature.", "Assinatura:"},
@@ -378,20 +378,10 @@
         {"No.certificate.from.the.SSL.server",
                 "N\u00E3o \u00E9 um certificado do servidor SSL"},
 
-        // Translators of the following 5 pairs, ATTENTION:
-        // the next 5 string pairs are meant to be combined into 2 paragraphs,
-        // 1+3+4 and 2+3+5. make sure your translation also does.
         {".The.integrity.of.the.information.stored.in.your.keystore.",
-            "* A integridade das informa\u00E7\u00F5es armazenadas na sua \u00E1rea de armazenamento de chaves  *"},
+            "* A integridade das informa\u00E7\u00F5es armazenadas na sua \u00E1rea de armazenamento de chaves  *\n* N\u00C3O foi verificada!  Para que seja poss\u00EDvel verificar sua integridade, *\n* voc\u00EA deve fornecer a senha da \u00E1rea de armazenamento de chaves.                  *"},
         {".The.integrity.of.the.information.stored.in.the.srckeystore.",
-            "* A integridade das informa\u00E7\u00F5es armazenadas no srckeystore*"},
-        {".has.NOT.been.verified.In.order.to.verify.its.integrity.",
-            "* N\u00C3O foi verificada! Para verificar a integridade destas informa\u00E7\u00F5es, *"},
-        {".you.must.provide.your.keystore.password.",
-            "* voc\u00EA deve fornecer a senha da sua \u00E1rea de armazenamento de chaves.                 *"},
-        {".you.must.provide.the.srckeystore.password.",
-            "* voc\u00EA deve fornecer a senha do srckeystore.                 *"},
-
+            "* A integridade das informa\u00E7\u00F5es armazenadas no srckeystore  *\n* N\u00C3O foi verificada!  Para que seja poss\u00EDvel verificar sua integridade, *\n* voc\u00EA deve fornecer a senha do srckeystore.                  *"},
 
         {"Certificate.reply.does.not.contain.public.key.for.alias.",
                 "A resposta do certificado n\u00E3o cont\u00E9m a chave p\u00FAblica de <{0}>"},
@@ -403,7 +393,7 @@
                 "Certificado de n\u00EDvel superior na resposta:\n"},
         {".is.not.trusted.", "... n\u00E3o \u00E9 confi\u00E1vel. "},
         {"Install.reply.anyway.no.", "Instalar resposta assim mesmo? [n\u00E3o]:  "},
-        {"NO", "N\u00C3O"},
+        {"NO", "N\u00E3o"},
         {"Public.keys.in.reply.and.keystore.don.t.match",
                 "As chaves p\u00FAblicas da resposta e da \u00E1rea de armazenamento de chaves n\u00E3o correspondem"},
         {"Certificate.reply.and.certificate.in.keystore.are.identical",
@@ -440,9 +430,9 @@
                 "Advert\u00EAncia: Argumento(s) inv\u00E1lido(s) para o construtor: {0}"},
         {"Illegal.Principal.Type.type", "Tipo Principal Inv\u00E1lido: {0}"},
         {"Illegal.option.option", "Op\u00E7\u00E3o inv\u00E1lida: {0}"},
-        {"Usage.policytool.options.", "Uso: policytool [options]"},
+        {"Usage.policytool.options.", "Uso: policytool [op\u00E7\u00F5es]"},
         {".file.file.policy.file.location",
-                "  [-file <file>]    localiza\u00E7\u00E3o do arquivo de pol\u00EDtica"},
+                "  [-file <arquivo>]    localiza\u00E7\u00E3o do arquivo de pol\u00EDtica"},
         {"New", "Novo"},
         {"Open", "Abrir"},
         {"Save", "Salvar"},
--- a/src/share/classes/sun/security/util/Resources_sv.java	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/security/util/Resources_sv.java	Tue May 10 16:19:40 2011 -0700
@@ -47,7 +47,8 @@
                 "*******************************************\n\n"},
 
         // keytool: Help part
-        {".OPTION.", " [OPTION]..."},
+// "Option" should be translated.
+        {".OPTION.", " [Alternativ]..."},
         {"Options.", "Alternativ:"},
         {"Use.keytool.help.for.all.available.commands",
                  "L\u00E4s \"Hj\u00E4lp - Nyckelverktyg\" f\u00F6r alla tillg\u00E4ngliga kommandon"},
@@ -67,6 +68,7 @@
                 "Exporterar certifikat"}, //-exportcert
         {"Generates.a.key.pair",
                 "Genererar nyckelpar"}, //-genkeypair
+// translation of "secret" key should be different to "private" key.
         {"Generates.a.secret.key",
                 "Genererar hemlig nyckel"}, //-genseckey
         {"Generates.certificate.from.a.certificate.request",
@@ -304,8 +306,6 @@
         {"Certificate.chain.length.", "L\u00E4ngd p\u00E5 certifikatskedja: "},
         {"Certificate.i.1.", "Certifikat[{0,number,integer}]:"},
         {"Certificate.fingerprint.SHA1.", "Certifikatets fingeravtryck (SHA1): "},
-        {"Entry.type.trustedCertEntry.", "Posttyp: trustedCertEntry\n"},
-        {"trustedCertEntry.", "trustedCertEntry,"},
         {"Keystore.type.", "Nyckellagertyp: "},
         {"Keystore.provider.", "Nyckellagerleverant\u00F6r: "},
         {"Your.keystore.contains.keyStore.size.entry",
@@ -331,7 +331,7 @@
         {"Do.you.still.want.to.add.it.to.your.own.keystore.no.",
                 "Vill du fortfarande l\u00E4gga till det i ditt eget nyckellagret? [nej]:  "},
         {"Trust.this.certificate.no.", "Litar du p\u00E5 det h\u00E4r certifikatet? [nej]:  "},
-        {"YES", "JA"},
+        {"YES", "Ja"},
         {"New.prompt.", "Nytt {0}: "},
         {"Passwords.must.differ", "L\u00F6senorden m\u00E5ste vara olika"},
         {"Re.enter.new.prompt.", "Ange nytt {0} igen: "},
@@ -368,7 +368,7 @@
                  "Aliaset <{0}> refererar till en posttyp som inte \u00E4r n\u00E5gon privat nyckelpost. Kommandot -keyclone har endast st\u00F6d f\u00F6r kloning av privata nyckelposter"},
 
         {".WARNING.WARNING.WARNING.",
-            "*****************  WARNING WARNING WARNING  *****************"},
+            "*****************  Varning Varning Varning  *****************"},
         {"Signer.d.", "Signerare #%d:"},
         {"Timestamp.", "Tidsst\u00E4mpel:"},
         {"Signature.", "Underskrift:"},
@@ -378,20 +378,10 @@
         {"No.certificate.from.the.SSL.server",
                 "Inget certifikat fr\u00E5n SSL-servern"},
 
-        // Translators of the following 5 pairs, ATTENTION:
-        // the next 5 string pairs are meant to be combined into 2 paragraphs,
-        // 1+3+4 and 2+3+5. make sure your translation also does.
         {".The.integrity.of.the.information.stored.in.your.keystore.",
-            "* Integriteten f\u00F6r den information som lagras i nyckellagerfilen  *"},
+            "* Integriteten f\u00F6r den information som lagras i nyckellagerfilen  *\n* har INTE verifierats!  Om du vill verifiera dess integritet *\n* m\u00E5ste du ange l\u00F6senordet f\u00F6r nyckellagret.                  *"},
         {".The.integrity.of.the.information.stored.in.the.srckeystore.",
-            "* Integriteten f\u00F6r informationen som lagras i srckeystore*"},
-        {".has.NOT.been.verified.In.order.to.verify.its.integrity.",
-            "* har INTE verifierats!  Om du vill verifiera dess integritet, *"},
-        {".you.must.provide.your.keystore.password.",
-            "* m\u00E5ste du ange nyckellagerl\u00F6senord.                  *"},
-        {".you.must.provide.the.srckeystore.password.",
-            "* du m\u00E5ste ange l\u00F6senordet f\u00F6r srckeystore.                *"},
-
+            "* Integriteten f\u00F6r den information som lagras i srckeystore*\n* har INTE verifierats!  Om du vill verifiera dess integritet *\n* m\u00E5ste du ange l\u00F6senordet f\u00F6r srckeystore.                *"},
 
         {"Certificate.reply.does.not.contain.public.key.for.alias.",
                 "Certifikatsvaret inneh\u00E5ller inte n\u00E5gon offentlig nyckel f\u00F6r <{0}>"},
@@ -403,7 +393,7 @@
                 "Toppniv\u00E5certifikatet i svaret:\n"},
         {".is.not.trusted.", "... \u00E4r inte betrott. "},
         {"Install.reply.anyway.no.", "Vill du installera svaret \u00E4nd\u00E5? [nej]:  "},
-        {"NO", "NEJ"},
+        {"NO", "Nej"},
         {"Public.keys.in.reply.and.keystore.don.t.match",
                 "De offentliga nycklarna i svaret och nyckellagret matchar inte varandra"},
         {"Certificate.reply.and.certificate.in.keystore.are.identical",
@@ -639,9 +629,9 @@
         {"expected.permission.entry", "f\u00F6rv\u00E4ntade beh\u00F6righetspost"},
         {"number.", "antal "},
         {"expected.expect.read.end.of.file.",
-                "f\u00F6rv\u00E4ntade [{0}], l\u00E4ste [end of file]"},
+                "f\u00F6rv\u00E4ntade [{0}], l\u00E4ste [filslut]"},
         {"expected.read.end.of.file.",
-                "f\u00F6rv\u00E4ntade [;], l\u00E4ste [end of file]"},
+                "f\u00F6rv\u00E4ntade [;], l\u00E4ste [filslut]"},
         {"line.number.msg", "rad {0}: {1}"},
         {"line.number.expected.expect.found.actual.",
                 "rad {0}: f\u00F6rv\u00E4ntade [{1}], hittade [{2}]"},
--- a/src/share/classes/sun/security/util/Resources_zh_TW.java	Tue May 10 14:56:33 2011 -0700
+++ b/src/share/classes/sun/security/util/Resources_zh_TW.java	Tue May 10 16:19:40 2011 -0700
@@ -47,7 +47,8 @@
                 "*******************************************\n\n"},
 
         // keytool: Help part
-        {".OPTION.", " [OPTION]..."},
+// "Option" should be translated.
+        {".OPTION.", " [\u9078\u9805]..."},
         {"Options.", "\u9078\u9805:"},
         {"Use.keytool.help.for.all.available.commands",
                  "\u4F7F\u7528 \"keytool -help\" \u53D6\u5F97\u6240\u6709\u53EF\u7528\u7684\u547D\u4EE4"},
@@ -67,6 +68,7 @@
                 "\u532F\u51FA\u6191\u8B49"}, //-exportcert
         {"Generates.a.key.pair",
                 "\u7522\u751F\u91D1\u9470\u7D44"}, //-genkeypair
+// translation of "secret" key should be different to "private" key.
         {"Generates.a.secret.key",
                 "\u7522\u751F\u79D8\u5BC6\u91D1\u9470"}, //-genseckey
         {"Generates.certificate.from.a.certificate.request",
@@ -304,8 +306,6 @@
         {"Certificate.chain.length.", "\u6191\u8B49\u93C8\u9577\u5EA6: "},
         {"Certificate.i.1.", "\u6191\u8B49 [{0,number,integer}]:"},
         {"Certificate.fingerprint.SHA1.", "\u6191\u8B49\u6307\u7D0B (SHA1): "},
-        {"Entry.type.trustedCertEntry.", "\u8F38\u5165\u985E\u578B: trustedCertEntry\n"},
-        {"trustedCertEntry.", "trustedCertEntry,"},
         {"Keystore.type.", "\u91D1\u9470\u5132\u5B58\u5EAB\u985E\u578B: "},
         {"Keystore.provider.", "\u91D1\u9470\u5132\u5B58\u5EAB\u63D0\u4F9B\u8005: "},
         {"Your.keystore.contains.keyStore.size.entry",
@@ -368,7 +368,7 @@
                  "\u5225\u540D <{0}> \u6240\u53C3\u7167\u7684\u9805\u76EE\u4E0D\u662F\u79C1\u5BC6\u91D1\u9470\u985E\u578B\u3002-keyclone \u547D\u4EE4\u50C5\u652F\u63F4\u79C1\u5BC6\u91D1\u9470\u9805\u76EE\u7684\u8907\u88FD"},
 
         {".WARNING.WARNING.WARNING.",
-            "*****************  WARNING WARNING WARNING  *****************"},
+            "*****************  \u8B66\u544A \u8B66\u544A \u8B66\u544A  *****************"},
         {"Signer.d.", "\u7C3D\u7F72\u8005 #%d:"},
         {"Timestamp.", "\u6642\u6233:"},
         {"Signature.", "\u7C3D\u7AE0:"},
@@ -378,20 +378,10 @@
         {"No.certificate.from.the.SSL.server",
                 "\u6C92\u6709\u4F86\u81EA SSL \u4F3A\u670D\u5668\u7684\u6191\u8B49"},
 
-        // Translators of the following 5 pairs, ATTENTION:
-        // the next 5 string pairs are meant to be combined into 2 paragraphs,
-        // 1+3+4 and 2+3+5. make sure your translation also does.
         {".The.integrity.of.the.information.stored.in.your.keystore.",
-            "* \u8CC7\u8A0A\u7684\u5B8C\u6574\u6027\u5DF2\u5132\u5B58\u5728\u60A8\u7684\u91D1\u9470\u5132\u5B58\u5EAB\u4E2D  *"},
+            "* \u5C1A\u672A\u9A57\u8B49\u5132\u5B58\u65BC\u91D1\u9470\u5132\u5B58\u5EAB\u4E2D\u8CC7\u8A0A  *\n* \u7684\u5B8C\u6574\u6027\uFF01\u82E5\u8981\u9A57\u8B49\u5176\u5B8C\u6574\u6027\uFF0C*\n* \u60A8\u5FC5\u9808\u63D0\u4F9B\u60A8\u7684\u91D1\u9470\u5132\u5B58\u5EAB\u5BC6\u78BC\u3002                  *"},
         {".The.integrity.of.the.information.stored.in.the.srckeystore.",
-            "* \u8CC7\u8A0A\u7684\u5B8C\u6574\u6027\u5DF2\u5132\u5B58\u5728 srckeystore \u4E2D *"},
-        {".has.NOT.been.verified.In.order.to.verify.its.integrity.",
-            "* \u5C1A\u672A\u88AB\u9A57\u8B49\uFF01\u70BA\u4E86\u9A57\u8B49\u5176\u5B8C\u6574\u6027\uFF0C*"},
-        {".you.must.provide.your.keystore.password.",
-            "* \u60A8\u5FC5\u9808\u63D0\u4F9B\u60A8\u91D1\u9470\u5132\u5B58\u5EAB\u7684\u5BC6\u78BC\u3002                 *"},
-        {".you.must.provide.the.srckeystore.password.",
-            "* \u60A8\u5FC5\u9808\u63D0\u4F9B srckeystore \u5BC6\u78BC\u3002               *"},
-
+            "* \u5C1A\u672A\u9A57\u8B49\u5132\u5B58\u65BC srckeystore \u4E2D\u8CC7\u8A0A*\n* \u7684\u5B8C\u6574\u6027\uFF01\u82E5\u8981\u9A57\u8B49\u5176\u5B8C\u6574\u6027\uFF0C\u60A8\u5FC5\u9808 *\n* \u63D0\u4F9B srckeystore \u5BC6\u78BC\u3002          *"},
 
         {"Certificate.reply.does.not.contain.public.key.for.alias.",
                 "\u6191\u8B49\u56DE\u8986\u4E26\u672A\u5305\u542B <{0}> \u7684\u516C\u958B\u91D1\u9470"},