changeset 2814:654318363866

Merge
author yan
date Thu, 14 May 2009 00:17:25 -0700
parents 05d460e4a182 c33e7d38c921
children 871a18365b14
files hotspot/make/jprt.config jaxp/src/share/classes/com/sun/org/apache/xalan/internal/client/XSLTProcessorApplet.java jaxp/src/share/classes/com/sun/org/apache/xalan/internal/client/package.html jdk/src/share/native/sun/java2d/pipe/RenderBuffer.c
diffstat 360 files changed, 62318 insertions(+), 38384 deletions(-) [+]
line wrap: on
line diff
--- a/.hgtags	Tue May 12 15:21:55 2009 +0900
+++ b/.hgtags	Thu May 14 00:17:25 2009 -0700
@@ -31,3 +31,5 @@
 15096652c4d48dfb9fc0b2cb135304db94c65ba0 jdk7-b54
 c8b275d62d6b0a980c510e839b70292245863e85 jdk7-b55
 a8134c4ee2cf451cf9b5e1609f39d83ecd53acc5 jdk7-b56
+b44f05654c26fcd1f995e712992f9b07ffd7c0c6 jdk7-b57
+d60a9ce3c3eabf28f5d50ae839d18be04a551bc2 jdk7-b58
--- a/.hgtags-top-repo	Tue May 12 15:21:55 2009 +0900
+++ b/.hgtags-top-repo	Thu May 14 00:17:25 2009 -0700
@@ -31,3 +31,5 @@
 2ef382b1bbd58a68e668391c6145a4b2066c5b96 jdk7-b54
 aea0ace7a1e43619800931d42bbf69c579361c2d jdk7-b55
 ba12117a5e6c918578d6b2a8c693232a33289024 jdk7-b56
+ffd09e767dfa6d21466183a400f72cf62d53297f jdk7-b57
+59b497130f82ec809c245ffb5e521e3a5fabf8af jdk7-b58
--- a/corba/.hgtags	Tue May 12 15:21:55 2009 +0900
+++ b/corba/.hgtags	Thu May 14 00:17:25 2009 -0700
@@ -31,3 +31,5 @@
 8130ac858d6789d5853d23044ba4a992afda574a jdk7-b54
 7a869f16ba83060c34b77620406cfa89d1cd7084 jdk7-b55
 553a664b807bb3a3c93f3b5a3c20ff0a90e08371 jdk7-b56
+972c6157fae57850694675da82fd58a17930db0a jdk7-b57
+2e3b8edab3ef55406494d3dd562e06882e6fc15e jdk7-b58
--- a/corba/make/com/sun/corba/se/sources/Makefile	Tue May 12 15:21:55 2009 +0900
+++ b/corba/make/com/sun/corba/se/sources/Makefile	Thu May 14 00:17:25 2009 -0700
@@ -46,6 +46,8 @@
 include $(CORBA_JMK_DIRECTORY)com_sun_corba_se_PortableActivationIDL.jmk
 include $(CORBA_JMK_DIRECTORY)com_sun_corba_se_impl_logging.jmk
 
+FILES_java += com/sun/corba/se/org/omg/CORBA/ORB.java
+
 #
 # Dirs
 #
--- a/corba/src/share/classes/com/sun/corba/se/impl/presentation/rmi/IDLNameTranslatorImpl.java	Tue May 12 15:21:55 2009 +0900
+++ b/corba/src/share/classes/com/sun/corba/se/impl/presentation/rmi/IDLNameTranslatorImpl.java	Thu May 14 00:17:25 2009 -0700
@@ -202,6 +202,10 @@
     private IDLNameTranslatorImpl(Class[] interfaces)
     {
 
+        SecurityManager s = System.getSecurityManager();
+        if (s != null) {
+            s.checkPermission(new DynamicAccessPermission("access"));
+        }
         try {
             IDLTypesUtil idlTypesUtil = new IDLTypesUtil();
             for (int ctr=0; ctr<interfaces.length; ctr++)
--- a/corba/src/share/classes/com/sun/tools/corba/se/idl/first.set	Tue May 12 15:21:55 2009 +0900
+++ b/corba/src/share/classes/com/sun/tools/corba/se/idl/first.set	Thu May 14 00:17:25 2009 -0700
@@ -1,11 +1,35 @@
+/*
+ * Copyright 1999 Sun Microsystems, Inc.  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
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Sun designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Sun in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+ * CA 95054 USA or visit www.sun.com if you need additional information or
+ * have any questions.
+ */
+
 /*
  *    COMPONENT_NAME:  idl.parser
- *                                                 
+ *
  *    ORIGINS: 27
  *
- *    THIS PRODUCT CONTAINS RESTRICTED MATERIALS OF IBM                        
  *    5639-D57, (C) COPYRIGHT International Business Machines Corp., 1997, 1998
- *                                        
+ *
  */
 
 CORBA IDL
--- a/corba/src/share/classes/com/sun/tools/corba/se/idl/follow.set	Tue May 12 15:21:55 2009 +0900
+++ b/corba/src/share/classes/com/sun/tools/corba/se/idl/follow.set	Thu May 14 00:17:25 2009 -0700
@@ -1,11 +1,35 @@
+/*
+ * Copyright 1999 Sun Microsystems, Inc.  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
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Sun designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Sun in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+ * CA 95054 USA or visit www.sun.com if you need additional information or
+ * have any questions.
+ */
+
 /*
  *    COMPONENT_NAME:  idl.parser
- *                                                 
+ *
  *    ORIGINS: 27
  *
- *    THIS PRODUCT CONTAINS RESTRICTED MATERIALS OF IBM                        
  *    5639-D57, (C) COPYRIGHT International Business Machines Corp., 1997, 1998
- *                                        
+ *
  */
 
 CORBA IDL
--- a/corba/src/share/classes/com/sun/tools/corba/se/idl/grammar.idl	Tue May 12 15:21:55 2009 +0900
+++ b/corba/src/share/classes/com/sun/tools/corba/se/idl/grammar.idl	Thu May 14 00:17:25 2009 -0700
@@ -1,14 +1,38 @@
+/*
+ * Copyright 1999 Sun Microsystems, Inc.  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
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Sun designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Sun in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+ * CA 95054 USA or visit www.sun.com if you need additional information or
+ * have any questions.
+ */
+
 /*
  *    COMPONENT_NAME:  idl.parser
- *                                                 
+ *
  *    ORIGINS: 27
  *
- *    THIS PRODUCT CONTAINS RESTRICTED MATERIALS OF IBM                        
  *    5639-D57, (C) COPYRIGHT International Business Machines Corp., 1997, 1998
- *                                        
+ *
  */
 
-CORBA 2.3 IDL 
+CORBA 2.3 IDL
 ---------------
 
 (1) <specification>	<definition><specification'>
@@ -83,7 +107,7 @@
 
 (16) <vad>		e
 			<export> <vad>
-		
+
 (17) <value_dcl>	<value_header> "{" <value_element> <ve> "}"
 
 (17) <ve>		e
@@ -91,9 +115,9 @@
 
 (18) <value_header>	"custom" "valuetype" <id> <value_inheritance_spec>
 			"valuetype" <id> <value_inheritance_spec>
-			"custom" "valuetype" <id> 
-			"valuetype" <id> 
-			
+			"custom" "valuetype" <id>
+			"valuetype" <id>
+
 (19) <value_inheritance_spec>	<opt_inherits> <opt_supports>
 
 (19) <opt_inherits>	e
@@ -107,7 +131,7 @@
 			"supports" <interface_name> <interface_name_list>
 
 (19) <interface_name_list>  e
-			"," <interface_name> <interface_name_list> 
+			"," <interface_name> <interface_name_list>
 
 (20) <value_name>	<scoped_name>
 
@@ -121,7 +145,7 @@
 (23) <init_dcl>		"factory" <id> "(" ")"
 			"factory" <id> "(" <init_param_dcls> ")"
 
-(24) <init_param_dcls>	<init_param_decl> 
+(24) <init_param_dcls>	<init_param_decl>
 			<init_param_decl> "," <init_param_dcls>
 
 (25) <init_param_dcl>	<init_param_attribute> <param_type_spec> <simple_declarator>
@@ -349,7 +373,7 @@
 
 (87) <op_dcl''>		e
 			<context_expr>
-			<raises_expr> 
+			<raises_expr>
 			<raises_expr> <context_expr>
 
 (88) <op_attribute>	"oneway"
@@ -386,7 +410,7 @@
 			<wide_string_type>
 			<scoped_name>
 
-(96) <fixed_pt_type>	"fixed" "<" <positive_int_const> "," <positive_int_const> ">" 
+(96) <fixed_pt_type>	"fixed" "<" <positive_int_const> "," <positive_int_const> ">"
 
 (97) <fixed_pt_const_type> "fixed"
 
--- a/corba/src/share/classes/com/sun/tools/corba/se/idl/grammar3.idl	Tue May 12 15:21:55 2009 +0900
+++ b/corba/src/share/classes/com/sun/tools/corba/se/idl/grammar3.idl	Thu May 14 00:17:25 2009 -0700
@@ -1,11 +1,35 @@
+/*
+ * Copyright 1999 Sun Microsystems, Inc.  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
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Sun designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Sun in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+ * CA 95054 USA or visit www.sun.com if you need additional information or
+ * have any questions.
+ */
+
 /*
  *    COMPONENT_NAME:  idl.parser
- *                                                 
+ *
  *    ORIGINS: 27
  *
- *    THIS PRODUCT CONTAINS RESTRICTED MATERIALS OF IBM                        
  *    5639-D57, (C) COPYRIGHT International Business Machines Corp., 1997, 1998
- *                                        
+ *
  */
 
 (1) <specification>	<imports> <definition> <specification'> // CORBA3
@@ -98,7 +122,7 @@
 
 (16) <vad>		e
 			<export> <vad>
-		
+
 (17) <value_dcl>	<value_header> "{" <value_element> <ve> "}"
 
 (17) <ve>		e
@@ -106,9 +130,9 @@
 
 (18) <value_header>	"custom" "valuetype" <id> <value_inheritance_spec>
 			"valuetype" <id> <value_inheritance_spec>
-			"custom" "valuetype" <id> 
-			"valuetype" <id> 
-			
+			"custom" "valuetype" <id>
+			"valuetype" <id>
+
 (19) <value_inheritance_spec>	<opt_inherits> <opt_supports>
 
 (19) <opt_inherits>	e
@@ -122,7 +146,7 @@
 			"supports" <interface_name> <interface_name_list>
 
 (19) <interface_name_list>  e
-			"," <interface_name> <interface_name_list> 
+			"," <interface_name> <interface_name_list>
 
 (20) <value_name>	<scoped_name>
 
@@ -136,7 +160,7 @@
 (23) <init_dcl>		"factory" <id> "(" ")"
 			"factory" <id> "(" <init_param_dcls> ")"
 
-(24) <init_param_dcls>	<init_param_dcl> 
+(24) <init_param_dcls>	<init_param_dcl>
 			<init_param_dcl> "," <init_param_dcls>
 
 (25) <init_param_dcl>	<init_param_attribute> <param_type_spec> <simple_declarator>
@@ -351,7 +375,7 @@
 (85) <readonly_attr_spec>   <readonly_attr_header> <readonly_attr_declarator>	// CORBA3
 
 (85) <readonly_attr_header> "readonly" "attribute" <param_type_spec>	// CORBA3
-			
+
 (85) <readonly_attr_declarator> <simple_declarator> <get_excep_expr>	// CORBA3
 			<simple_declarator> <sds>   // CORBA3
 
@@ -389,7 +413,7 @@
 
 (87) <op_dcl''>		e
 			<context_expr>
-			<raises_expr> 
+			<raises_expr>
 			<raises_expr> <context_expr>
 
 (88) <op_attribute>	"oneway"
@@ -426,7 +450,7 @@
 			<wide_string_type>
 			<scoped_name>
 
-(96) <fixed_pt_type>	"fixed" "<" <positive_int_const> "," <positive_int_const> ">" 
+(96) <fixed_pt_type>	"fixed" "<" <positive_int_const> "," <positive_int_const> ">"
 
 (97) <fixed_pt_const_type> "fixed"
 
@@ -450,7 +474,7 @@
 
 (204) <snames>		e
 			"," <scoped_name> <snames>
-			
+
 (205) <component_inheritance_spec> ":" <scoped_name>
 
 (206) <component_body>	<component_export> <ces>
@@ -458,8 +482,8 @@
 (206) <ces>		e
 			<component_export> <ces>
 
-(207) <component_export>    <provides_dcl> ";" 
-			<uses_dcl> ";" 
+(207) <component_export>    <provides_dcl> ";"
+			<uses_dcl> ";"
 			<emits_dcl> ";"
 			<publishes_dcl> ";"
 			<consumes_dcl> ";"
--- a/corba/src/share/classes/com/sun/tools/corba/se/idl/idl.prp	Tue May 12 15:21:55 2009 +0900
+++ b/corba/src/share/classes/com/sun/tools/corba/se/idl/idl.prp	Thu May 14 00:17:25 2009 -0700
@@ -1,3 +1,28 @@
+#
+# Copyright 1999-2004 Sun Microsystems, Inc.  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
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  Sun designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Sun in the LICENSE file that accompanied this code.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+# CA 95054 USA or visit www.sun.com if you need additional information or
+# have any questions.
+#
+
 #
 # COMPONENT_NAME:  idl.parser
 #
--- a/corba/src/share/classes/com/sun/tools/corba/se/idl/idl_ja.prp	Tue May 12 15:21:55 2009 +0900
+++ b/corba/src/share/classes/com/sun/tools/corba/se/idl/idl_ja.prp	Thu May 14 00:17:25 2009 -0700
@@ -1,3 +1,28 @@
+#
+# Copyright 1999-2005 Sun Microsystems, Inc.  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
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  Sun designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Sun in the LICENSE file that accompanied this code.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+# CA 95054 USA or visit www.sun.com if you need additional information or
+# have any questions.
+#
+
 #
 # COMPONENT_NAME:  idl.parser
 #
--- a/corba/src/share/classes/com/sun/tools/corba/se/idl/idl_zh_CN.prp	Tue May 12 15:21:55 2009 +0900
+++ b/corba/src/share/classes/com/sun/tools/corba/se/idl/idl_zh_CN.prp	Thu May 14 00:17:25 2009 -0700
@@ -1,3 +1,28 @@
+#
+# Copyright 2005 Sun Microsystems, Inc.  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
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  Sun designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Sun in the LICENSE file that accompanied this code.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+# CA 95054 USA or visit www.sun.com if you need additional information or
+# have any questions.
+#
+
 #
 # COMPONENT_NAME:  idl.parser
 #
--- a/corba/src/share/classes/com/sun/tools/corba/se/idl/toJavaPortable/toJavaPortable.prp	Tue May 12 15:21:55 2009 +0900
+++ b/corba/src/share/classes/com/sun/tools/corba/se/idl/toJavaPortable/toJavaPortable.prp	Thu May 14 00:17:25 2009 -0700
@@ -1,3 +1,28 @@
+#
+# Copyright 1999-2004 Sun Microsystems, Inc.  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
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  Sun designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Sun in the LICENSE file that accompanied this code.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+# CA 95054 USA or visit www.sun.com if you need additional information or
+# have any questions.
+#
+
 #
 # COMPONENT_NAME: idl.toJava
 #
--- a/corba/src/share/classes/com/sun/tools/corba/se/idl/toJavaPortable/toJavaPortable_ja.prp	Tue May 12 15:21:55 2009 +0900
+++ b/corba/src/share/classes/com/sun/tools/corba/se/idl/toJavaPortable/toJavaPortable_ja.prp	Thu May 14 00:17:25 2009 -0700
@@ -1,3 +1,28 @@
+#
+# Copyright 2001-2005 Sun Microsystems, Inc.  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
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  Sun designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Sun in the LICENSE file that accompanied this code.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+# CA 95054 USA or visit www.sun.com if you need additional information or
+# have any questions.
+#
+
 #
 # COMPONENT_NAME: idl.toJava
 #
--- a/corba/src/share/classes/com/sun/tools/corba/se/idl/toJavaPortable/toJavaPortable_zh_CN.prp	Tue May 12 15:21:55 2009 +0900
+++ b/corba/src/share/classes/com/sun/tools/corba/se/idl/toJavaPortable/toJavaPortable_zh_CN.prp	Thu May 14 00:17:25 2009 -0700
@@ -1,3 +1,28 @@
+#
+# Copyright 2005 Sun Microsystems, Inc.  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
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  Sun designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Sun in the LICENSE file that accompanied this code.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+# CA 95054 USA or visit www.sun.com if you need additional information or
+# have any questions.
+#
+
 #
 # COMPONENT_NAME: idl.toJava
 #
--- a/hotspot/.hgtags	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/.hgtags	Thu May 14 00:17:25 2009 -0700
@@ -31,3 +31,5 @@
 fafab5d5349c7c066d677538db67a1ee0fb33bd2 jdk7-b54
 f8e839c086152da70d6ec5913ba6f9f509282e8d jdk7-b55
 a3fd9e40ff2e854f6169eb6d09d491a28634d04f jdk7-b56
+f4cbf78110c726919f46b59a3b054c54c7e889b4 jdk7-b57
+53d9bf689e80fcc76b221bbe6c5d58e08b80cbc6 jdk7-b58
--- a/hotspot/agent/src/os/linux/Makefile	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/agent/src/os/linux/Makefile	Thu May 14 00:17:25 2009 -0700
@@ -60,6 +60,14 @@
   LFLAGS_LIBSA = -Xlinker --version-script=mapfile
 endif
 
+# If this is a --hash-style=gnu system, use --hash-style=both
+#   The gnu .hash section won't work on some Linux systems like SuSE 10.
+_HAS_HASH_STYLE_GNU:=$(shell $(CC) -dumpspecs | grep -- '--hash-style=gnu')
+ifneq ($(_HAS_HASH_STYLE_GNU),)
+  LDFLAGS_HASH_STYLE = -Wl,--hash-style=both
+endif
+LFLAGS_LIBSA += $(LDFLAGS_HASH_STYLE)
+
 $(LIBSA): $(OBJS) mapfile
 	if [ ! -d $(ARCH) ] ; then mkdir $(ARCH) ; fi
 	$(GCC) -shared $(LFLAGS_LIBSA) -o $(LIBSA) $(OBJS) $(LIBS)
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/HotSpotTypeDataBase.java	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/HotSpotTypeDataBase.java	Thu May 14 00:17:25 2009 -0700
@@ -306,8 +306,6 @@
 
       entryAddr = entryAddr.addOffsetTo(intConstantEntryArrayStride);
     } while (nameAddr != null);
-      String symbol = "heapOopSize"; // global int constant and value is initialized at runtime.
-      addIntConstant(symbol, (int)lookupInProcess(symbol).getCIntegerAt(0, 4, false));
   }
 
   private void readVMLongConstants() {
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java	Thu May 14 00:17:25 2009 -0700
@@ -318,11 +318,17 @@
     logMinObjAlignmentInBytes = db.lookupIntConstant("LogMinObjAlignmentInBytes").intValue();
     heapWordSize = db.lookupIntConstant("HeapWordSize").intValue();
     oopSize  = db.lookupIntConstant("oopSize").intValue();
-    heapOopSize  = db.lookupIntConstant("heapOopSize").intValue();
 
     intxType = db.lookupType("intx");
     uintxType = db.lookupType("uintx");
     boolType = (CIntegerType) db.lookupType("bool");
+
+    if (isCompressedOopsEnabled()) {
+      // Size info for oops within java objects is fixed
+      heapOopSize = (int)getIntSize();
+    } else {
+      heapOopSize = (int)getOopSize();
+    }
   }
 
   /** This could be used by a reflective runtime system */
@@ -343,13 +349,12 @@
     }
     soleInstance = new VM(db, debugger, debugger.getMachineDescription().isBigEndian());
 
-    debugger.putHeapConst(soleInstance.getHeapOopSize(), Universe.getNarrowOopBase(),
-                          Universe.getNarrowOopShift());
-
     for (Iterator iter = vmInitializedObservers.iterator(); iter.hasNext(); ) {
       ((Observer) iter.next()).update(null, null);
     }
 
+    debugger.putHeapConst(soleInstance.getHeapOopSize(), Universe.getNarrowOopBase(),
+                          Universe.getNarrowOopShift());
   }
 
   /** This is used by the debugging system */
--- a/hotspot/make/hotspot_version	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/make/hotspot_version	Thu May 14 00:17:25 2009 -0700
@@ -35,7 +35,7 @@
 
 HS_MAJOR_VER=16
 HS_MINOR_VER=0
-HS_BUILD_NUMBER=02
+HS_BUILD_NUMBER=03
 
 JDK_MAJOR_VER=1
 JDK_MINOR_VER=7
--- a/hotspot/make/jprt.config	Tue May 12 15:21:55 2009 +0900
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,275 +0,0 @@
-#!echo "This is not a shell script"
-#
-# Copyright 2006-2008 Sun Microsystems, Inc.  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
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# This code is distributed in the hope that it will be useful, but WITHOUT
-# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-# version 2 for more details (a copy is included in the LICENSE file that
-# accompanied this code).
-#
-# You should have received a copy of the GNU General Public License version
-# 2 along with this work; if not, write to the Free Software Foundation,
-# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
-#
-# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
-# CA 95054 USA or visit www.sun.com if you need additional information or
-# have any questions.
-#  
-#
-
-#############################################################################
-# Error
-error() # message
-{
-  echo "ERROR: $1"
-  exit 6
-}
-# Directory must exist
-dirMustExist() # dir name
-{
-  if [ ! -d "$1" ] ; then
-    error "Directory for $2 does not exist: $1"
-  fi
-}
-# File must exist
-fileMustExist() # dir name
-{
-  if [ ! -f "$1" ] ; then
-    error "File for $2 does not exist: $1"
-  fi
-}
-#############################################################################
-
-# Should be set by JPRT as the 3 basic inputs
-bootdir="${ALT_BOOTDIR}"
-slashjava="${ALT_SLASH_JAVA}"
-jdk_import="${ALT_JDK_IMPORT_PATH}"
-
-# Check input
-dirMustExist "${bootdir}"    ALT_BOOTDIR
-dirMustExist "${slashjava}"  ALT_SLASH_JAVA
-dirMustExist "${jdk_import}" ALT_JDK_IMPORT_PATH
-
-# Uses 'uname -s', but only expect SunOS or Linux, assume Windows otherwise.
-osname=`uname -s`
-if [ "${osname}" = SunOS ] ; then
-   
-    # SOLARIS: Sparc or X86
-    osarch=`uname -p`
-    if [ "${osarch}" = sparc ] ; then
-	solaris_arch=sparc
-    else
-	solaris_arch=i386
-    fi
-
-    if [ "${JPRT_SOLARIS_COMPILER_NAME}" != "" ] ; then
-        compiler_name=${JPRT_SOLARIS_COMPILER_NAME}
-    else
-        if [ "${JPRT_JOB_PRODUCT_RELEASE}" = "jdk6"      -o \
-             "${JPRT_JOB_PRODUCT_RELEASE}" = "jdk6u10"   -o \
-             "${JPRT_JOB_PRODUCT_RELEASE}" = "jdk6u14"   -o \
-             "${JPRT_JOB_PRODUCT_RELEASE}" = "jdk6perf" ] ; then
-            # All jdk6 builds use SS11
-            compiler_name=SS11
-        else
-	    compiler_name=SS12
-        fi
-    fi
-    
-    # Get into path (make sure it matches ALT setting)
-    compiler_path=${slashjava}/devtools/${solaris_arch}/SUNWspro/${compiler_name}/bin
-    dirMustExist "${compiler_path}" COMPILER_PATH
-    path4sdk=${compiler_path}
-
-    # Add basic solaris system paths
-    path4sdk=${path4sdk}:/usr/ccs/bin:/usr/ccs/lib:/usr/bin:/bin:/usr/sfw/bin
-
-    # Get the previous JDK to be used to bootstrap the build
-    path4sdk=${bootdir}/bin:${path4sdk}
-
-    # Find GNU make
-    make=/usr/sfw/bin/gmake
-    if [ ! -f ${make} ] ; then
-	make=/opt/sfw/bin/gmake
-	if [ ! -f ${make} ] ; then
-	    make=${slashjava}/devtools/${solaris_arch}/bin/gnumake
-        fi 
-    fi
-    fileMustExist "${make}" make
-
-    # File creation mask
-    umask 002
-
-elif [ "${osname}" = Linux ] ; then
-   
-    # LINUX: X86, AMD64
-    osarch=`uname -m`
-    if [ "${osarch}" = i686 ] ; then
-	linux_arch=i586
-    elif [ "${osarch}" = x86_64 ] ; then
-	linux_arch=amd64
-    fi
-
-    # Get the compilers into path (make sure it matches ALT setting)
-    compiler_path=/usr/bin
-    dirMustExist "${compiler_path}" COMPILER_PATH
-    path4sdk=${compiler_path}
-    
-    # Add basic paths
-    path4sdk=${path4sdk}:/usr/bin:/bin:/usr/sbin:/sbin
-
-    # Get the previous JDK to be used to bootstrap the build
-    path4sdk=${bootdir}/bin:${path4sdk}
-    
-    # Find GNU make
-    make=/usr/bin/make
-    fileMustExist "${make}" make
-
-    umask 002
-
-else
-
-    # Windows: Differs on CYGWIN vs. MKS, and the compiler available.
-    #   Also, blanks in pathnames gives GNU make headaches, so anything placed
-    #   in any ALT_* variable should be the short windows dosname.
-   
-    # WINDOWS: Install and use MKS or CYGWIN (should have already been done)
-    #   Assumption here is that you are in a shell window via MKS or cygwin.
-    #   MKS install should have defined the environment variable ROOTDIR.
-    #   We also need to figure out which one we have: X86, AMD64
-    if [ "`echo ${PROCESSOR_IDENTIFIER} | fgrep AMD64`" != "" ] ; then
-	windows_arch=amd64
-    else
-	windows_arch=i586
-    fi
-    
-    # We need to determine if we are running a CYGWIN shell or an MKS shell
-    #    (if uname isn't available, then it will be unix_toolset=unknown)
-    unix_toolset=unknown
-    if [ "`uname -a | fgrep Cygwin`" = "" -a -d "${ROOTDIR}" ] ; then
-        # We kind of assume ROOTDIR is where MKS is and it's ok
-        unix_toolset=MKS
-        mkshome=`dosname -s "${ROOTDIR}"`
-	# Utility to convert to short pathnames without spaces
-	dosname="${mkshome}/mksnt/dosname -s"
-        # Most unix utilities are in the mksnt directory of ROOTDIR
-        unixcommand_path="${mkshome}/mksnt"
-        path4sdk="${unixcommand_path}"
-        dirMustExist "${unixcommand_path}" UNIXCOMMAND_PATH
-	devtools_path="${slashjava}/devtools/win32/bin"
-	path4sdk="${devtools_path};${path4sdk}"
-        dirMustExist "${devtools_path}" DEVTOOLS_PATH
-        # Find GNU make
-        make="${devtools_path}/gnumake.exe"
-        fileMustExist "${make}" make
-    elif [ "`uname -a | fgrep Cygwin`" != "" -a -f /bin/cygpath ] ; then
-        # For CYGWIN, uname will have "Cygwin" in it, and /bin/cygpath should exist
-        unix_toolset=CYGWIN
-	# Utility to convert to short pathnames without spaces
-	dosname="/usr/bin/cygpath -a -m -s"
-        # Most unix utilities are in the /usr/bin
-        unixcommand_path="/usr/bin"
-        path4sdk="${unixcommand_path}"
-        dirMustExist "${unixcommand_path}" UNIXCOMMAND_PATH
-        # Find GNU make
-        make="${unixcommand_path}/make.exe"
-        fileMustExist "${make}" make
-    else
-      echo "WARNING: Cannot figure out if this is MKS or CYGWIN"
-    fi
-
-    # WINDOWS: Compiler setup (nasty part)
-    #   NOTE: You can use vcvars32.bat to set PATH, LIB, and INCLUDE.
-    #   NOTE: CYGWIN has a link.exe too, make sure the compilers are first
-    if [ "${windows_arch}" = i586 ] ; then
-        # 32bit Windows compiler settings
-        # VisualStudio .NET 2003 VC++ 7.1 (VS71COMNTOOLS should be defined)
-        vs_root=`${dosname} "${VS71COMNTOOLS}/../.."`
-        # Fill in PATH, LIB, and INCLUDE (unset all others to make sure)
-        vc7_root="${vs_root}/Vc7"
-        compiler_path="${vc7_root}/bin"
-        platform_sdk="${vc7_root}/PlatformSDK"
-        # LIB and INCLUDE must use ; as a separator
-        include4sdk="${vc7_root}/atlmfc/include"
-        include4sdk="${include4sdk};${vc7_root}/include"
-        include4sdk="${include4sdk};${platform_sdk}/include/prerelease"
-        include4sdk="${include4sdk};${platform_sdk}/include"
-        include4sdk="${include4sdk};${vs_root}/SDK/v1.1/include"
-        lib4sdk="${vc7_root}/atlmfc/lib"
-        lib4sdk="${lib4sdk};${vc7_root}/lib"
-        lib4sdk="${lib4sdk};${platform_sdk}/lib/prerelease"
-        lib4sdk="${lib4sdk};${platform_sdk}/lib"
-        lib4sdk="${lib4sdk};${vs_root}/SDK/v1.1/lib"
-        # Search path and DLL locating path
-        #   WARNING: CYGWIN has a link.exe too, make sure compilers are first
-        path4sdk="${vs_root}/Common7/Tools/bin;${path4sdk}"
-	path4sdk="${vs_root}/SDK/v1.1/bin;${path4sdk}"
-        path4sdk="${vs_root}/Common7/Tools;${path4sdk}"
-	path4sdk="${vs_root}/Common7/Tools/bin/prerelease;${path4sdk}"
-        path4sdk="${vs_root}/Common7/IDE;${path4sdk}"
-	path4sdk="${compiler_path};${path4sdk}"
-    elif [ "${windows_arch}" = amd64 ] ; then
-        # AMD64 64bit Windows compiler settings
-	if [ "${MSSDK}" != "" ] ; then
-	    platform_sdk="${MSSDK}"
-	else
-	    platform_sdk=`${dosname} "C:/Program Files/Microsoft Platform SDK/"`
-	fi
-	compiler_path="${platform_sdk}/Bin/win64/x86/AMD64"
-        # LIB and INCLUDE must use ; as a separator
-        include4sdk="${platform_sdk}/Include"
-	include4sdk="${include4sdk};${platform_sdk}/Include/crt/sys"
-	include4sdk="${include4sdk};${platform_sdk}/Include/mfc"
-	include4sdk="${include4sdk};${platform_sdk}/Include/atl"
-	include4sdk="${include4sdk};${platform_sdk}/Include/crt"
-        lib4sdk="${platform_sdk}/Lib/AMD64"
-        lib4sdk="${lib4sdk};${platform_sdk}/Lib/AMD64/atlmfc"
-        # Search path and DLL locating path
-        #   WARNING: CYGWIN has a link.exe too, make sure compilers are first
-        path4sdk="${platform_sdk}/bin;${path4sdk}"
-        path4sdk="${compiler_path};${path4sdk}"
-    fi
-    # Export LIB and INCLUDE
-    unset lib
-    unset Lib
-    LIB="${lib4sdk}"
-    export LIB
-    unset include
-    unset Include
-    INCLUDE="${include4sdk}"
-    export INCLUDE
-    # Set the ALT variable
-    dirMustExist "${compiler_path}" COMPILER_PATH
-    
-    # WINDOWS: Get the previous JDK to be used to bootstrap the build
-    path4sdk="${bootdir}/bin;${path4sdk}"
-
-    # Turn all \\ into /, remove duplicates and trailing /
-    slash_path="`echo ${path4sdk} | sed -e 's@\\\\@/@g' -e 's@//@/@g' -e 's@/$@@' -e 's@/;@;@g'`"
-    
-    # For windows, it's hard to know where the system is, so we just add this
-    #    to PATH.
-    path4sdk="${slash_path};${PATH}"
-    
-    # Convert path4sdk to cygwin style
-    if [ "${unix_toolset}" = CYGWIN ] ; then
-	path4sdk="`/usr/bin/cygpath -p ${path4sdk}`"
-    fi
-
-fi
-
-# Export PATH setting
-PATH="${path4sdk}"
-export PATH
-
-# Unset certain vars
-unset LD_LIBRARY_PATH
-unset LD_LIBRARY_PATH_32
-unset LD_LIBRARY_PATH_64
-
--- a/hotspot/make/jprt.properties	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/make/jprt.properties	Thu May 14 00:17:25 2009 -0700
@@ -70,10 +70,33 @@
 jprt.my.solaris.x64.jdk6u14=solaris_x64_5.10
 jprt.my.solaris.x64=${jprt.my.solaris.x64.${jprt.tools.default.release}}
 
-jprt.my.linux.i586=linux_i586
-jprt.my.linux.x64=linux_x64
-jprt.my.windows.i586=windows_i586
-jprt.my.windows.x64=windows_x64
+jprt.my.linux.i586.jdk7=linux_i586_2.6
+jprt.my.linux.i586.jdk6=linux_i586_2.4
+jprt.my.linux.i586.jdk6perf=linux_i586_2.4
+jprt.my.linux.i586.jdk6u10=linux_i586_2.4
+jprt.my.linux.i586.jdk6u14=linux_i586_2.4
+jprt.my.linux.i586=${jprt.my.linux.i586.${jprt.tools.default.release}}
+
+jprt.my.linux.x64.jdk7=linux_x64_2.6
+jprt.my.linux.x64.jdk6=linux_x64_2.4
+jprt.my.linux.x64.jdk6perf=linux_x64_2.4
+jprt.my.linux.x64.jdk6u10=linux_x64_2.4
+jprt.my.linux.x64.jdk6u14=linux_x64_2.4
+jprt.my.linux.x64=${jprt.my.linux.x64.${jprt.tools.default.release}}
+
+jprt.my.windows.i586.jdk7=windows_i586_5.0
+jprt.my.windows.i586.jdk6=windows_i586_5.0
+jprt.my.windows.i586.jdk6perf=windows_i586_5.0
+jprt.my.windows.i586.jdk6u10=windows_i586_5.0
+jprt.my.windows.i586.jdk6u14=windows_i586_5.0
+jprt.my.windows.i586=${jprt.my.windows.i586.${jprt.tools.default.release}}
+
+jprt.my.windows.x64.jdk7=windows_x64_5.2
+jprt.my.windows.x64.jdk6=windows_x64_5.2
+jprt.my.windows.x64.jdk6perf=windows_x64_5.2
+jprt.my.windows.x64.jdk6u10=windows_x64_5.2
+jprt.my.windows.x64.jdk6u14=windows_x64_5.2
+jprt.my.windows.x64=${jprt.my.windows.x64.${jprt.tools.default.release}}
 
 # Standard list of jprt build targets for this source tree
 
--- a/hotspot/make/linux/makefiles/gcc.make	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/make/linux/makefiles/gcc.make	Thu May 14 00:17:25 2009 -0700
@@ -113,6 +113,11 @@
 
 OPT_CFLAGS/NOOPT=-O0
 
+# 6835796. Problem in GCC 4.3.0 with mulnode.o optimized compilation. 
+ifneq "$(shell expr \( \( $(CC_VER_MAJOR) = 4 \) \& \( $(CC_VER_MINOR) = 3 \) \))" "0"
+OPT_CFLAGS/mulnode.o += -O0
+endif
+
 #------------------------------------------------------------------------
 # Linker flags
 
--- a/hotspot/make/linux/makefiles/jsig.make	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/make/linux/makefiles/jsig.make	Thu May 14 00:17:25 2009 -0700
@@ -39,7 +39,7 @@
 # cause problems with interposing. See CR: 6466665
 # LFLAGS_JSIG += $(MAPFLAG:FILENAME=$(LIBJSIG_MAPFILE))
 
-LFLAGS_JSIG += -D_GNU_SOURCE -D_REENTRANT
+LFLAGS_JSIG += -D_GNU_SOURCE -D_REENTRANT $(LDFLAGS_HASH_STYLE)
 
 $(LIBJSIG): $(JSIGSRCDIR)/jsig.c $(LIBJSIG_MAPFILE)
 	@echo Making signal interposition lib...
--- a/hotspot/make/linux/makefiles/saproc.make	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/make/linux/makefiles/saproc.make	Thu May 14 00:17:25 2009 -0700
@@ -51,7 +51,7 @@
 	   $(MAKE) -f vm.make $(LIBSAPROC); \
 	fi
 
-SA_LFLAGS = $(MAPFLAG:FILENAME=$(SAMAPFILE))
+SA_LFLAGS = $(MAPFLAG:FILENAME=$(SAMAPFILE)) $(LDFLAGS_HASH_STYLE)
 
 $(LIBSAPROC): $(SASRCFILES) $(SAMAPFILE)
 	$(QUIETLY) if [ "$(BOOT_JAVA_HOME)" = "" ]; then \
--- a/hotspot/src/os/linux/vm/os_linux.cpp	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/src/os/linux/vm/os_linux.cpp	Thu May 14 00:17:25 2009 -0700
@@ -2314,7 +2314,8 @@
 void os::realign_memory(char *addr, size_t bytes, size_t alignment_hint) { }
 
 void os::free_memory(char *addr, size_t bytes) {
-  uncommit_memory(addr, bytes);
+  ::mmap(addr, bytes, PROT_READ | PROT_WRITE,
+         MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0);
 }
 
 void os::numa_make_global(char *addr, size_t bytes) {
@@ -2361,6 +2362,19 @@
 extern "C" void numa_warn(int number, char *where, ...) { }
 extern "C" void numa_error(char *where) { }
 
+
+// If we are running with libnuma version > 2, then we should
+// be trying to use symbols with versions 1.1
+// If we are running with earlier version, which did not have symbol versions,
+// we should use the base version.
+void* os::Linux::libnuma_dlsym(void* handle, const char *name) {
+  void *f = dlvsym(handle, name, "libnuma_1.1");
+  if (f == NULL) {
+    f = dlsym(handle, name);
+  }
+  return f;
+}
+
 bool os::Linux::libnuma_init() {
   // sched_getcpu() should be in libc.
   set_sched_getcpu(CAST_TO_FN_PTR(sched_getcpu_func_t,
@@ -2370,19 +2384,19 @@
     void *handle = dlopen("libnuma.so.1", RTLD_LAZY);
     if (handle != NULL) {
       set_numa_node_to_cpus(CAST_TO_FN_PTR(numa_node_to_cpus_func_t,
-                                           dlsym(handle, "numa_node_to_cpus")));
+                                           libnuma_dlsym(handle, "numa_node_to_cpus")));
       set_numa_max_node(CAST_TO_FN_PTR(numa_max_node_func_t,
-                                       dlsym(handle, "numa_max_node")));
+                                       libnuma_dlsym(handle, "numa_max_node")));
       set_numa_available(CAST_TO_FN_PTR(numa_available_func_t,
-                                        dlsym(handle, "numa_available")));
+                                        libnuma_dlsym(handle, "numa_available")));
       set_numa_tonode_memory(CAST_TO_FN_PTR(numa_tonode_memory_func_t,
-                                            dlsym(handle, "numa_tonode_memory")));
+                                            libnuma_dlsym(handle, "numa_tonode_memory")));
       set_numa_interleave_memory(CAST_TO_FN_PTR(numa_interleave_memory_func_t,
-                                            dlsym(handle, "numa_interleave_memory")));
+                                            libnuma_dlsym(handle, "numa_interleave_memory")));
 
 
       if (numa_available() != -1) {
-        set_numa_all_nodes((unsigned long*)dlsym(handle, "numa_all_nodes"));
+        set_numa_all_nodes((unsigned long*)libnuma_dlsym(handle, "numa_all_nodes"));
         // Create a cpu -> node mapping
         _cpu_to_node = new (ResourceObj::C_HEAP) GrowableArray<int>(0, true);
         rebuild_cpu_to_node_map();
--- a/hotspot/src/os/linux/vm/os_linux.hpp	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/src/os/linux/vm/os_linux.hpp	Thu May 14 00:17:25 2009 -0700
@@ -147,7 +147,7 @@
 
   static void libpthread_init();
   static bool libnuma_init();
-
+  static void* libnuma_dlsym(void* handle, const char* name);
   // Minimum stack size a thread can be created with (allowing
   // the VM to completely create the thread and enter user code)
   static size_t min_stack_allowed;
--- a/hotspot/src/share/vm/gc_implementation/g1/concurrentG1RefineThread.cpp	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/src/share/vm/gc_implementation/g1/concurrentG1RefineThread.cpp	Thu May 14 00:17:25 2009 -0700
@@ -53,7 +53,9 @@
     ResourceMark rm;
     HandleMark   hm;
 
-    if (TraceG1Refine) gclog_or_tty->print_cr("G1-Refine starting pass");
+    if (G1TraceConcurrentRefinement) {
+      gclog_or_tty->print_cr("G1-Refine starting pass");
+    }
     _sts.join();
     bool no_sleep = _cg1r->refine();
     _sts.leave();
@@ -207,9 +209,9 @@
 
 
 void ConcurrentG1RefineThread::yield() {
-  if (TraceG1Refine) gclog_or_tty->print_cr("G1-Refine-yield");
+  if (G1TraceConcurrentRefinement) gclog_or_tty->print_cr("G1-Refine-yield");
   _sts.yield("G1 refine");
-  if (TraceG1Refine) gclog_or_tty->print_cr("G1-Refine-yield-end");
+  if (G1TraceConcurrentRefinement) gclog_or_tty->print_cr("G1-Refine-yield-end");
 }
 
 void ConcurrentG1RefineThread::stop() {
@@ -230,7 +232,7 @@
       Terminator_lock->wait();
     }
   }
-  if (TraceG1Refine) gclog_or_tty->print_cr("G1-Refine-stop");
+  if (G1TraceConcurrentRefinement) gclog_or_tty->print_cr("G1-Refine-stop");
 }
 
 void ConcurrentG1RefineThread::print() {
--- a/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp	Thu May 14 00:17:25 2009 -0700
@@ -448,8 +448,8 @@
     gclog_or_tty->print_cr("[global] init, heap start = "PTR_FORMAT", "
                            "heap end = "PTR_FORMAT, _heap_start, _heap_end);
 
-  _markStack.allocate(G1CMStackSize);
-  _regionStack.allocate(G1CMRegionStackSize);
+  _markStack.allocate(G1MarkStackSize);
+  _regionStack.allocate(G1MarkRegionStackSize);
 
   // Create & start a ConcurrentMark thread.
   if (G1ConcMark) {
@@ -499,20 +499,21 @@
     _marking_task_overhead    = 1.0;
   } else {
     if (ParallelMarkingThreads > 0) {
-      // notice that ParallelMarkingThreads overwrites G1MarkingOverheadPerc
+      // notice that ParallelMarkingThreads overwrites G1MarkingOverheadPercent
       // if both are set
 
       _parallel_marking_threads = ParallelMarkingThreads;
       _sleep_factor             = 0.0;
       _marking_task_overhead    = 1.0;
-    } else if (G1MarkingOverheadPerc > 0) {
+    } else if (G1MarkingOverheadPercent > 0) {
       // we will calculate the number of parallel marking threads
       // based on a target overhead with respect to the soft real-time
       // goal
 
-      double marking_overhead = (double) G1MarkingOverheadPerc / 100.0;
+      double marking_overhead = (double) G1MarkingOverheadPercent / 100.0;
       double overall_cm_overhead =
-        (double) G1MaxPauseTimeMS * marking_overhead / (double) G1TimeSliceMS;
+        (double) MaxGCPauseMillis * marking_overhead /
+        (double) GCPauseIntervalMillis;
       double cpu_ratio = 1.0 / (double) os::processor_count();
       double marking_thread_num = ceil(overall_cm_overhead / cpu_ratio);
       double marking_task_overhead =
@@ -1747,7 +1748,7 @@
   g1h->increment_total_collections();
 
 #ifndef PRODUCT
-  if (G1VerifyConcMark) {
+  if (VerifyDuringGC) {
     G1CollectedHeap::heap()->prepare_for_verify();
     G1CollectedHeap::heap()->verify(true,false);
   }
--- a/hotspot/src/share/vm/gc_implementation/g1/concurrentMarkThread.cpp	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/src/share/vm/gc_implementation/g1/concurrentMarkThread.cpp	Thu May 14 00:17:25 2009 -0700
@@ -136,9 +136,6 @@
         iter++;
         if (!cm()->has_aborted()) {
           _cm->markFromRoots();
-        } else {
-          if (TraceConcurrentMark)
-            gclog_or_tty->print_cr("CM-skip-mark-from-roots");
         }
 
         double mark_end_time = os::elapsedVTime();
@@ -163,9 +160,6 @@
           sprintf(verbose_str, "GC remark");
           VM_CGC_Operation op(&final_cl, verbose_str);
           VMThread::execute(&op);
-        } else {
-          if (TraceConcurrentMark)
-            gclog_or_tty->print_cr("CM-skip-remark");
         }
         if (cm()->restart_for_overflow() &&
             G1TraceMarkStackOverflow) {
@@ -208,8 +202,6 @@
                                    count_end_sec - count_start_sec);
           }
         }
-      } else {
-        if (TraceConcurrentMark) gclog_or_tty->print_cr("CM-skip-end-game");
       }
       double end_time = os::elapsedVTime();
       _vtime_count_accum += (end_time - counting_start_time);
@@ -230,7 +222,6 @@
         VM_CGC_Operation op(&cl_cl, verbose_str);
         VMThread::execute(&op);
       } else {
-        if (TraceConcurrentMark) gclog_or_tty->print_cr("CM-skip-cleanup");
         G1CollectedHeap::heap()->set_marking_complete();
       }
 
@@ -287,9 +278,7 @@
 
 
 void ConcurrentMarkThread::yield() {
-  if (TraceConcurrentMark) gclog_or_tty->print_cr("CM-yield");
   _sts.yield("Concurrent Mark");
-  if (TraceConcurrentMark) gclog_or_tty->print_cr("CM-yield-end");
 }
 
 void ConcurrentMarkThread::stop() {
@@ -299,7 +288,6 @@
   while (!_has_terminated) {
     Terminator_lock->wait();
   }
-  if (TraceConcurrentMark) gclog_or_tty->print_cr("CM-stop");
 }
 
 void ConcurrentMarkThread::print() {
@@ -314,12 +302,10 @@
   // below while the world is otherwise stopped.
   MutexLockerEx x(CGC_lock, Mutex::_no_safepoint_check_flag);
   while (!started()) {
-    if (TraceConcurrentMark) gclog_or_tty->print_cr("CM-sleeping");
     CGC_lock->wait(Mutex::_no_safepoint_check_flag);
   }
   set_in_progress();
   clear_started();
-  if (TraceConcurrentMark) gclog_or_tty->print_cr("CM-starting");
 }
 
 // Note: this method, although exported by the ConcurrentMarkSweepThread,
--- a/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp	Thu May 14 00:17:25 2009 -0700
@@ -528,7 +528,7 @@
            res->zero_fill_state() == HeapRegion::Allocated)),
          "Non-young alloc Regions must be zero filled (and non-H)");
 
-  if (G1TraceRegions) {
+  if (G1PrintRegions) {
     if (res != NULL) {
       gclog_or_tty->print_cr("new alloc region %d:["PTR_FORMAT", "PTR_FORMAT"], "
                              "top "PTR_FORMAT,
@@ -2282,13 +2282,13 @@
     // to that.
     g1_policy()->print_tracing_info();
   }
-  if (SummarizeG1RSStats) {
+  if (G1SummarizeRSetStats) {
     g1_rem_set()->print_summary_info();
   }
-  if (SummarizeG1ConcMark) {
+  if (G1SummarizeConcurrentMark) {
     concurrent_mark()->print_summary_info();
   }
-  if (SummarizeG1ZFStats) {
+  if (G1SummarizeZFStats) {
     ConcurrentZFThread::print_summary_info();
   }
   g1_policy()->print_yg_surv_rate_info();
@@ -3255,7 +3255,7 @@
   HeapRegion* r = heap_region_containing(old);
   if (!r->evacuation_failed()) {
     r->set_evacuation_failed(true);
-    if (G1TraceRegions) {
+    if (G1PrintRegions) {
       gclog_or_tty->print("evacuation failed in heap region "PTR_FORMAT" "
                           "["PTR_FORMAT","PTR_FORMAT")\n",
                           r, r->bottom(), r->end());
@@ -3466,7 +3466,7 @@
   }
 
   static size_t gclab_word_size() {
-    return ParallelGCG1AllocBufferSize / HeapWordSize;
+    return G1ParallelGCAllocBufferSize / HeapWordSize;
   }
 
   static size_t bitmap_size_in_bits() {
@@ -3616,7 +3616,7 @@
 
 public:
   G1ParGCAllocBuffer() :
-    ParGCAllocBuffer(ParallelGCG1AllocBufferSize / HeapWordSize),
+    ParGCAllocBuffer(G1ParallelGCAllocBufferSize / HeapWordSize),
     _during_marking(G1CollectedHeap::heap()->mark_in_progress()),
     _bitmap(G1CollectedHeap::heap()->reserved_region().start()),
     _retired(false)
@@ -3812,14 +3812,14 @@
 
     HeapWord* obj = NULL;
     if (word_sz * 100 <
-        (size_t)(ParallelGCG1AllocBufferSize / HeapWordSize) *
+        (size_t)(G1ParallelGCAllocBufferSize / HeapWordSize) *
                                                   ParallelGCBufferWastePct) {
       G1ParGCAllocBuffer* alloc_buf = alloc_buffer(purpose);
       add_to_alloc_buffer_waste(alloc_buf->words_remaining());
       alloc_buf->retire(false, false);
 
       HeapWord* buf =
-        _g1h->par_allocate_during_gc(purpose, ParallelGCG1AllocBufferSize / HeapWordSize);
+        _g1h->par_allocate_during_gc(purpose, G1ParallelGCAllocBufferSize / HeapWordSize);
       if (buf == NULL) return NULL; // Let caller handle allocation failure.
       // Otherwise.
       alloc_buf->set_buf(buf);
@@ -4331,7 +4331,7 @@
       _g1h->g1_policy()->record_obj_copy_time(i, elapsed_ms-term_ms);
       _g1h->g1_policy()->record_termination_time(i, term_ms);
     }
-    if (G1UseSurvivorSpace) {
+    if (G1UseSurvivorSpaces) {
       _g1h->g1_policy()->record_thread_age_table(pss.age_table());
     }
     _g1h->update_surviving_young_words(pss.surviving_young_words()+1);
@@ -4435,28 +4435,6 @@
 
   // XXX What should this be doing in the parallel case?
   g1_policy()->record_collection_pause_end_CH_strong_roots();
-  if (G1VerifyRemSet) {
-    // :::: FIXME ::::
-    // The stupid remembered set doesn't know how to filter out dead
-    // objects, which the smart one does, and so when it is created
-    // and then compared the number of entries in each differs and
-    // the verification code fails.
-    guarantee(false, "verification code is broken, see note");
-
-    // Let's make sure that the current rem set agrees with the stupidest
-    // one possible!
-    bool refs_enabled = ref_processor()->discovery_enabled();
-    if (refs_enabled) ref_processor()->disable_discovery();
-    StupidG1RemSet stupid(this);
-    count_closure.n = 0;
-    stupid.oops_into_collection_set_do(&count_closure, worker_i);
-    int stupid_n = count_closure.n;
-    count_closure.n = 0;
-    g1_rem_set()->oops_into_collection_set_do(&count_closure, worker_i);
-    guarantee(count_closure.n == stupid_n, "Old and new rem sets differ.");
-    gclog_or_tty->print_cr("\nFound %d pointers in heap RS.", count_closure.n);
-    if (refs_enabled) ref_processor()->enable_discovery();
-  }
   if (scan_so != NULL) {
     scan_scan_only_set(scan_so, worker_i);
   }
--- a/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.inline.hpp	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.inline.hpp	Thu May 14 00:17:25 2009 -0700
@@ -37,8 +37,9 @@
 inline HeapRegion*
 G1CollectedHeap::heap_region_containing_raw(const void* addr) const {
   assert(_g1_reserved.contains(addr), "invariant");
-  size_t index = ((intptr_t) addr - (intptr_t) _g1_reserved.start())
-                                              >> HeapRegion::LogOfHRGrainBytes;
+  size_t index = pointer_delta(addr, _g1_reserved.start(), 1)
+                                        >> HeapRegion::LogOfHRGrainBytes;
+
   HeapRegion* res = _hrs->at(index);
   assert(res == _hrs->addr_to_region(addr), "sanity");
   return res;
--- a/hotspot/src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp	Thu May 14 00:17:25 2009 -0700
@@ -136,7 +136,7 @@
   _scanned_cards_seq(new TruncatedSeq(TruncatedSeqLength)),
   _rs_lengths_seq(new TruncatedSeq(TruncatedSeqLength)),
 
-  _pause_time_target_ms((double) G1MaxPauseTimeMS),
+  _pause_time_target_ms((double) MaxGCPauseMillis),
 
   // </NEW PREDICTION>
 
@@ -220,7 +220,7 @@
   _par_last_termination_times_ms = new double[_parallel_gc_threads];
 
   // start conservatively
-  _expensive_region_limit_ms = 0.5 * (double) G1MaxPauseTimeMS;
+  _expensive_region_limit_ms = 0.5 * (double) MaxGCPauseMillis;
 
   // <NEW PREDICTION>
 
@@ -249,12 +249,12 @@
 
   // </NEW PREDICTION>
 
-  double time_slice  = (double) G1TimeSliceMS / 1000.0;
-  double max_gc_time = (double) G1MaxPauseTimeMS / 1000.0;
+  double time_slice  = (double) GCPauseIntervalMillis / 1000.0;
+  double max_gc_time = (double) MaxGCPauseMillis / 1000.0;
   guarantee(max_gc_time < time_slice,
             "Max GC time should not be greater than the time slice");
   _mmu_tracker = new G1MMUTrackerQueue(time_slice, max_gc_time);
-  _sigma = (double) G1ConfidencePerc / 100.0;
+  _sigma = (double) G1ConfidencePercent / 100.0;
 
   // start conservatively (around 50ms is about right)
   _concurrent_mark_init_times_ms->add(0.05);
@@ -262,7 +262,7 @@
   _concurrent_mark_cleanup_times_ms->add(0.20);
   _tenuring_threshold = MaxTenuringThreshold;
 
-  if (G1UseSurvivorSpace) {
+  if (G1UseSurvivorSpaces) {
     // if G1FixedSurvivorSpaceSize is 0 which means the size is not
     // fixed, then _max_survivor_regions will be calculated at
     // calculate_young_list_target_config during initialization
@@ -451,7 +451,7 @@
   guarantee( adaptive_young_list_length(), "pre-condition" );
 
   double start_time_sec = os::elapsedTime();
-  size_t min_reserve_perc = MAX2((size_t)2, (size_t)G1MinReservePerc);
+  size_t min_reserve_perc = MAX2((size_t)2, (size_t)G1MinReservePercent);
   min_reserve_perc = MIN2((size_t) 50, min_reserve_perc);
   size_t reserve_regions =
     (size_t) ((double) min_reserve_perc * (double) _g1->n_regions() / 100.0);
@@ -1109,7 +1109,7 @@
   _short_lived_surv_rate_group->record_scan_only_prefix(short_lived_so_length);
   tag_scan_only(short_lived_so_length);
 
-  if (G1UseSurvivorSpace) {
+  if (G1UseSurvivorSpaces) {
     _survivors_age_table.clear();
   }
 
@@ -1826,11 +1826,11 @@
     _rs_lengths_seq->add((double) _max_rs_lengths);
 
     double expensive_region_limit_ms =
-      (double) G1MaxPauseTimeMS - predict_constant_other_time_ms();
+      (double) MaxGCPauseMillis - predict_constant_other_time_ms();
     if (expensive_region_limit_ms < 0.0) {
       // this means that the other time was predicted to be longer than
       // than the max pause time
-      expensive_region_limit_ms = (double) G1MaxPauseTimeMS;
+      expensive_region_limit_ms = (double) MaxGCPauseMillis;
     }
     _expensive_region_limit_ms = expensive_region_limit_ms;
 
@@ -2093,24 +2093,24 @@
 }
 
 double G1CollectorPolicy::recent_avg_time_for_pauses_ms() {
-  if (_recent_pause_times_ms->num() == 0) return (double) G1MaxPauseTimeMS;
+  if (_recent_pause_times_ms->num() == 0) return (double) MaxGCPauseMillis;
   else return _recent_pause_times_ms->avg();
 }
 
 double G1CollectorPolicy::recent_avg_time_for_CH_strong_ms() {
   if (_recent_CH_strong_roots_times_ms->num() == 0)
-    return (double)G1MaxPauseTimeMS/3.0;
+    return (double)MaxGCPauseMillis/3.0;
   else return _recent_CH_strong_roots_times_ms->avg();
 }
 
 double G1CollectorPolicy::recent_avg_time_for_G1_strong_ms() {
   if (_recent_G1_strong_roots_times_ms->num() == 0)
-    return (double)G1MaxPauseTimeMS/3.0;
+    return (double)MaxGCPauseMillis/3.0;
   else return _recent_G1_strong_roots_times_ms->avg();
 }
 
 double G1CollectorPolicy::recent_avg_time_for_evac_ms() {
-  if (_recent_evac_times_ms->num() == 0) return (double)G1MaxPauseTimeMS/3.0;
+  if (_recent_evac_times_ms->num() == 0) return (double)MaxGCPauseMillis/3.0;
   else return _recent_evac_times_ms->avg();
 }
 
@@ -2197,17 +2197,18 @@
 }
 
 size_t G1CollectorPolicy::expansion_amount() {
-  if ((int)(recent_avg_pause_time_ratio() * 100.0) > G1GCPct) {
-    // We will double the existing space, or take G1ExpandByPctOfAvail % of
-    // the available expansion space, whichever is smaller, bounded below
-    // by a minimum expansion (unless that's all that's left.)
+  if ((int)(recent_avg_pause_time_ratio() * 100.0) > G1GCPercent) {
+    // We will double the existing space, or take
+    // G1ExpandByPercentOfAvailable % of the available expansion
+    // space, whichever is smaller, bounded below by a minimum
+    // expansion (unless that's all that's left.)
     const size_t min_expand_bytes = 1*M;
     size_t reserved_bytes = _g1->g1_reserved_obj_bytes();
     size_t committed_bytes = _g1->capacity();
     size_t uncommitted_bytes = reserved_bytes - committed_bytes;
     size_t expand_bytes;
     size_t expand_bytes_via_pct =
-      uncommitted_bytes * G1ExpandByPctOfAvail / 100;
+      uncommitted_bytes * G1ExpandByPercentOfAvailable / 100;
     expand_bytes = MIN2(expand_bytes_via_pct, committed_bytes);
     expand_bytes = MAX2(expand_bytes, min_expand_bytes);
     expand_bytes = MIN2(expand_bytes, uncommitted_bytes);
@@ -2591,7 +2592,7 @@
 // Calculates survivor space parameters.
 void G1CollectorPolicy::calculate_survivors_policy()
 {
-  if (!G1UseSurvivorSpace) {
+  if (!G1UseSurvivorSpaces) {
     return;
   }
   if (G1FixedSurvivorSpaceSize == 0) {
@@ -2851,7 +2852,7 @@
 // estimate of the number of live bytes.
 void G1CollectorPolicy::
 add_to_collection_set(HeapRegion* hr) {
-  if (G1TraceRegions) {
+  if (G1PrintRegions) {
     gclog_or_tty->print_cr("added region to cset %d:["PTR_FORMAT", "PTR_FORMAT"], "
                   "top "PTR_FORMAT", young %s",
                   hr->hrs_index(), hr->bottom(), hr->end(),
--- a/hotspot/src/share/vm/gc_implementation/g1/g1MarkSweep.cpp	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1MarkSweep.cpp	Thu May 14 00:17:25 2009 -0700
@@ -57,7 +57,7 @@
 
   mark_sweep_phase1(marked_for_unloading, clear_all_softrefs);
 
-  if (G1VerifyConcMark) {
+  if (VerifyDuringGC) {
       G1CollectedHeap* g1h = G1CollectedHeap::heap();
       g1h->checkConcurrentMark();
   }
--- a/hotspot/src/share/vm/gc_implementation/g1/g1RemSet.cpp	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1RemSet.cpp	Thu May 14 00:17:25 2009 -0700
@@ -180,6 +180,7 @@
   CardTableModRefBS *_ct_bs;
   int _worker_i;
   bool _try_claimed;
+  size_t _min_skip_distance, _max_skip_distance;
 public:
   ScanRSClosure(OopsInHeapRegionClosure* oc, int worker_i) :
     _oc(oc),
@@ -191,6 +192,8 @@
     _g1h = G1CollectedHeap::heap();
     _bot_shared = _g1h->bot_shared();
     _ct_bs = (CardTableModRefBS*) (_g1h->barrier_set());
+    _min_skip_distance = 16;
+    _max_skip_distance = 2 * _g1h->n_par_threads() * _min_skip_distance;
   }
 
   void set_try_claimed() { _try_claimed = true; }
@@ -245,9 +248,13 @@
     HeapRegionRemSetIterator* iter = _g1h->rem_set_iterator(_worker_i);
     hrrs->init_iterator(iter);
     size_t card_index;
+    size_t skip_distance = 0, current_card = 0, jump_to_card = 0;
     while (iter->has_next(card_index)) {
+      if (current_card < jump_to_card) {
+        ++current_card;
+        continue;
+      }
       HeapWord* card_start = _g1h->bot_shared()->address_for_index(card_index);
-
 #if 0
       gclog_or_tty->print("Rem set iteration yielded card [" PTR_FORMAT ", " PTR_FORMAT ").\n",
                           card_start, card_start + CardTableModRefBS::card_size_in_words);
@@ -257,20 +264,28 @@
       assert(card_region != NULL, "Yielding cards not in the heap?");
       _cards++;
 
-      if (!card_region->in_collection_set()) {
-        // If the card is dirty, then we will scan it during updateRS.
-        if (!_ct_bs->is_card_claimed(card_index) &&
-            !_ct_bs->is_card_dirty(card_index)) {
-          assert(_ct_bs->is_card_clean(card_index) ||
-                 _ct_bs->is_card_claimed(card_index) ||
-                 _ct_bs->is_card_deferred(card_index),
-                 "Card is either clean, claimed or deferred");
-          if (_ct_bs->claim_card(card_index))
+       // If the card is dirty, then we will scan it during updateRS.
+      if (!card_region->in_collection_set() && !_ct_bs->is_card_dirty(card_index)) {
+          if (!_ct_bs->is_card_claimed(card_index) && _ct_bs->claim_card(card_index)) {
             scanCard(card_index, card_region);
-        }
+          } else if (_try_claimed) {
+            if (jump_to_card == 0 || jump_to_card != current_card) {
+              // We did some useful work in the previous iteration.
+              // Decrease the distance.
+              skip_distance = MAX2(skip_distance >> 1, _min_skip_distance);
+            } else {
+              // Previous iteration resulted in a claim failure.
+              // Increase the distance.
+              skip_distance = MIN2(skip_distance << 1, _max_skip_distance);
+            }
+            jump_to_card = current_card + skip_distance;
+          }
       }
+      ++current_card;
     }
-    hrrs->set_iter_complete();
+    if (!_try_claimed) {
+      hrrs->set_iter_complete();
+    }
     return false;
   }
   // Set all cards back to clean.
@@ -508,7 +523,7 @@
     // and they are causing failures. When we resolve said race
     // conditions, we'll revert back to parallel remembered set
     // updating and scanning. See CRs 6677707 and 6677708.
-    if (G1EnableParallelRSetUpdating || (worker_i == 0)) {
+    if (G1ParallelRSetUpdatingEnabled || (worker_i == 0)) {
       updateRS(worker_i);
       scanNewRefsRS(oc, worker_i);
     } else {
@@ -517,7 +532,7 @@
       _g1p->record_update_rs_time(worker_i, 0.0);
       _g1p->record_scan_new_refs_time(worker_i, 0.0);
     }
-    if (G1EnableParallelRSetScanning || (worker_i == 0)) {
+    if (G1ParallelRSetScanningEnabled || (worker_i == 0)) {
       scanRS(oc, worker_i);
     } else {
       _g1p->record_scan_rs_start_time(worker_i, os::elapsedTime());
--- a/hotspot/src/share/vm/gc_implementation/g1/g1_globals.hpp	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1_globals.hpp	Thu May 14 00:17:25 2009 -0700
@@ -28,87 +28,65 @@
 
 #define G1_FLAGS(develop, develop_pd, product, product_pd, diagnostic, experimental, notproduct, manageable, product_rw) \
                                                                             \
-  product(intx, ParallelGCG1AllocBufferSize, 8*K,                           \
+  product(intx, G1ParallelGCAllocBufferSize, 8*K,                           \
           "Size of parallel G1 allocation buffers in to-space.")            \
                                                                             \
-  product(intx, G1TimeSliceMS, 500,                                         \
-          "Time slice for MMU specification")                               \
-                                                                            \
-  product(intx, G1MaxPauseTimeMS, 200,                                      \
-          "Max GC time per MMU time slice")                                 \
-                                                                            \
-  product(intx, G1ConfidencePerc, 50,                                       \
+  product(intx, G1ConfidencePercent, 50,                                    \
           "Confidence level for MMU/pause predictions")                     \
                                                                             \
-  product(intx, G1MarkingOverheadPerc, 0,                                   \
+  develop(intx, G1MarkingOverheadPercent, 0,                                   \
           "Overhead of concurrent marking")                                 \
                                                                             \
-  product(bool, G1AccountConcurrentOverhead, false,                         \
+  develop(bool, G1AccountConcurrentOverhead, false,                         \
           "Whether soft real-time compliance in G1 will take into account"  \
           "concurrent overhead")                                            \
                                                                             \
   product(intx, G1YoungGenSize, 0,                                          \
           "Size of the G1 young generation, 0 is the adaptive policy")      \
                                                                             \
-  product(bool, G1Gen, true,                                                \
+  develop(bool, G1Gen, true,                                                \
           "If true, it will enable the generational G1")                    \
                                                                             \
-  develop(intx, G1GCPct, 10,                                                \
+  develop(intx, G1GCPercent, 10,                                                \
           "The desired percent time spent on GC")                           \
                                                                             \
-  product(intx, G1PolicyVerbose, 0,                                         \
+  develop(intx, G1PolicyVerbose, 0,                                         \
           "The verbosity level on G1 policy decisions")                     \
                                                                             \
   develop(bool, G1UseHRIntoRS, true,                                        \
           "Determines whether the 'advanced' HR Into rem set is used.")     \
                                                                             \
-  product(bool, G1VerifyRemSet, false,                                      \
-          "If true, verify the rem set functioning at each GC")             \
-                                                                            \
-  product(bool, G1VerifyConcMark, false,                                    \
-          "If true, verify the conc marking code at full GC time")          \
-                                                                            \
   develop(intx, G1MarkingVerboseLevel, 0,                                   \
           "Level (0-4) of verboseness of the marking code")                 \
                                                                             \
-  develop(bool, G1VerifyConcMarkPrintReachable, true,                       \
+  develop(bool, G1VerifyConcMarkPrintReachable, false,                      \
           "If conc mark verification fails, print reachable objects")       \
                                                                             \
   develop(bool, G1TraceMarkStackOverflow, false,                            \
           "If true, extra debugging code for CM restart for ovflw.")        \
                                                                             \
-  product(bool, G1VerifyMarkingInEvac, false,                               \
-          "If true, verify marking info during evacuation")                 \
-                                                                            \
   develop(intx, G1PausesBtwnConcMark, -1,                                   \
           "If positive, fixed number of pauses between conc markings")      \
                                                                             \
-  product(intx, G1EfficiencyPctCausesMark, 80,                              \
-          "The cum gc efficiency since mark fall-off that causes "          \
-          "new marking")                                                    \
-                                                                            \
-  product(bool, TraceConcurrentMark, false,                                 \
-          "Trace concurrent mark")                                          \
-                                                                            \
-  product(bool, SummarizeG1ConcMark, false,                                 \
+  diagnostic(bool, G1SummarizeConcurrentMark, false,                        \
           "Summarize concurrent mark info")                                 \
                                                                             \
-  product(bool, SummarizeG1RSStats, false,                                  \
+  diagnostic(bool, G1SummarizeRSetStats, false,                             \
           "Summarize remembered set processing info")                       \
                                                                             \
-  product(bool, SummarizeG1ZFStats, false,                                  \
+  diagnostic(bool, G1SummarizeZFStats, false,                               \
           "Summarize zero-filling info")                                    \
                                                                             \
-  product(bool, TraceG1Refine, false,                                       \
+  develop(bool, G1TraceConcurrentRefinement, false,                         \
           "Trace G1 concurrent refinement")                                 \
                                                                             \
   develop(bool, G1ConcMark, true,                                           \
           "If true, run concurrent marking for G1")                         \
                                                                             \
-  product(intx, G1CMStackSize, 2 * 1024 * 1024,                             \
+  product(intx, G1MarkStackSize, 2 * 1024 * 1024,                           \
           "Size of the mark stack for concurrent marking.")                 \
                                                                             \
-  product(intx, G1CMRegionStackSize, 1024 * 1024,                           \
+  product(intx, G1MarkRegionStackSize, 1024 * 1024,                         \
           "Size of the region stack for concurrent marking.")               \
                                                                             \
   develop(bool, G1ConcRefine, true,                                         \
@@ -121,7 +99,7 @@
           "Number of heap regions of alloc ahead of starting collection "   \
           "pause to start concurrent refinement (initially)")               \
                                                                             \
-  product(bool, G1SmoothConcRefine, true,                                   \
+  develop(bool, G1SmoothConcRefine, true,                                   \
           "Attempts to smooth out the overhead of concurrent refinement")   \
                                                                             \
   develop(bool, G1ConcZeroFill, true,                                       \
@@ -157,7 +135,7 @@
   develop(bool, G1SATBPrintStubs, false,                                    \
           "If true, print generated stubs for the SATB barrier")            \
                                                                             \
-  product(intx, G1ExpandByPctOfAvail, 20,                                   \
+  product(intx, G1ExpandByPercentOfAvailable, 20,                           \
           "When expanding, % of uncommitted space to claim.")               \
                                                                             \
   develop(bool, G1RSBarrierRegionFilter, true,                              \
@@ -179,18 +157,9 @@
           "If true, verify that no dirty cards remain after RS log "        \
           "processing.")                                                    \
                                                                             \
-  product(intx, G1MinPausesBetweenMarks, 2,                                 \
-          "Number of inefficient pauses necessary to trigger marking.")     \
-                                                                            \
-  product(intx, G1InefficientPausePct, 80,                                  \
-          "Threshold of an 'inefficient' pauses (as % of cum efficiency.")  \
-                                                                            \
   develop(bool, G1RSCountHisto, false,                                      \
           "If true, print a histogram of RS occupancies after each pause")  \
                                                                             \
-  product(bool, G1TraceFileOverwrite, false,                                \
-          "Allow the trace file to be overwritten")                         \
-                                                                            \
   develop(intx, G1PrintRegionLivenessInfo, 0,                               \
           "When > 0, print the occupancies of the <n> best and worst"       \
           "regions.")                                                       \
@@ -198,9 +167,6 @@
   develop(bool, G1PrintParCleanupStats, false,                              \
           "When true, print extra stats about parallel cleanup.")           \
                                                                             \
-  product(bool, G1DoAgeCohortChecks, false,                                 \
-          "When true, check well-formedness of age cohort structures.")     \
-                                                                            \
   develop(bool, G1DisablePreBarrier, false,                                 \
           "Disable generation of pre-barrier (i.e., marking barrier)   ")   \
                                                                             \
@@ -214,17 +180,17 @@
   develop(intx, G1ConcRSLogCacheSize, 10,                                   \
           "Log base 2 of the length of conc RS hot-card cache.")            \
                                                                             \
-  product(bool, G1ConcRSCountTraversals, false,                             \
+  develop(bool, G1ConcRSCountTraversals, false,                             \
           "If true, gather data about the number of times CR traverses "    \
           "cards ")                                                         \
                                                                             \
-  product(intx, G1ConcRSHotCardLimit, 4,                                    \
+  develop(intx, G1ConcRSHotCardLimit, 4,                                    \
           "The threshold that defines (>=) a hot card.")                    \
                                                                             \
   develop(bool, G1PrintOopAppls, false,                                     \
           "When true, print applications of closures to external locs.")    \
                                                                             \
-  product(intx, G1LogRSRegionEntries, 7,                                    \
+  develop(intx, G1LogRSRegionEntries, 7,                                    \
           "Log_2 of max number of regions for which we keep bitmaps.")      \
                                                                             \
   develop(bool, G1RecordHRRSOops, false,                                    \
@@ -254,11 +220,11 @@
           "It determines whether the system will calculate an optimum "     \
           "scan-only set.")                                                 \
                                                                             \
-  product(intx, G1MinReservePerc, 10,                                       \
+  product(intx, G1MinReservePercent, 10,                                    \
           "It determines the minimum reserve we should have in the heap "   \
           "to minimize the probability of promotion failure.")              \
                                                                             \
-  product(bool, G1TraceRegions, false,                                      \
+  diagnostic(bool, G1PrintRegions, false,                                   \
           "If set G1 will print information on which regions are being "    \
           "allocated and which are reclaimed.")                             \
                                                                             \
@@ -268,24 +234,24 @@
   develop(bool, G1HRRSFlushLogBuffersOnVerify, false,                       \
           "Forces flushing of log buffers before verification.")            \
                                                                             \
-  product(bool, G1UseSurvivorSpace, true,                                   \
+  product(bool, G1UseSurvivorSpaces, true,                                  \
           "When true, use survivor space.")                                 \
                                                                             \
-  product(bool, G1FixedTenuringThreshold, false,                            \
+  develop(bool, G1FixedTenuringThreshold, false,                            \
           "When set, G1 will not adjust the tenuring threshold")            \
                                                                             \
-  product(bool, G1FixedEdenSize, false,                                     \
+  develop(bool, G1FixedEdenSize, false,                                     \
           "When set, G1 will not allocate unused survivor space regions")   \
                                                                             \
-  product(uintx, G1FixedSurvivorSpaceSize, 0,                               \
+  develop(uintx, G1FixedSurvivorSpaceSize, 0,                               \
           "If non-0 is the size of the G1 survivor space, "                 \
           "otherwise SurvivorRatio is used to determine the size")          \
                                                                             \
-  experimental(bool, G1EnableParallelRSetUpdating, false,                   \
+  experimental(bool, G1ParallelRSetUpdatingEnabled, false,                  \
           "Enables the parallelization of remembered set updating "         \
           "during evacuation pauses")                                       \
                                                                             \
-  experimental(bool, G1EnableParallelRSetScanning, false,                   \
+  experimental(bool, G1ParallelRSetScanningEnabled, false,                  \
           "Enables the parallelization of remembered set scanning "         \
           "during evacuation pauses")
 
--- a/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp	Thu May 14 00:17:25 2009 -0700
@@ -160,12 +160,6 @@
     if (!g1h->is_obj_dead(cur_oop, hr)) {
       // Bottom lies entirely below top, so we can call the
       // non-memRegion version of oop_iterate below.
-#ifndef PRODUCT
-      if (G1VerifyMarkingInEvac) {
-        VerifyLiveClosure vl_cl(g1h);
-        cur_oop->oop_iterate(&vl_cl);
-      }
-#endif
       cur_oop->oop_iterate(cl);
     }
     cur = next_obj;
@@ -197,12 +191,6 @@
   // or it was allocated after marking finished, then we add it. Otherwise
   // we can safely ignore the object.
   if (!g1h->is_obj_dead(oop(bottom), _hr)) {
-#ifndef PRODUCT
-    if (G1VerifyMarkingInEvac) {
-      VerifyLiveClosure vl_cl(g1h);
-      oop(bottom)->oop_iterate(&vl_cl, mr);
-    }
-#endif
     oop_size = oop(bottom)->oop_iterate(cl2, mr);
   } else {
     oop_size = oop(bottom)->size();
@@ -232,12 +220,6 @@
 
     // Last object. Need to do dead-obj filtering here too.
     if (!g1h->is_obj_dead(oop(bottom), _hr)) {
-#ifndef PRODUCT
-      if (G1VerifyMarkingInEvac) {
-        VerifyLiveClosure vl_cl(g1h);
-        oop(bottom)->oop_iterate(&vl_cl, mr);
-      }
-#endif
       oop(bottom)->oop_iterate(cl2, mr);
     }
   }
@@ -713,12 +695,12 @@
     G1CollectedHeap::heap()->print();
     gclog_or_tty->print_cr("");
   }
-  if (G1VerifyConcMark &&
+  if (VerifyDuringGC &&
       G1VerifyConcMarkPrintReachable &&
       vl_cl.failures()) {
     g1->concurrent_mark()->print_prev_bitmap_reachable();
   }
-  guarantee(!vl_cl.failures(), "should not have had any failures");
+  guarantee(!vl_cl.failures(), "region verification failed");
   guarantee(p == top(), "end of last object must match end of space");
 }
 
--- a/hotspot/src/share/vm/opto/connode.cpp	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/src/share/vm/opto/connode.cpp	Thu May 14 00:17:25 2009 -0700
@@ -128,6 +128,10 @@
       // Swapped Cmp is OK
       (phase->eqv(cmp->in(2),f) &&
        phase->eqv(cmp->in(1),t)) ) {
+    // Give up this identity check for floating points because it may choose incorrect
+    // value around 0.0 and -0.0
+    if ( cmp->Opcode()==Op_CmpF || cmp->Opcode()==Op_CmpD )
+      return NULL;
     // Check for "(t==f)?t:f;" and replace with "f"
     if( b->_test._test == BoolTest::eq )
       return f;
--- a/hotspot/src/share/vm/opto/divnode.cpp	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/src/share/vm/opto/divnode.cpp	Thu May 14 00:17:25 2009 -0700
@@ -298,8 +298,10 @@
 
   // 6732154: Construct both w1 and w2 before transforming, so t
   // doesn't go dead prematurely.
+  // 6837011: We need to transform w2 before w1 because the
+  // transformation of w1 could return t.
+  w2 = phase->transform(w2);
   w1 = phase->transform(w1);
-  w2 = phase->transform(w2);
 
   // w1 = u0*v1 + w1;
   Node* u0v1 = phase->transform(new (phase->C, 3) MulLNode(u0, v1));
--- a/hotspot/src/share/vm/runtime/arguments.cpp	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/src/share/vm/runtime/arguments.cpp	Thu May 14 00:17:25 2009 -0700
@@ -1288,10 +1288,14 @@
                      Abstract_VM_Version::parallel_worker_threads());
   if (ParallelGCThreads == 0) {
     FLAG_SET_DEFAULT(ParallelGCThreads,
-                     Abstract_VM_Version::parallel_worker_threads
-());
+                     Abstract_VM_Version::parallel_worker_threads());
   }
   no_shared_spaces();
+
+  // Set the maximum pause time goal to be a reasonable default.
+  if (FLAG_IS_DEFAULT(MaxGCPauseMillis)) {
+    FLAG_SET_DEFAULT(MaxGCPauseMillis, 200);
+  }
 }
 
 void Arguments::set_server_heap_size() {
--- a/hotspot/src/share/vm/runtime/dtraceJSDT.cpp	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/src/share/vm/runtime/dtraceJSDT.cpp	Thu May 14 00:17:25 2009 -0700
@@ -60,6 +60,11 @@
       methodHandle h_method =
         methodHandle(THREAD, JNIHandles::resolve_jmethod_id(probe->method));
       nmethod* nm = AdapterHandlerLibrary::create_dtrace_nmethod(h_method);
+      if (nm == NULL) {
+        delete probes;
+        THROW_MSG_0(vmSymbols::java_lang_RuntimeException(),
+          "Unable to register DTrace probes (CodeCache: no room for DTrace nmethods).");
+      }
       h_method()->set_not_compilable(CompLevel_highest_tier);
       h_method()->set_code(h_method, nm);
       probes->nmethod_at_put(count++, nm);
--- a/hotspot/src/share/vm/runtime/globals.hpp	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/src/share/vm/runtime/globals.hpp	Thu May 14 00:17:25 2009 -0700
@@ -1819,7 +1819,11 @@
           "Decay factor to TenuredGenerationSizeIncrement")                 \
                                                                             \
   product(uintx, MaxGCPauseMillis, max_uintx,                               \
-          "Adaptive size policy maximum GC pause time goal in msec")        \
+          "Adaptive size policy maximum GC pause time goal in msec, "       \
+          "or (G1 Only) the max. GC time per MMU time slice")               \
+                                                                            \
+  product(intx, GCPauseIntervalMillis, 500,                                 \
+          "Time slice for MMU specification")                               \
                                                                             \
   product(uintx, MaxGCMinorPauseMillis, max_uintx,                          \
           "Adaptive size policy maximum GC minor pause time goal in msec")  \
--- a/hotspot/src/share/vm/runtime/sharedRuntime.cpp	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/src/share/vm/runtime/sharedRuntime.cpp	Thu May 14 00:17:25 2009 -0700
@@ -1776,7 +1776,14 @@
 GrowableArray<uint64_t>* AdapterHandlerLibrary::_fingerprints = NULL;
 GrowableArray<AdapterHandlerEntry* >* AdapterHandlerLibrary::_handlers = NULL;
 const int AdapterHandlerLibrary_size = 16*K;
-u_char                   AdapterHandlerLibrary::_buffer[AdapterHandlerLibrary_size + 32];
+BufferBlob* AdapterHandlerLibrary::_buffer = NULL;
+
+BufferBlob* AdapterHandlerLibrary::buffer_blob() {
+  // Should be called only when AdapterHandlerLibrary_lock is active.
+  if (_buffer == NULL) // Initialize lazily
+      _buffer = BufferBlob::create("adapters", AdapterHandlerLibrary_size);
+  return _buffer;
+}
 
 void AdapterHandlerLibrary::initialize() {
   if (_fingerprints != NULL) return;
@@ -1812,7 +1819,9 @@
   assert(ic_miss != NULL, "must have handler");
 
   int result;
+  NOT_PRODUCT(int code_size);
   BufferBlob *B = NULL;
+  AdapterHandlerEntry* entry = NULL;
   uint64_t fingerprint;
   {
     MutexLocker mu(AdapterHandlerLibrary_lock);
@@ -1850,42 +1859,45 @@
 
     // Create I2C & C2I handlers
     ResourceMark rm;
-    // Improve alignment slightly
-    u_char *buf = (u_char*)(((intptr_t)_buffer + CodeEntryAlignment-1) & ~(CodeEntryAlignment-1));
-    CodeBuffer buffer(buf, AdapterHandlerLibrary_size);
-    short buffer_locs[20];
-    buffer.insts()->initialize_shared_locs((relocInfo*)buffer_locs,
-                                           sizeof(buffer_locs)/sizeof(relocInfo));
-    MacroAssembler _masm(&buffer);
 
-    // Fill in the signature array, for the calling-convention call.
-    int total_args_passed = method->size_of_parameters(); // All args on stack
+    BufferBlob*  buf = buffer_blob(); // the temporary code buffer in CodeCache
+    if (buf != NULL) {
+      CodeBuffer buffer(buf->instructions_begin(), buf->instructions_size());
+      short buffer_locs[20];
+      buffer.insts()->initialize_shared_locs((relocInfo*)buffer_locs,
+                                             sizeof(buffer_locs)/sizeof(relocInfo));
+      MacroAssembler _masm(&buffer);
 
-    BasicType* sig_bt = NEW_RESOURCE_ARRAY(BasicType,total_args_passed);
-    VMRegPair  * regs   = NEW_RESOURCE_ARRAY(VMRegPair  ,total_args_passed);
-    int i=0;
-    if( !method->is_static() )  // Pass in receiver first
-      sig_bt[i++] = T_OBJECT;
-    for( SignatureStream ss(method->signature()); !ss.at_return_type(); ss.next()) {
-      sig_bt[i++] = ss.type();  // Collect remaining bits of signature
-      if( ss.type() == T_LONG || ss.type() == T_DOUBLE )
-        sig_bt[i++] = T_VOID;   // Longs & doubles take 2 Java slots
+      // Fill in the signature array, for the calling-convention call.
+      int total_args_passed = method->size_of_parameters(); // All args on stack
+
+      BasicType* sig_bt = NEW_RESOURCE_ARRAY(BasicType,total_args_passed);
+      VMRegPair  * regs   = NEW_RESOURCE_ARRAY(VMRegPair  ,total_args_passed);
+      int i=0;
+      if( !method->is_static() )  // Pass in receiver first
+        sig_bt[i++] = T_OBJECT;
+      for( SignatureStream ss(method->signature()); !ss.at_return_type(); ss.next()) {
+        sig_bt[i++] = ss.type();  // Collect remaining bits of signature
+        if( ss.type() == T_LONG || ss.type() == T_DOUBLE )
+          sig_bt[i++] = T_VOID;   // Longs & doubles take 2 Java slots
+      }
+      assert( i==total_args_passed, "" );
+
+      // Now get the re-packed compiled-Java layout.
+      int comp_args_on_stack;
+
+      // Get a description of the compiled java calling convention and the largest used (VMReg) stack slot usage
+      comp_args_on_stack = SharedRuntime::java_calling_convention(sig_bt, regs, total_args_passed, false);
+
+      entry = SharedRuntime::generate_i2c2i_adapters(&_masm,
+                                                     total_args_passed,
+                                                     comp_args_on_stack,
+                                                     sig_bt,
+                                                     regs);
+
+      B = BufferBlob::create(AdapterHandlerEntry::name, &buffer);
+      NOT_PRODUCT(code_size = buffer.code_size());
     }
-    assert( i==total_args_passed, "" );
-
-    // Now get the re-packed compiled-Java layout.
-    int comp_args_on_stack;
-
-    // Get a description of the compiled java calling convention and the largest used (VMReg) stack slot usage
-    comp_args_on_stack = SharedRuntime::java_calling_convention(sig_bt, regs, total_args_passed, false);
-
-    AdapterHandlerEntry* entry = SharedRuntime::generate_i2c2i_adapters(&_masm,
-                                                                        total_args_passed,
-                                                                        comp_args_on_stack,
-                                                                        sig_bt,
-                                                                        regs);
-
-    B = BufferBlob::create(AdapterHandlerEntry::name, &buffer);
     if (B == NULL) {
       // CodeCache is full, disable compilation
       // Ought to log this but compile log is only per compile thread
@@ -1912,9 +1924,9 @@
       tty->cr();
       tty->print_cr("i2c argument handler #%d for: %s %s (fingerprint = 0x%llx, %d bytes generated)",
                     _handlers->length(), (method->is_static() ? "static" : "receiver"),
-                    method->signature()->as_C_string(), fingerprint, buffer.code_size() );
+                    method->signature()->as_C_string(), fingerprint, code_size );
       tty->print_cr("c2i argument handler starts at %p",entry->get_c2i_entry());
-      Disassembler::decode(entry->get_i2c_entry(), entry->get_i2c_entry() + buffer.code_size());
+      Disassembler::decode(entry->get_i2c_entry(), entry->get_i2c_entry() + code_size);
     }
 #endif
 
@@ -1982,42 +1994,44 @@
       return nm;
     }
 
-    // Improve alignment slightly
-    u_char* buf = (u_char*)(((intptr_t)_buffer + CodeEntryAlignment-1) & ~(CodeEntryAlignment-1));
-    CodeBuffer buffer(buf, AdapterHandlerLibrary_size);
-    // Need a few relocation entries
-    double locs_buf[20];
-    buffer.insts()->initialize_shared_locs((relocInfo*)locs_buf, sizeof(locs_buf) / sizeof(relocInfo));
-    MacroAssembler _masm(&buffer);
+    ResourceMark rm;
 
-    // Fill in the signature array, for the calling-convention call.
-    int total_args_passed = method->size_of_parameters();
+    BufferBlob*  buf = buffer_blob(); // the temporary code buffer in CodeCache
+    if (buf != NULL) {
+      CodeBuffer buffer(buf->instructions_begin(), buf->instructions_size());
+      double locs_buf[20];
+      buffer.insts()->initialize_shared_locs((relocInfo*)locs_buf, sizeof(locs_buf) / sizeof(relocInfo));
+      MacroAssembler _masm(&buffer);
 
-    BasicType* sig_bt = NEW_RESOURCE_ARRAY(BasicType,total_args_passed);
-    VMRegPair  * regs   = NEW_RESOURCE_ARRAY(VMRegPair  ,total_args_passed);
-    int i=0;
-    if( !method->is_static() )  // Pass in receiver first
-      sig_bt[i++] = T_OBJECT;
-    SignatureStream ss(method->signature());
-    for( ; !ss.at_return_type(); ss.next()) {
-      sig_bt[i++] = ss.type();  // Collect remaining bits of signature
-      if( ss.type() == T_LONG || ss.type() == T_DOUBLE )
-        sig_bt[i++] = T_VOID;   // Longs & doubles take 2 Java slots
+      // Fill in the signature array, for the calling-convention call.
+      int total_args_passed = method->size_of_parameters();
+
+      BasicType* sig_bt = NEW_RESOURCE_ARRAY(BasicType,total_args_passed);
+      VMRegPair*   regs = NEW_RESOURCE_ARRAY(VMRegPair,total_args_passed);
+      int i=0;
+      if( !method->is_static() )  // Pass in receiver first
+        sig_bt[i++] = T_OBJECT;
+      SignatureStream ss(method->signature());
+      for( ; !ss.at_return_type(); ss.next()) {
+        sig_bt[i++] = ss.type();  // Collect remaining bits of signature
+        if( ss.type() == T_LONG || ss.type() == T_DOUBLE )
+          sig_bt[i++] = T_VOID;   // Longs & doubles take 2 Java slots
+      }
+      assert( i==total_args_passed, "" );
+      BasicType ret_type = ss.type();
+
+      // Now get the compiled-Java layout as input arguments
+      int comp_args_on_stack;
+      comp_args_on_stack = SharedRuntime::java_calling_convention(sig_bt, regs, total_args_passed, false);
+
+      // Generate the compiled-to-native wrapper code
+      nm = SharedRuntime::generate_native_wrapper(&_masm,
+                                                  method,
+                                                  total_args_passed,
+                                                  comp_args_on_stack,
+                                                  sig_bt,regs,
+                                                  ret_type);
     }
-    assert( i==total_args_passed, "" );
-    BasicType ret_type = ss.type();
-
-    // Now get the compiled-Java layout as input arguments
-    int comp_args_on_stack;
-    comp_args_on_stack = SharedRuntime::java_calling_convention(sig_bt, regs, total_args_passed, false);
-
-    // Generate the compiled-to-native wrapper code
-    nm = SharedRuntime::generate_native_wrapper(&_masm,
-                                                method,
-                                                total_args_passed,
-                                                comp_args_on_stack,
-                                                sig_bt,regs,
-                                                ret_type);
   }
 
   // Must unlock before calling set_code
@@ -2077,18 +2091,20 @@
       return nm;
     }
 
-    // Improve alignment slightly
-    u_char* buf = (u_char*)
-        (((intptr_t)_buffer + CodeEntryAlignment-1) & ~(CodeEntryAlignment-1));
-    CodeBuffer buffer(buf, AdapterHandlerLibrary_size);
-    // Need a few relocation entries
-    double locs_buf[20];
-    buffer.insts()->initialize_shared_locs(
+    ResourceMark rm;
+
+    BufferBlob*  buf = buffer_blob(); // the temporary code buffer in CodeCache
+    if (buf != NULL) {
+      CodeBuffer buffer(buf->instructions_begin(), buf->instructions_size());
+      // Need a few relocation entries
+      double locs_buf[20];
+      buffer.insts()->initialize_shared_locs(
         (relocInfo*)locs_buf, sizeof(locs_buf) / sizeof(relocInfo));
-    MacroAssembler _masm(&buffer);
+      MacroAssembler _masm(&buffer);
 
-    // Generate the compiled-to-native wrapper code
-    nm = SharedRuntime::generate_dtrace_nmethod(&_masm, method);
+      // Generate the compiled-to-native wrapper code
+      nm = SharedRuntime::generate_dtrace_nmethod(&_masm, method);
+    }
   }
   return nm;
 }
--- a/hotspot/src/share/vm/runtime/sharedRuntime.hpp	Tue May 12 15:21:55 2009 +0900
+++ b/hotspot/src/share/vm/runtime/sharedRuntime.hpp	Thu May 14 00:17:25 2009 -0700
@@ -557,12 +557,13 @@
 
 class AdapterHandlerLibrary: public AllStatic {
  private:
-  static u_char                   _buffer[];  // the temporary code buffer
+  static BufferBlob* _buffer; // the temporary code buffer in CodeCache
   static GrowableArray<uint64_t>* _fingerprints; // the fingerprint collection
   static GrowableArray<AdapterHandlerEntry*> * _handlers; // the corresponding handlers
   enum {
     AbstractMethodHandler = 1 // special handler for abstract methods
   };
+  static BufferBlob* buffer_blob();
   static void initialize();
   static int get_create_adapter_index(methodHandle method);
   static address get_i2c_entry( int index ) {
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/compiler/6837011/Test6837011.java	Thu May 14 00:17:25 2009 -0700
@@ -0,0 +1,45 @@
+/*
+ * Copyright 2009 Sun Microsystems, Inc.  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
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+ * CA 95054 USA or visit www.sun.com if you need additional information or
+ * have any questions.
+ */
+
+/**
+ * @test
+ * @bug 6837011
+ * @summary SIGSEGV in PhaseIdealLoop in 32bit jvm
+ *
+ * @run main/othervm -Xcomp -XX:CompileOnly=Test6837011.main Test6837011
+ */
+
+public class Test6837011 {
+    static boolean var_3 = true;
+
+    public static void main(String[] args) {
+        double var_5;
+        char var_7 = 1;
+        double var_11 = 0;
+
+        do {
+            var_11++;
+            var_5 = (var_7 /= ( var_3 ? ~1L : 3 ) );
+        } while (var_11 < 1);
+    }
+}
--- a/jaxp/.hgtags	Tue May 12 15:21:55 2009 +0900
+++ b/jaxp/.hgtags	Thu May 14 00:17:25 2009 -0700
@@ -31,3 +31,5 @@
 946a9f0c493261fa6a010dc33e61b9b535ba80c1 jdk7-b54
 039945fba683ee6773a721e2bd4e449f6133769a jdk7-b55
 c197c6801271c60f9c9f5d18fcc95b59e76dcd54 jdk7-b56
+e4851e9f7be26fc52a628be06ffa8aaea0919bd7 jdk7-b57
+13bf67d8c6341b841d268985cabaf747f2652bc8 jdk7-b58
--- a/jaxp/src/share/classes/com/sun/org/apache/xalan/internal/client/XSLTProcessorApplet.java	Tue May 12 15:21:55 2009 +0900
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,792 +0,0 @@
-/*
- * reserved comment block
- * DO NOT REMOVE OR ALTER!
- */
-/*
- * Copyright 1999-2004 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-/*
- * $Id: XSLTProcessorApplet.java,v 1.2.4.1 2005/09/15 02:20:05 jeffsuttor Exp $
- */
-package com.sun.org.apache.xalan.internal.client;
-
-import java.applet.Applet;
-import java.awt.Graphics;
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.io.StringReader;
-import java.io.StringWriter;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.Hashtable;
-import java.util.Enumeration;
-
-import javax.xml.transform.Templates;
-import javax.xml.transform.Transformer;
-import javax.xml.transform.TransformerConfigurationException;
-import javax.xml.transform.TransformerException;
-import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.stream.StreamResult;
-import javax.xml.transform.stream.StreamSource;
-
-import com.sun.org.apache.xalan.internal.res.XSLMessages;
-import com.sun.org.apache.xalan.internal.res.XSLTErrorResources;
-
-/**
- * Provides applet host for the XSLT processor. To perform transformations on an HTML client:
- * <ol>
- * <li>Use an &lt;applet&gt; tag to embed this applet in the HTML client.</li>
- * <li>Use the DocumentURL and StyleURL PARAM tags or the {@link #setDocumentURL} and
- * {@link #setStyleURL} methods to specify the XML source document and XSL stylesheet.</li>
- * <li>Call the {@link #getHtmlText} method (or one of the transformToHtml() methods)
- * to perform the transformation and return the result as a String.</li>
- * </ol>
- *
- * This class extends Applet which ultimately causes this class to implement Serializable.
- * This is a serious restriction on this class. All fields that are not transient and not
- * static are written-out/read-in during serialization. So even private fields essentially
- * become part of the API. Developers need to take care when modifying fields.
- * @xsl.usage general
- */
-public class XSLTProcessorApplet extends Applet
-{
-
-  /**
-   * The stylesheet processor.
-   * This field is now transient because a
-   * javax.xml.transform.TransformerFactory from JAXP
-   * makes no claims to be serializable.
-   */
-  transient TransformerFactory m_tfactory = null;
-
-  /**
-   * @serial
-   */
-  private String m_styleURL;
-
-  /**
-   * @serial
-   */
-  private String m_documentURL;
-
-  // Parameter names.  To change a name of a parameter, you need only make
-  // a single change.  Simply modify the value of the parameter string below.
-  //--------------------------------------------------------------------------
-
-  /**
-   * @serial
-   */
-  private final String PARAM_styleURL = "styleURL";
-
-  /**
-   * @serial
-   */
-  private final String PARAM_documentURL = "documentURL";
-
-
-  // We'll keep the DOM trees around, so tell which trees
-  // are cached.
-
-  /**
-   * @serial
-   */
-  private String m_styleURLOfCached = null;
-
-  /**
-   * @serial
-   */
-  private String m_documentURLOfCached = null;
-
-  /**
-   * Save this for use on the worker thread; may not be necessary.
-   * @serial
-   */
-  private URL m_codeBase = null;
-
-  /**
-   * @serial
-   */
-  private String m_treeURL = null;
-
-  /**
-   * DocumentBase URL
-   * @serial
-   */
-  private URL m_documentBase = null;
-
-  /**
-   * Thread stuff for the trusted worker thread.
-   */
-  transient private Thread m_callThread = null;
-
-  /**
-   */
-  transient private TrustedAgent m_trustedAgent = null;
-
-  /**
-   * Thread for running TrustedAgent.
-   */
-  transient private Thread m_trustedWorker = null;
-
-  /**
-   * Where the worker thread puts the HTML text.
-   */
-  transient private String m_htmlText = null;
-
-  /**
-   * Where the worker thread puts the document/stylesheet text.
-   */
-  transient private String m_sourceText = null;
-
-  /**
-   * Stylesheet attribute name and value that the caller can set.
-   */
-  transient private String m_nameOfIDAttrOfElemToModify = null;
-
-  /**
-   */
-  transient private String m_elemIdToModify = null;
-
-  /**
-   */
-  transient private String m_attrNameToSet = null;
-
-  /**
-   */
-  transient private String m_attrValueToSet = null;
-
-  /**
-   * The XSLTProcessorApplet constructor takes no arguments.
-   */
-  public XSLTProcessorApplet(){}
-
-  /**
-   * Get basic information about the applet
-   * @return A String with the applet name and author.
-   */
-  public String getAppletInfo()
-  {
-    return "Name: XSLTProcessorApplet\r\n" + "Author: Scott Boag";
-  }
-
-  /**
-   * Get descriptions of the applet parameters.
-   * @return A two-dimensional array of Strings with Name, Type, and Description
-   * for each parameter.
-   */
-  public String[][] getParameterInfo()
-  {
-
-    String[][] info =
-    {
-      { PARAM_styleURL, "String", "URL to an XSL stylesheet" },
-      { PARAM_documentURL, "String", "URL to an XML document" },
-    };
-
-    return info;
-  }
-
-  /**
-   * Standard applet initialization.
-   */
-  public void init()
-  {
-
-    // PARAMETER SUPPORT
-    //          The following code retrieves the value of each parameter
-    // specified with the <PARAM> tag and stores it in a member
-    // variable.
-    //----------------------------------------------------------------------
-    String param;
-
-    // styleURL: Parameter description
-    //----------------------------------------------------------------------
-    param = getParameter(PARAM_styleURL);
-
-    // stylesheet parameters
-    m_parameters = new Hashtable();
-
-    if (param != null)
-      setStyleURL(param);
-
-    // documentURL: Parameter description
-    //----------------------------------------------------------------------
-    param = getParameter(PARAM_documentURL);
-
-    if (param != null)
-      setDocumentURL(param);
-
-    m_codeBase = this.getCodeBase();
-    m_documentBase = this.getDocumentBase();
-
-    // If you use a ResourceWizard-generated "control creator" class to
-    // arrange controls in your applet, you may want to call its
-    // CreateControls() method from within this method. Remove the following
-    // call to resize() before adding the call to CreateControls();
-    // CreateControls() does its own resizing.
-    //----------------------------------------------------------------------
-    resize(320, 240);
-  }
-
-    /**
-   *  Automatically called when the HTML client containing the applet loads.
-   *  This method starts execution of the applet thread.
-   */
-  public void start()
-  {
-      //check if user code's on the stack before invoking the worker thread
-     boolean passed = false;
-     try {
-       java.security.AccessController.checkPermission(new java.security.AllPermission());
-     } catch (SecurityException se) {
-         //expected
-         passed = true;
-     }
-     if (!passed) {
-         throw new SecurityException("The XSLTProcessorApplet class must be extended and its method start() overridden.");
-     }
-
-    m_trustedAgent = new TrustedAgent();
-    Thread currentThread = Thread.currentThread();
-    m_trustedWorker = new Thread(currentThread.getThreadGroup(),
-                                 m_trustedAgent);
-    m_trustedWorker.start();
-    try
-    {
-      m_tfactory = TransformerFactory.newInstance();
-      this.showStatus("Causing Transformer and Parser to Load and JIT...");
-
-      // Prime the pump so that subsequent transforms are faster.
-      StringReader xmlbuf = new StringReader("<?xml version='1.0'?><foo/>");
-      StringReader xslbuf = new StringReader(
-        "<?xml version='1.0'?><xsl:stylesheet xmlns:xsl='http://www.w3.org/1999/XSL/Transform' version='1.0'><xsl:template match='foo'><out/></xsl:template></xsl:stylesheet>");
-      PrintWriter pw = new PrintWriter(new StringWriter());
-
-      synchronized (m_tfactory)
-      {
-        Templates templates = m_tfactory.newTemplates(new StreamSource(xslbuf));
-        Transformer transformer = templates.newTransformer();
-        transformer.transform(new StreamSource(xmlbuf), new StreamResult(pw));
-      }
-      System.out.println("Primed the pump!");
-      this.showStatus("Ready to go!");
-    }
-    catch (Exception e)
-    {
-      this.showStatus("Could not prime the pump!");
-      System.out.println("Could not prime the pump!");
-      e.printStackTrace();
-    }
-  }
-
-  /**
-   * Do not call; this applet contains no UI or visual components.
-   *
-   */
-  public void paint(Graphics g){}
-
-  /**
-   * Automatically called when the HTML page containing the applet is no longer
-   * on the screen. Stops execution of the applet thread.
-   */
-  public void stop()
-  {
-    if (null != m_trustedWorker)
-    {
-      m_trustedWorker.stop();
-
-      // m_trustedWorker.destroy();
-      m_trustedWorker = null;
-    }
-
-    m_styleURLOfCached = null;
-    m_documentURLOfCached = null;
-  }
-
-  /**
-   * Cleanup; called when applet is terminated and unloaded.
-   */
-  public void destroy()
-  {
-    if (null != m_trustedWorker)
-    {
-      m_trustedWorker.stop();
-
-      // m_trustedWorker.destroy();
-      m_trustedWorker = null;
-    }
-    m_styleURLOfCached = null;
-    m_documentURLOfCached = null;
-  }
-
-  /**
-   * Set the URL to the XSL stylesheet that will be used
-   * to transform the input XML.  No processing is done yet.
-   * @param urlString valid URL string for XSL stylesheet.
-   */
-  public void setStyleURL(String urlString)
-  {
-    m_styleURL = urlString;
-  }
-
-  /**
-   * Set the URL to the XML document that will be transformed
-   * with the XSL stylesheet.  No processing is done yet.
-   * @param urlString valid URL string for XML document.
-   */
-  public void setDocumentURL(String urlString)
-  {
-    m_documentURL = urlString;
-  }
-
-  /**
-   * The processor keeps a cache of the source and
-   * style trees, so call this method if they have changed
-   * or you want to do garbage collection.
-   */
-  public void freeCache()
-  {
-    m_styleURLOfCached = null;
-    m_documentURLOfCached = null;
-  }
-
-  /**
-   * Set an attribute in the stylesheet, which gives the ability
-   * to have some dynamic selection control.
-   * @param nameOfIDAttrOfElemToModify The name of an attribute to search for a unique id.
-   * @param elemId The unique ID to look for.
-   * @param attrName Once the element is found, the name of the attribute to set.
-   * @param value The value to set the attribute to.
-   */
-  public void setStyleSheetAttribute(String nameOfIDAttrOfElemToModify,
-                                     String elemId, String attrName,
-                                     String value)
-  {
-    m_nameOfIDAttrOfElemToModify = nameOfIDAttrOfElemToModify;
-    m_elemIdToModify = elemId;
-    m_attrNameToSet = attrName;
-    m_attrValueToSet = value;
-  }
-
-
-  /**
-   * Stylesheet parameter key/value pair stored in a hashtable
-   */
-  transient Hashtable m_parameters;
-
-  /**
-   * Submit a stylesheet parameter.
-   *
-   * @param key stylesheet parameter key
-   * @param expr the parameter expression to be submitted.
-   * @see javax.xml.transform.Transformer#setParameter(String,Object)
-   */
-  public void setStylesheetParam(String key, String expr)
-  {
-    m_parameters.put(key, expr);
-  }
-
-  /**
-   * Given a String containing markup, escape the markup so it
-   * can be displayed in the browser.
-   *
-   * @param s String to escape
-   *
-   * The escaped string.
-   */
-  public String escapeString(String s)
-  {
-    StringBuffer sb = new StringBuffer();
-    int length = s.length();
-
-    for (int i = 0; i < length; i++)
-    {
-      char ch = s.charAt(i);
-
-      if ('<' == ch)
-      {
-        sb.append("&lt;");
-      }
-      else if ('>' == ch)
-      {
-        sb.append("&gt;");
-      }
-      else if ('&' == ch)
-      {
-        sb.append("&amp;");
-      }
-      else if (0xd800 <= ch && ch < 0xdc00)
-      {
-        // UTF-16 surrogate
-        int next;
-
-        if (i + 1 >= length)
-        {
-          throw new RuntimeException(
-            XSLMessages.createMessage(
-              XSLTErrorResources.ER_INVALID_UTF16_SURROGATE,
-              new Object[]{ Integer.toHexString(ch) }));  //"Invalid UTF-16 surrogate detected: "
-
-          //+Integer.toHexString(ch)+ " ?");
-        }
-        else
-        {
-          next = s.charAt(++i);
-
-          if (!(0xdc00 <= next && next < 0xe000))
-            throw new RuntimeException(
-              XSLMessages.createMessage(
-                XSLTErrorResources.ER_INVALID_UTF16_SURROGATE,
-                new Object[]{
-                  Integer.toHexString(ch) + " "
-                  + Integer.toHexString(next) }));  //"Invalid UTF-16 surrogate detected: "
-
-          //+Integer.toHexString(ch)+" "+Integer.toHexString(next));
-          next = ((ch - 0xd800) << 10) + next - 0xdc00 + 0x00010000;
-        }
-        sb.append("&#x");
-        sb.append(Integer.toHexString(next));
-        sb.append(";");
-      }
-      else
-      {
-        sb.append(ch);
-      }
-    }
-    return sb.toString();
-  }
-
-  /**
-   * Assuming the stylesheet URL and the input XML URL have been set,
-   * perform the transformation and return the result as a String.
-   *
-   * @return A string that contains the contents pointed to by the URL.
-   *
-   */
-  public String getHtmlText()
-  {
-    m_trustedAgent.m_getData = true;
-    m_callThread = Thread.currentThread();
-    try
-    {
-      synchronized (m_callThread)
-      {
-        m_callThread.wait();
-      }
-    }
-    catch (InterruptedException ie)
-    {
-      System.out.println(ie.getMessage());
-    }
-    return m_htmlText;
-  }
-
-  /**
-   * Get an XML document (or stylesheet)
-   *
-   * @param treeURL valid URL string for the document.
-   *
-   * @return document
-   *
-   * @throws IOException
-   */
-  public String getTreeAsText(String treeURL) throws IOException
-  {
-    m_treeURL = treeURL;
-    m_trustedAgent.m_getData = true;
-    m_trustedAgent.m_getSource = true;
-    m_callThread = Thread.currentThread();
-    try
-    {
-      synchronized (m_callThread)
-      {
-        m_callThread.wait();
-      }
-    }
-    catch (InterruptedException ie)
-    {
-      System.out.println(ie.getMessage());
-    }
-    return m_sourceText;
-  }
-
-  /**
-   * Use a Transformer to copy the source document
-   * to a StreamResult.
-   *
-   * @return the document as a string
-   */
-  private String getSource() throws TransformerException
-  {
-    StringWriter osw = new StringWriter();
-    PrintWriter pw = new PrintWriter(osw, false);
-    String text = "";
-    try
-    {
-      URL docURL = new URL(m_documentBase, m_treeURL);
-      synchronized (m_tfactory)
-      {
-        Transformer transformer = m_tfactory.newTransformer();
-        StreamSource source = new StreamSource(docURL.toString());
-        StreamResult result = new StreamResult(pw);
-        transformer.transform(source, result);
-        text = osw.toString();
-      }
-    }
-    catch (MalformedURLException e)
-    {
-      e.printStackTrace();
-      throw new RuntimeException(e.getMessage());
-    }
-    catch (Exception any_error)
-    {
-      any_error.printStackTrace();
-    }
-    return text;
-  }
-
-  /**
-   * Get the XML source Tree as a text string suitable
-   * for display in a browser.  Note that this is for display of the
-   * XML itself, not for rendering of HTML by the browser.
-   *
-   * @return XML source document as a string.
-   * @throws Exception thrown if tree can not be converted.
-   */
-  public String getSourceTreeAsText() throws Exception
-  {
-    return getTreeAsText(m_documentURL);
-  }
-
-  /**
-   * Get the XSL style Tree as a text string suitable
-   * for display in a browser.  Note that this is for display of the
-   * XML itself, not for rendering of HTML by the browser.
-   *
-   * @return The XSL stylesheet as a string.
-   * @throws Exception thrown if tree can not be converted.
-   */
-  public String getStyleTreeAsText() throws Exception
-  {
-    return getTreeAsText(m_styleURL);
-  }
-
-  /**
-   * Get the HTML result Tree as a text string suitable
-   * for display in a browser.  Note that this is for display of the
-   * XML itself, not for rendering of HTML by the browser.
-   *
-   * @return Transformation result as unmarked text.
-   * @throws Exception thrown if tree can not be converted.
-   */
-  public String getResultTreeAsText() throws Exception
-  {
-    return escapeString(getHtmlText());
-  }
-
-  /**
-   * Process a document and a stylesheet and return
-   * the transformation result.  If one of these is null, the
-   * existing value (of a previous transformation) is not affected.
-   *
-   * @param doc URL string to XML document
-   * @param style URL string to XSL stylesheet
-   *
-   * @return HTML transformation result
-   */
-  public String transformToHtml(String doc, String style)
-  {
-
-    if (null != doc)
-    {
-      m_documentURL = doc;
-    }
-
-    if (null != style)
-    {
-      m_styleURL = style;
-    }
-
-    return getHtmlText();
-  }
-
-  /**
-   * Process a document and a stylesheet and return
-   * the transformation result. Use the xsl:stylesheet PI to find the
-   * document, if one exists.
-   *
-   * @param doc  URL string to XML document containing an xsl:stylesheet PI.
-   *
-   * @return HTML transformation result
-   */
-  public String transformToHtml(String doc)
-  {
-
-    if (null != doc)
-    {
-      m_documentURL = doc;
-    }
-
-    m_styleURL = null;
-
-    return getHtmlText();
-  }
-
-
-  /**
-   * Process the transformation.
-   *
-   * @return The transformation result as a string.
-   *
-   * @throws TransformerException
-   */
-  private String processTransformation() throws TransformerException
-  {
-    String htmlData = null;
-    this.showStatus("Waiting for Transformer and Parser to finish loading and JITing...");
-
-    synchronized (m_tfactory)
-    {
-     URL documentURL = null;
-      URL styleURL = null;
-      StringWriter osw = new StringWriter();
-      PrintWriter pw = new PrintWriter(osw, false);
-      StreamResult result = new StreamResult(pw);
-
-      this.showStatus("Begin Transformation...");
-      try
-      {
-        documentURL = new URL(m_codeBase, m_documentURL);
-        StreamSource xmlSource = new StreamSource(documentURL.toString());
-
-        styleURL = new URL(m_codeBase, m_styleURL);
-        StreamSource xslSource = new StreamSource(styleURL.toString());
-
-        Transformer transformer = m_tfactory.newTransformer(xslSource);
-
-
-        Enumeration m_keys = m_parameters.keys();
-        while (m_keys.hasMoreElements()){
-          Object key = m_keys.nextElement();
-          Object expression = m_parameters.get(key);
-          transformer.setParameter((String) key, expression);
-        }
-        transformer.transform(xmlSource, result);
-      }
-      catch (TransformerConfigurationException tfe)
-      {
-        tfe.printStackTrace();
-        throw new RuntimeException(tfe.getMessage());
-      }
-      catch (MalformedURLException e)
-      {
-        e.printStackTrace();
-        throw new RuntimeException(e.getMessage());
-      }
-
-      this.showStatus("Transformation Done!");
-      htmlData = osw.toString();
-    }
-    return htmlData;
-  }
-
-  /**
-   * This class maintains a worker thread that that is
-   * trusted and can do things like access data.  You need
-   * this because the thread that is called by the browser
-   * is not trusted and can't access data from the URLs.
-   */
-  class TrustedAgent implements Runnable
-  {
-
-    /**
-     * Specifies whether the worker thread should perform a transformation.
-     */
-    public boolean m_getData = false;
-
-    /**
-     * Specifies whether the worker thread should get an XML document or XSL stylesheet.
-     */
-    public boolean m_getSource = false;
-
-    /**
-     * The real work is done from here.
-     *
-     */
-    public void run()
-    {
-      while (true)
-      {
-        m_trustedWorker.yield();
-
-        if (m_getData)  // Perform a transformation or get a document.
-        {
-          try
-          {
-            m_getData = false;
-            m_htmlText = null;
-            m_sourceText = null;
-            if (m_getSource)  // Get a document.
-            {
-              m_getSource = false;
-              m_sourceText = getSource();
-            }
-            else              // Perform a transformation.
-              m_htmlText = processTransformation();
-          }
-          catch (Exception e)
-          {
-            e.printStackTrace();
-          }
-          finally
-          {
-            synchronized (m_callThread)
-            {
-              m_callThread.notify();
-            }
-          }
-        }
-        else
-        {
-          try
-          {
-            m_trustedWorker.sleep(50);
-          }
-          catch (InterruptedException ie)
-          {
-            ie.printStackTrace();
-          }
-        }
-      }
-    }
-  }
-
-  // For compatiblity with old serialized objects
-  // We will change non-serialized fields and change methods
-  // and not have this break us.
-  private static final long serialVersionUID=4618876841979251422L;
-
-  // For compatibility when de-serializing old objects
-  private void readObject(java.io.ObjectInputStream inStream) throws IOException, ClassNotFoundException
-  {
-      inStream.defaultReadObject();
-
-      // Needed assignment of non-serialized fields
-
-      // A TransformerFactory is not guaranteed to be serializable,
-      // so we create one here
-      m_tfactory = TransformerFactory.newInstance();
-  }
-}
--- a/jaxp/src/share/classes/com/sun/org/apache/xalan/internal/client/package.html	Tue May 12 15:21:55 2009 +0900
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,28 +0,0 @@
-<!--
- * reserved comment block
- * DO NOT REMOVE OR ALTER!
--->
-<!--
- * Copyright 2000-2004 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
--->
-<!-- $Id: package.html,v 1.1.2.1 2005/08/01 02:11:22 jeffsuttor Exp $ -->
-<html>
-  <title>Xalan Client Package.</title>
-  <body>
-    <p>Implementation of Xalan applet.<p>
- </body>
-</html>
-
-
--- a/jaxws/.hgtags	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/.hgtags	Thu May 14 00:17:25 2009 -0700
@@ -31,3 +31,5 @@
 50ea00dc5f143fe00025233e704903c37f8464aa jdk7-b54
 e0eebd978b830c09e7862cff3f77a914c15651c9 jdk7-b55
 0f7fbf85f7a1d9c027a863b9955c623352ed1292 jdk7-b56
+68257a5eb19afc11aee7eb19f7250f9b9eec7c05 jdk7-b57
+5fb4fbea81c3609916da00417fdd15dbd9e39e97 jdk7-b58
--- a/jaxws/src/share/classes/com/sun/codemodel/internal/JClassContainer.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/codemodel/internal/JClassContainer.java	Thu May 14 00:17:25 2009 -0700
@@ -145,6 +145,7 @@
      *      newly created Annotation Type Declaration
      * @exception JClassAlreadyExistsException
      *      When the specified class/interface was already created.
+
      */
     public JDefinedClass _annotationTypeDeclaration(String name) throws JClassAlreadyExistsException;
 
@@ -156,6 +157,7 @@
      *      newly created Enum
      * @exception JClassAlreadyExistsException
      *      When the specified class/interface was already created.
+
      */
     public JDefinedClass _enum (String name) throws JClassAlreadyExistsException;
 
--- a/jaxws/src/share/classes/com/sun/codemodel/internal/JDefinedClass.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/codemodel/internal/JDefinedClass.java	Thu May 14 00:17:25 2009 -0700
@@ -428,6 +428,7 @@
      *      newly created Annotation Type Declaration
      * @exception JClassAlreadyExistsException
      *      When the specified class/interface was already created.
+
      */
     public JDefinedClass _annotationTypeDeclaration(String name) throws JClassAlreadyExistsException {
         return _class (JMod.PUBLIC,name,ClassType.ANNOTATION_TYPE_DECL);
--- a/jaxws/src/share/classes/com/sun/codemodel/internal/JForEach.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/codemodel/internal/JForEach.java	Thu May 14 00:17:25 2009 -0700
@@ -33,17 +33,17 @@
  */
 public final class JForEach implements JStatement {
 
-    private final JType type;
-    private final String var;
-    private JBlock body = null; // lazily created
-    private final JExpression collection;
+        private final JType type;
+        private final String var;
+        private JBlock body = null; // lazily created
+        private final JExpression collection;
     private final JVar loopVar;
 
-    public JForEach(JType vartype, String variable, JExpression collection) {
+        public JForEach(JType vartype, String variable, JExpression collection) {
 
-        this.type = vartype;
-        this.var = variable;
-        this.collection = collection;
+                this.type = vartype;
+                this.var = variable;
+                this.collection = collection;
         loopVar = new JVar(JMods.forVar(JMod.NONE), type, var, collection);
     }
 
@@ -51,24 +51,24 @@
     /**
      * Returns a reference to the loop variable.
      */
-    public JVar var() {
-        return loopVar;
-    }
+        public JVar var() {
+                return loopVar;
+        }
 
-    public JBlock body() {
-        if (body == null)
-            body = new JBlock();
-        return body;
-    }
+        public JBlock body() {
+                if (body == null)
+                        body = new JBlock();
+                return body;
+        }
 
-    public void state(JFormatter f) {
-        f.p("for (");
-        f.g(type).id(var).p(": ").g(collection);
-        f.p(')');
-        if (body != null)
-            f.g(body).nl();
-        else
-            f.p(';').nl();
-    }
+        public void state(JFormatter f) {
+                f.p("for (");
+                f.g(type).id(var).p(": ").g(collection);
+                f.p(')');
+                if (body != null)
+                        f.g(body).nl();
+                else
+                        f.p(';').nl();
+        }
 
 }
--- a/jaxws/src/share/classes/com/sun/codemodel/internal/JMethod.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/codemodel/internal/JMethod.java	Thu May 14 00:17:25 2009 -0700
@@ -38,49 +38,49 @@
  */
 public class JMethod extends JGenerifiableImpl implements JDeclaration, JAnnotatable {
 
-    /**
-     * Modifiers for this method
-     */
-    private JMods mods;
+        /**
+         * Modifiers for this method
+         */
+        private JMods mods;
 
-    /**
-     * Return type for this method
-     */
-    private JType type = null;
+        /**
+         * Return type for this method
+         */
+        private JType type = null;
 
-    /**
-     * Name of this method
-     */
-    private String name = null;
+        /**
+         * Name of this method
+         */
+        private String name = null;
 
-    /**
-     * List of parameters for this method's declaration
-     */
-    private final List<JVar> params = new ArrayList<JVar>();
+        /**
+         * List of parameters for this method's declaration
+         */
+        private final List<JVar> params = new ArrayList<JVar>();
 
-    /**
-     * Set of exceptions that this method may throw.
+        /**
+         * Set of exceptions that this method may throw.
      * A set instance lazily created.
-     */
-    private Set<JClass> _throws;
+         */
+        private Set<JClass> _throws;
 
-    /**
-     * JBlock of statements that makes up the body this method
-     */
-    private JBlock body = null;
+        /**
+         * JBlock of statements that makes up the body this method
+         */
+        private JBlock body = null;
 
-    private JDefinedClass outer;
+        private JDefinedClass outer;
 
-    /**
-     * javadoc comments for this JMethod
-     */
-    private JDocComment jdoc = null;
+        /**
+         * javadoc comments for this JMethod
+         */
+        private JDocComment jdoc = null;
 
-    /**
-     * Variable parameter for this method's varargs declaration
-     * introduced in J2SE 1.5
-     */
-    private JVar varParam = null;
+        /**
+         * Variable parameter for this method's varargs declaration
+         * introduced in J2SE 1.5
+         */
+        private JVar varParam = null;
 
     /**
      * Annotations on this variable. Lazily created.
@@ -88,9 +88,9 @@
     private List<JAnnotationUse> annotations = null;
 
 
-    private boolean isConstructor() {
-        return type == null;
-    }
+        private boolean isConstructor() {
+                return type == null;
+        }
 
     /** To set the default value for the
      *  annotation member
@@ -98,40 +98,40 @@
     private JExpression defaultValue = null;
 
 
-    /**
-     * JMethod constructor
-     *
-     * @param mods
-     *        Modifiers for this method's declaration
-     *
-     * @param type
-     *        Return type for the method
-     *
-     * @param name
-     *        Name of this method
-     */
-    JMethod(JDefinedClass outer, int mods, JType type, String name) {
-        this.mods = JMods.forMethod(mods);
-        this.type = type;
-        this.name = name;
-        this.outer = outer;
-    }
+        /**
+         * JMethod constructor
+         *
+         * @param mods
+         *        Modifiers for this method's declaration
+         *
+         * @param type
+         *        Return type for the method
+         *
+         * @param name
+         *        Name of this method
+         */
+        JMethod(JDefinedClass outer, int mods, JType type, String name) {
+                this.mods = JMods.forMethod(mods);
+                this.type = type;
+                this.name = name;
+                this.outer = outer;
+        }
 
-    /**
-     * Constructor constructor
-     *
-     * @param mods
-     *        Modifiers for this constructor's declaration
-     *
-     * @param _class
-     *        JClass containing this constructor
-     */
-    JMethod(int mods, JDefinedClass _class) {
-        this.mods = JMods.forMethod(mods);
-        this.type = null;
-        this.name = _class.name();
-        this.outer = _class;
-    }
+        /**
+         * Constructor constructor
+         *
+         * @param mods
+         *        Modifiers for this constructor's declaration
+         *
+         * @param _class
+         *        JClass containing this constructor
+         */
+        JMethod(int mods, JDefinedClass _class) {
+                this.mods = JMods.forMethod(mods);
+                this.type = null;
+                this.name = _class.name();
+                this.outer = _class;
+        }
 
     private Set<JClass> getThrows() {
         if(_throws==null)
@@ -139,56 +139,56 @@
         return _throws;
     }
 
-    /**
-     * Add an exception to the list of exceptions that this
-     * method may throw.
-     *
-     * @param exception
-     *        Name of an exception that this method may throw
-     */
-    public JMethod _throws(JClass exception) {
+        /**
+         * Add an exception to the list of exceptions that this
+         * method may throw.
+         *
+         * @param exception
+         *        Name of an exception that this method may throw
+         */
+        public JMethod _throws(JClass exception) {
         getThrows().add(exception);
-        return this;
-    }
+                return this;
+        }
 
-    public JMethod _throws(Class exception) {
-        return _throws(outer.owner().ref(exception));
-    }
+        public JMethod _throws(Class exception) {
+                return _throws(outer.owner().ref(exception));
+        }
 
-    /**
-     * Add the specified variable to the list of parameters
-     * for this method signature.
-     *
-     * @param type
-     *        JType of the parameter being added
-     *
-     * @param name
-     *        Name of the parameter being added
-     *
-     * @return New parameter variable
-     */
-    public JVar param(int mods, JType type, String name) {
-        JVar v = new JVar(JMods.forVar(mods), type, name, null);
-        params.add(v);
-        return v;
-    }
+        /**
+         * Add the specified variable to the list of parameters
+         * for this method signature.
+         *
+         * @param type
+         *        JType of the parameter being added
+         *
+         * @param name
+         *        Name of the parameter being added
+         *
+         * @return New parameter variable
+         */
+        public JVar param(int mods, JType type, String name) {
+                JVar v = new JVar(JMods.forVar(mods), type, name, null);
+                params.add(v);
+                return v;
+        }
 
-    public JVar param(JType type, String name) {
-        return param(JMod.NONE, type, name);
-    }
+        public JVar param(JType type, String name) {
+                return param(JMod.NONE, type, name);
+        }
 
-    public JVar param(int mods, Class type, String name) {
-        return param(mods, outer.owner()._ref(type), name);
-    }
+        public JVar param(int mods, Class type, String name) {
+                return param(mods, outer.owner()._ref(type), name);
+        }
 
-    public JVar param(Class type, String name) {
-        return param(outer.owner()._ref(type), name);
-    }
+        public JVar param(Class type, String name) {
+                return param(outer.owner()._ref(type), name);
+        }
 
-    /**
-     * @see #varParam(JType, String)
-     */
-    public JVar varParam(Class type, String name) {
+        /**
+         * @see #varParam(JType, String)
+         */
+        public JVar varParam(Class type, String name) {
         return varParam(outer.owner()._ref(type),name);
     }
 
@@ -210,25 +210,25 @@
      *      method signature.
      */
     public JVar varParam(JType type, String name) {
-        if (!hasVarArgs()) {
+                if (!hasVarArgs()) {
 
             varParam =
-                new JVar(
-                    JMods.forVar(JMod.NONE),
-                    type.array(),
-                    name,
-                    null);
-            return varParam;
-        } else {
-            throw new IllegalStateException(
-                "Cannot have two varargs in a method,\n"
-                    + "Check if varParam method of JMethod is"
-                    + " invoked more than once");
+                                new JVar(
+                                        JMods.forVar(JMod.NONE),
+                                        type.array(),
+                                        name,
+                                        null);
+                        return varParam;
+                } else {
+                        throw new IllegalStateException(
+                                "Cannot have two varargs in a method,\n"
+                                        + "Check if varParam method of JMethod is"
+                                        + " invoked more than once");
+
+                }
 
         }
 
-    }
-
     /**
      * Adds an annotation to this variable.
      * @param clazz
@@ -256,17 +256,17 @@
         return TypedAnnotationWriter.create(clazz,this);
     }
 
-    /**
-     * Check if there are any varargs declared
-     * for this method signature.
-     */
-    public boolean hasVarArgs() {
-        return this.varParam!=null;
-    }
+        /**
+         * Check if there are any varargs declared
+         * for this method signature.
+         */
+        public boolean hasVarArgs() {
+                return this.varParam!=null;
+        }
 
-    public String name() {
-        return name;
-    }
+        public String name() {
+                return name;
+        }
 
     /**
      * Changes the name of the method.
@@ -276,11 +276,11 @@
     }
 
     /**
-     * Returns the return type.
-     */
-    public JType type() {
-        return type;
-    }
+         * Returns the return type.
+         */
+        public JType type() {
+                return type;
+        }
 
     /**
      * Overrides the return type.
@@ -290,72 +290,72 @@
     }
 
     /**
-     * Returns all the parameter types in an array.
-     * @return
-     *      If there's no parameter, an empty array will be returned.
-     */
-    public JType[] listParamTypes() {
-        JType[] r = new JType[params.size()];
-        for (int i = 0; i < r.length; i++)
-            r[i] = params.get(i).type();
-        return r;
-    }
+         * Returns all the parameter types in an array.
+         * @return
+         *      If there's no parameter, an empty array will be returned.
+         */
+        public JType[] listParamTypes() {
+                JType[] r = new JType[params.size()];
+                for (int i = 0; i < r.length; i++)
+                        r[i] = params.get(i).type();
+                return r;
+        }
 
-    /**
-     * Returns  the varags parameter type.
-     * @return
-     * If there's no vararg parameter type, null will be returned.
-     */
-    public JType listVarParamType() {
-        if (varParam != null)
-            return varParam.type();
-        else
-            return null;
-    }
+        /**
+         * Returns  the varags parameter type.
+         * @return
+         * If there's no vararg parameter type, null will be returned.
+         */
+        public JType listVarParamType() {
+                if (varParam != null)
+                        return varParam.type();
+                else
+                        return null;
+        }
 
-    /**
-     * Returns all the parameters in an array.
-     * @return
-     *      If there's no parameter, an empty array will be returned.
-     */
-    public JVar[] listParams() {
-        return params.toArray(new JVar[params.size()]);
-    }
+        /**
+         * Returns all the parameters in an array.
+         * @return
+         *      If there's no parameter, an empty array will be returned.
+         */
+        public JVar[] listParams() {
+                return params.toArray(new JVar[params.size()]);
+        }
 
-    /**
-     * Returns the variable parameter
-     * @return
-     *      If there's no parameter, null will be returned.
-     */
-    public JVar listVarParam() {
-        return varParam;
-    }
+        /**
+         * Returns the variable parameter
+         * @return
+         *      If there's no parameter, null will be returned.
+         */
+        public JVar listVarParam() {
+                return varParam;
+        }
 
-    /**
-     * Returns true if the method has the specified signature.
-     */
-    public boolean hasSignature(JType[] argTypes) {
-        JVar[] p = listParams();
-        if (p.length != argTypes.length)
-            return false;
+        /**
+         * Returns true if the method has the specified signature.
+         */
+        public boolean hasSignature(JType[] argTypes) {
+                JVar[] p = listParams();
+                if (p.length != argTypes.length)
+                        return false;
 
-        for (int i = 0; i < p.length; i++)
-            if (!p[i].type().equals(argTypes[i]))
-                return false;
+                for (int i = 0; i < p.length; i++)
+                        if (!p[i].type().equals(argTypes[i]))
+                                return false;
 
-        return true;
-    }
+                return true;
+        }
 
-    /**
-     * Get the block that makes up body of this method
-     *
-     * @return Body of method
-     */
-    public JBlock body() {
-        if (body == null)
-            body = new JBlock();
-        return body;
-    }
+        /**
+         * Get the block that makes up body of this method
+         *
+         * @return Body of method
+         */
+        public JBlock body() {
+                if (body == null)
+                        body = new JBlock();
+                return body;
+        }
 
     /**
      * Specify the default value for this annotation member
@@ -367,37 +367,37 @@
         this.defaultValue = value;
     }
 
-    /**
-     * Creates, if necessary, and returns the class javadoc for this
-     * JDefinedClass
-     *
-     * @return JDocComment containing javadocs for this class
-     */
-    public JDocComment javadoc() {
-        if (jdoc == null)
-            jdoc = new JDocComment(owner());
-        return jdoc;
-    }
+        /**
+         * Creates, if necessary, and returns the class javadoc for this
+         * JDefinedClass
+         *
+         * @return JDocComment containing javadocs for this class
+         */
+        public JDocComment javadoc() {
+                if (jdoc == null)
+                        jdoc = new JDocComment(owner());
+                return jdoc;
+        }
 
-    public void declare(JFormatter f) {
-        if (jdoc != null)
-            f.g(jdoc);
+        public void declare(JFormatter f) {
+                if (jdoc != null)
+                        f.g(jdoc);
 
         if (annotations != null){
             for (JAnnotationUse a : annotations)
                 f.g(a).nl();
         }
 
-        // declare the generics parameters
-        super.declare(f);
+                // declare the generics parameters
+                super.declare(f);
 
-        f.g(mods);
-        if (!isConstructor())
-            f.g(type);
-        f.id(name).p('(').i();
+                f.g(mods);
+                if (!isConstructor())
+                        f.g(type);
+                f.id(name).p('(').i();
         // when parameters are printed in new lines, we want them to be indented.
         // there's a good chance no newlines happen, too, but just in case it does.
-        boolean first = true;
+                boolean first = true;
         for (JVar var : params) {
             if (!first)
                 f.p(',');
@@ -406,33 +406,33 @@
             f.b(var);
             first = false;
         }
-        if (hasVarArgs()) {
-            if (!first)
-                f.p(',');
-            f.g(varParam.type().elementType());
-            f.p("... ");
-            f.id(varParam.name());
-        }
+                if (hasVarArgs()) {
+                        if (!first)
+                                f.p(',');
+                        f.g(varParam.type().elementType());
+                        f.p("... ");
+                        f.id(varParam.name());
+                }
 
-        f.o().p(')');
-        if (_throws!=null && !_throws.isEmpty()) {
-            f.nl().i().p("throws").g(_throws).nl().o();
-        }
+                f.o().p(')');
+                if (_throws!=null && !_throws.isEmpty()) {
+                        f.nl().i().p("throws").g(_throws).nl().o();
+                }
 
         if (defaultValue != null) {
             f.p("default ");
             f.g(defaultValue);
         }
-        if (body != null) {
-            f.s(body);
-        } else if (
-            !outer.isInterface() && !outer.isAnnotationTypeDeclaration() && !mods.isAbstract() && !mods.isNative()) {
-            // Print an empty body for non-native, non-abstract methods
-            f.s(new JBlock());
-        } else {
-            f.p(';').nl();
+                if (body != null) {
+                        f.s(body);
+                } else if (
+                        !outer.isInterface() && !outer.isAnnotationTypeDeclaration() && !mods.isAbstract() && !mods.isNative()) {
+                        // Print an empty body for non-native, non-abstract methods
+                        f.s(new JBlock());
+                } else {
+                        f.p(';').nl();
+                }
         }
-    }
 
     /**
      * @return
@@ -447,10 +447,10 @@
      * @deprecated use {@link #mods()}
      */
     public JMods getMods() {
-        return mods;
-    }
+                return mods;
+        }
 
-    protected JCodeModel owner() {
-        return outer.owner();
-    }
+        protected JCodeModel owner() {
+                return outer.owner();
+        }
 }
--- a/jaxws/src/share/classes/com/sun/codemodel/internal/JMods.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/codemodel/internal/JMods.java	Thu May 14 00:17:25 2009 -0700
@@ -41,17 +41,17 @@
         = JMod.FINAL;
 
     private static int FIELD
-    = (JMod.PUBLIC | JMod.PRIVATE | JMod.PROTECTED
-       | JMod.STATIC | JMod.FINAL
-       | JMod.TRANSIENT | JMod.VOLATILE);
+        = (JMod.PUBLIC | JMod.PRIVATE | JMod.PROTECTED
+           | JMod.STATIC | JMod.FINAL
+           | JMod.TRANSIENT | JMod.VOLATILE);
 
     private static int METHOD
-    = (JMod.PUBLIC | JMod.PRIVATE | JMod.PROTECTED | JMod.FINAL
-       | JMod.ABSTRACT | JMod.STATIC | JMod.NATIVE | JMod.SYNCHRONIZED);
+        = (JMod.PUBLIC | JMod.PRIVATE | JMod.PROTECTED | JMod.FINAL
+           | JMod.ABSTRACT | JMod.STATIC | JMod.NATIVE | JMod.SYNCHRONIZED);
 
     private static int CLASS
-    = (JMod.PUBLIC | JMod.PRIVATE | JMod.PROTECTED
-       | JMod.STATIC | JMod.FINAL | JMod.ABSTRACT );
+        = (JMod.PUBLIC | JMod.PRIVATE | JMod.PROTECTED
+           | JMod.STATIC | JMod.FINAL | JMod.ABSTRACT );
 
     private static int INTERFACE = JMod.PUBLIC;
 
--- a/jaxws/src/share/classes/com/sun/codemodel/internal/util/SingleByteEncoder.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/codemodel/internal/util/SingleByteEncoder.java	Thu May 14 00:17:25 2009 -0700
@@ -24,7 +24,7 @@
  */
 
 /*
- * @(#)SingleByteEncoder.java       1.14 03/01/23
+ * @(#)SingleByteEncoder.java   1.14 03/01/23
  */
 
 package com.sun.codemodel.internal.util;
@@ -51,109 +51,109 @@
     private final Surrogate.Parser sgp = new Surrogate.Parser();
 
     protected SingleByteEncoder(Charset cs,
-                            short[] index1, String index2,
-                            int mask1, int mask2, int shift)
+                                short[] index1, String index2,
+                                int mask1, int mask2, int shift)
     {
-       super(cs, 1.0f, 1.0f);
-       this.index1 = index1;
-       this.index2 = index2;
-       this.mask1 = mask1;
-       this.mask2 = mask2;
-       this.shift = shift;
+        super(cs, 1.0f, 1.0f);
+        this.index1 = index1;
+        this.index2 = index2;
+        this.mask1 = mask1;
+        this.mask2 = mask2;
+        this.shift = shift;
     }
 
     public boolean canEncode(char c) {
-       char testEncode;
-       testEncode = index2.charAt(index1[(c & mask1) >> shift]
-                               + (c & mask2));
-       if (testEncode == '\u0000')
-           return false;
-       else
-           return true;
+        char testEncode;
+        testEncode = index2.charAt(index1[(c & mask1) >> shift]
+                                   + (c & mask2));
+        if (testEncode == '\u0000')
+            return false;
+        else
+            return true;
     }
 
     private CoderResult encodeArrayLoop(CharBuffer src, ByteBuffer dst) {
-       char[] sa = src.array();
-       int sp = src.arrayOffset() + src.position();
-       int sl = src.arrayOffset() + src.limit();
-       sp = (sp <= sl ? sp : sl);
-       byte[] da = dst.array();
-       int dp = dst.arrayOffset() + dst.position();
-       int dl = dst.arrayOffset() + dst.limit();
-       dp = (dp <= dl ? dp : dl);
+        char[] sa = src.array();
+        int sp = src.arrayOffset() + src.position();
+        int sl = src.arrayOffset() + src.limit();
+        sp = (sp <= sl ? sp : sl);
+        byte[] da = dst.array();
+        int dp = dst.arrayOffset() + dst.position();
+        int dl = dst.arrayOffset() + dst.limit();
+        dp = (dp <= dl ? dp : dl);
 
-       try {
-           while (sp < sl) {
-              char c = sa[sp];
-              if (Surrogate.is(c)) {
-                  if (sgp.parse(c, sa, sp, sl) < 0)
-                     return sgp.error();
-                  return sgp.unmappableResult();
-              }
-              if (c >= '\uFFFE')
-                  return CoderResult.unmappableForLength(1);
-              if (dl - dp < 1)
-                  return CoderResult.OVERFLOW;
+        try {
+            while (sp < sl) {
+                char c = sa[sp];
+                if (Surrogate.is(c)) {
+                    if (sgp.parse(c, sa, sp, sl) < 0)
+                        return sgp.error();
+                    return sgp.unmappableResult();
+                }
+                if (c >= '\uFFFE')
+                    return CoderResult.unmappableForLength(1);
+                if (dl - dp < 1)
+                    return CoderResult.OVERFLOW;
 
-              char e = index2.charAt(index1[(c & mask1) >> shift]
-                                   + (c & mask2));
+                char e = index2.charAt(index1[(c & mask1) >> shift]
+                                       + (c & mask2));
 
-              // If output byte is zero because input char is zero
-              // then character is mappable, o.w. fail
-              if (e == '\u0000' && c != '\u0000')
-                  return CoderResult.unmappableForLength(1);
+                // If output byte is zero because input char is zero
+                // then character is mappable, o.w. fail
+                if (e == '\u0000' && c != '\u0000')
+                    return CoderResult.unmappableForLength(1);
 
-              sp++;
-              da[dp++] = (byte)e;
-           }
-           return CoderResult.UNDERFLOW;
-       } finally {
-           src.position(sp - src.arrayOffset());
-           dst.position(dp - dst.arrayOffset());
-       }
+                sp++;
+                da[dp++] = (byte)e;
+            }
+            return CoderResult.UNDERFLOW;
+        } finally {
+            src.position(sp - src.arrayOffset());
+            dst.position(dp - dst.arrayOffset());
+        }
     }
 
     private CoderResult encodeBufferLoop(CharBuffer src, ByteBuffer dst) {
-       int mark = src.position();
-       try {
-           while (src.hasRemaining()) {
-              char c = src.get();
-              if (Surrogate.is(c)) {
-                  if (sgp.parse(c, src) < 0)
-                     return sgp.error();
-                  return sgp.unmappableResult();
-              }
-              if (c >= '\uFFFE')
-                  return CoderResult.unmappableForLength(1);
-              if (!dst.hasRemaining())
-                  return CoderResult.OVERFLOW;
+        int mark = src.position();
+        try {
+            while (src.hasRemaining()) {
+                char c = src.get();
+                if (Surrogate.is(c)) {
+                    if (sgp.parse(c, src) < 0)
+                        return sgp.error();
+                    return sgp.unmappableResult();
+                }
+                if (c >= '\uFFFE')
+                    return CoderResult.unmappableForLength(1);
+                if (!dst.hasRemaining())
+                    return CoderResult.OVERFLOW;
 
-              char e = index2.charAt(index1[(c & mask1) >> shift]
-                                   + (c & mask2));
+                char e = index2.charAt(index1[(c & mask1) >> shift]
+                                       + (c & mask2));
 
-              // If output byte is zero because input char is zero
-              // then character is mappable, o.w. fail
-              if (e == '\u0000' && c != '\u0000')
-                  return CoderResult.unmappableForLength(1);
+                // If output byte is zero because input char is zero
+                // then character is mappable, o.w. fail
+                if (e == '\u0000' && c != '\u0000')
+                    return CoderResult.unmappableForLength(1);
 
-              mark++;
-              dst.put((byte)e);
-           }
-           return CoderResult.UNDERFLOW;
-       } finally {
-           src.position(mark);
-       }
+                mark++;
+                dst.put((byte)e);
+            }
+            return CoderResult.UNDERFLOW;
+        } finally {
+            src.position(mark);
+        }
     }
 
     protected CoderResult encodeLoop(CharBuffer src, ByteBuffer dst) {
-       if (true && src.hasArray() && dst.hasArray())
-           return encodeArrayLoop(src, dst);
-       else
-           return encodeBufferLoop(src, dst);
+        if (true && src.hasArray() && dst.hasArray())
+            return encodeArrayLoop(src, dst);
+        else
+            return encodeBufferLoop(src, dst);
     }
 
     public byte encode(char inputChar) {
-       return (byte)index2.charAt(index1[(inputChar & mask1) >> shift] +
-              (inputChar & mask2));
+        return (byte)index2.charAt(index1[(inputChar & mask1) >> shift] +
+                (inputChar & mask2));
     }
 }
--- a/jaxws/src/share/classes/com/sun/codemodel/internal/util/Surrogate.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/codemodel/internal/util/Surrogate.java	Thu May 14 00:17:25 2009 -0700
@@ -112,7 +112,7 @@
 
         public Parser() { }
 
-        private int character;                // UCS-4
+        private int character;          // UCS-4
         private CoderResult error = CoderResult.UNDERFLOW;
         private boolean isPair;
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/client/p2p/HttpSOAPConnection.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/client/p2p/HttpSOAPConnection.java	Thu May 14 00:17:25 2009 -0700
@@ -55,12 +55,19 @@
  */
 public class HttpSOAPConnection extends SOAPConnection {
 
-    protected static Logger log =
+    public static final String vmVendor = System.getProperty("java.vendor.url");
+    private static final String sunVmVendor = "http://java.sun.com/";
+    private static final String ibmVmVendor = "http://www.ibm.com/";
+    private static final boolean isSunVM = sunVmVendor.equals(vmVendor) ? true: false;
+    private static final boolean isIBMVM = ibmVmVendor.equals(vmVendor) ? true : false;
+    private static final String JAXM_URLENDPOINT="javax.xml.messaging.URLEndpoint";
+
+    protected static final Logger log =
         Logger.getLogger(LogDomainConstants.HTTP_CONN_DOMAIN,
                          "com.sun.xml.internal.messaging.saaj.client.p2p.LocalStrings");
 
-    public static String defaultProxyHost = null;
-    public static int defaultProxyPort = -1;
+    public static final String defaultProxyHost = null;
+    public static  final int defaultProxyPort = -1;
 
     MessageFactory messageFactory = null;
 
@@ -72,6 +79,9 @@
 
         try {
             messageFactory = MessageFactory.newInstance(SOAPConstants.DYNAMIC_SOAP_PROTOCOL);
+        } catch (NoSuchMethodError ex) {
+                    //fallback to default SOAP 1.1 in this case for backward compatibility
+                    messageFactory = MessageFactory.newInstance();
         } catch (Exception ex) {
             log.log(Level.SEVERE, "SAAJ0001.p2p.cannot.create.msg.factory", ex);
             throw new SOAPExceptionImpl("Unable to create message factory", ex);
@@ -96,13 +106,18 @@
         }
 
         Class urlEndpointClass = null;
+        ClassLoader loader = Thread.currentThread().getContextClassLoader();
 
         try {
-            urlEndpointClass = Class.forName("javax.xml.messaging.URLEndpoint");
-        } catch (Exception ex) {
-            //Do nothing. URLEndpoint is available only when JAXM is there.
-            log.finest("SAAJ0090.p2p.endpoint.available.only.for.JAXM");
-        }
+                if (loader != null) {
+                        urlEndpointClass = loader.loadClass(JAXM_URLENDPOINT);
+                } else {
+                        urlEndpointClass = Class.forName(JAXM_URLENDPOINT);
+                    }
+                } catch (ClassNotFoundException ex) {
+                    //Do nothing. URLEndpoint is available only when JAXM is there.
+                    log.finest("SAAJ0090.p2p.endpoint.available.only.for.JAXM");
+                }
 
         if (urlEndpointClass != null) {
             if (urlEndpointClass.isInstance(endPoint)) {
@@ -639,10 +654,23 @@
 
         return ret;
     }
+    //private static String SSL_PKG = "com.sun.net.ssl.internal.www.protocol";
+    //private static String SSL_PROVIDER =
+              //  "com.sun.net.ssl.internal.ssl.Provider";
+    private static final String SSL_PKG;
+    private static  final String SSL_PROVIDER;
 
-    private static String SSL_PKG = "com.sun.net.ssl.internal.www.protocol";
-    private static String SSL_PROVIDER =
-        "com.sun.net.ssl.internal.ssl.Provider";
+
+    static {
+                if (isIBMVM) {
+                    SSL_PKG ="com.ibm.net.ssl.internal.www.protocol";
+                    SSL_PROVIDER ="com.ibm.net.ssl.internal.ssl.Provider";
+                } else {
+                    //if not IBM VM default to Sun.
+                    SSL_PKG = "com.sun.net.ssl.internal.www.protocol";
+                    SSL_PROVIDER ="com.sun.net.ssl.internal.ssl.Provider";
+                }
+            }
     private void initHttps() {
         //if(!setHttps) {
         String pkgs = System.getProperty("java.protocol.handler.pkgs");
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/AttachmentPartImpl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/AttachmentPartImpl.java	Thu May 14 00:17:25 2009 -0700
@@ -70,7 +70,7 @@
  */
 public class AttachmentPartImpl extends AttachmentPart {
 
-    protected static Logger log =
+    protected static final Logger log =
         Logger.getLogger(LogDomainConstants.SOAP_DOMAIN,
                          "com.sun.xml.internal.messaging.saaj.soap.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/EnvelopeFactory.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/EnvelopeFactory.java	Thu May 14 00:17:25 2009 -0700
@@ -23,9 +23,9 @@
  * have any questions.
  */
 /*
- * $Id: EnvelopeFactory.java,v 1.24 2006/01/27 12:49:26 vj135062 Exp $
- * $Revision: 1.24 $
- * $Date: 2006/01/27 12:49:26 $
+ *
+ *
+ *
  */
 
 
@@ -55,7 +55,7 @@
  */
 public class EnvelopeFactory {
 
-    protected static Logger
+    protected static final Logger
         log = Logger.getLogger(LogDomainConstants.SOAP_DOMAIN,
         "com.sun.xml.internal.messaging.saaj.soap.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ImageDataContentHandler.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ImageDataContentHandler.java	Thu May 14 00:17:25 2009 -0700
@@ -49,7 +49,7 @@
 public class ImageDataContentHandler extends Component
     implements DataContentHandler {
 
-    protected static Logger log =
+    protected static final Logger log =
         Logger.getLogger(LogDomainConstants.SOAP_DOMAIN,
                          "com.sun.xml.internal.messaging.saaj.soap.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/MessageFactoryImpl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/MessageFactoryImpl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,9 +23,9 @@
  * have any questions.
  */
 /*
- * $Id: MessageFactoryImpl.java,v 1.23 2006/01/27 12:49:27 vj135062 Exp $
- * $Revision: 1.23 $
- * $Date: 2006/01/27 12:49:27 $
+ *
+ *
+ *
  */
 
 
@@ -54,15 +54,15 @@
  */
 public class MessageFactoryImpl extends MessageFactory {
 
-    protected static Logger log =
+    protected static final Logger log =
         Logger.getLogger(LogDomainConstants.SOAP_DOMAIN,
                          "com.sun.xml.internal.messaging.saaj.soap.LocalStrings");
 
-    protected static OutputStream listener;
+    protected  OutputStream listener;
 
     protected boolean lazyAttachments = false;
 
-    public static OutputStream listen(OutputStream newListener) {
+    public  OutputStream listen(OutputStream newListener) {
         OutputStream oldListener = listener;
         listener = newListener;
         return oldListener;
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/MessageImpl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/MessageImpl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,9 +23,9 @@
  * have any questions.
  */
 /*
- * $Id: MessageImpl.java,v 1.5 2006/12/12 10:16:33 kumarjayanti Exp $
- * $Revision: 1.5 $
- * $Date: 2006/12/12 10:16:33 $
+ *
+ *
+ *
  */
 
 
@@ -69,7 +69,7 @@
     public static final String CONTENT_ID             = "Content-ID";
     public static final String CONTENT_LOCATION       = "Content-Location";
 
-    protected static Logger log =
+    protected static final Logger log =
         Logger.getLogger(LogDomainConstants.SOAP_DOMAIN,
                          "com.sun.xml.internal.messaging.saaj.soap.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/SAAJMetaFactoryImpl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/SAAJMetaFactoryImpl.java	Thu May 14 00:17:25 2009 -0700
@@ -37,7 +37,7 @@
 
 public class SAAJMetaFactoryImpl extends SAAJMetaFactory {
 
-    protected static Logger log =
+    protected static final Logger log =
         Logger.getLogger(LogDomainConstants.SOAP_DOMAIN,
                          "com.sun.xml.internal.messaging.saaj.soap.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/SOAPDocumentImpl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/SOAPDocumentImpl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,7 +23,7 @@
  * have any questions.
  */
 /*
- * $Id: SOAPDocumentImpl.java,v 1.15 2006/01/27 12:49:29 vj135062 Exp $
+ *
  */
 
 
@@ -45,7 +45,7 @@
 
 public class SOAPDocumentImpl extends DocumentImpl implements SOAPDocument {
 
-    protected static Logger log =
+    protected static final  Logger log =
         Logger.getLogger(LogDomainConstants.SOAP_DOMAIN,
                          "com.sun.xml.internal.messaging.saaj.soap.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/SOAPFactoryImpl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/SOAPFactoryImpl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,9 +23,9 @@
  * have any questions.
  */
 /*
- * $Id: SOAPFactoryImpl.java,v 1.21 2006/01/27 12:49:29 vj135062 Exp $
- * $Revision: 1.21 $
- * $Date: 2006/01/27 12:49:29 $
+ *
+ *
+ *
  */
 
 
@@ -50,7 +50,7 @@
 
 public abstract class SOAPFactoryImpl extends SOAPFactory {
 
-    protected static Logger
+    protected static final Logger
         log = Logger.getLogger(LogDomainConstants.SOAP_DOMAIN,
                                "com.sun.xml.internal.messaging.saaj.soap.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/SOAPPartImpl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/SOAPPartImpl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,9 +23,9 @@
  * have any questions.
  */
 /*
- * $Id: SOAPPartImpl.java,v 1.1.1.1 2006/01/27 13:10:55 kumarjayanti Exp $
- * $Revision: 1.1.1.1 $
- * $Date: 2006/01/27 13:10:55 $
+ *
+ *
+ *
  */
 
 
@@ -59,7 +59,7 @@
  * @author Anil Vijendran (anil@sun.com)
  */
 public abstract class SOAPPartImpl extends SOAPPart implements SOAPDocument {
-    protected static Logger log =
+    protected static final Logger log =
         Logger.getLogger(LogDomainConstants.SOAP_DOMAIN,
                          "com.sun.xml.internal.messaging.saaj.soap.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/CDATAImpl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/CDATAImpl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,9 +23,9 @@
  * have any questions.
  */
 /*
- * $Id: CDATAImpl.java,v 1.19 2006/01/27 12:49:34 vj135062 Exp $
- * $Revision: 1.19 $
- * $Date: 2006/01/27 12:49:34 $
+ *
+ *
+ *
  */
 
 
@@ -43,7 +43,7 @@
     extends com.sun.org.apache.xerces.internal.dom.CDATASectionImpl
     implements javax.xml.soap.Text {
 
-    protected static Logger log =
+    protected static final Logger log =
         Logger.getLogger(LogDomainConstants.SOAP_IMPL_DOMAIN,
                          "com.sun.xml.internal.messaging.saaj.soap.impl.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/CommentImpl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/CommentImpl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,9 +23,9 @@
  * have any questions.
  */
 /*
- * $Id: CommentImpl.java,v 1.17 2006/01/27 12:49:34 vj135062 Exp $
- * $Revision: 1.17 $
- * $Date: 2006/01/27 12:49:34 $
+ *
+ *
+ *
  */
 
 
@@ -47,7 +47,7 @@
     extends com.sun.org.apache.xerces.internal.dom.CommentImpl
     implements javax.xml.soap.Text, org.w3c.dom.Comment {
 
-    protected static Logger log =
+    protected static final Logger log =
         Logger.getLogger(LogDomainConstants.SOAP_IMPL_DOMAIN,
                          "com.sun.xml.internal.messaging.saaj.soap.impl.LocalStrings");
     protected static ResourceBundle rb =
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/ElementImpl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/ElementImpl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,9 +23,9 @@
  * have any questions.
  */
 /*
- * $Id: ElementImpl.java,v 1.6 2006/11/16 16:01:14 kumarjayanti Exp $
- * $Revision: 1.6 $
- * $Date: 2006/11/16 16:01:14 $
+ *
+ *
+ *
  */
 
 
@@ -60,7 +60,7 @@
 
     protected QName elementQName;
 
-    protected static Logger log =
+    protected static final Logger log =
         Logger.getLogger(LogDomainConstants.SOAP_IMPL_DOMAIN,
                          "com.sun.xml.internal.messaging.saaj.soap.impl.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/TextImpl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/TextImpl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,9 +23,9 @@
  * have any questions.
  */
 /*
- * $Id: TextImpl.java,v 1.19 2006/01/27 12:49:36 vj135062 Exp $
- * $Revision: 1.19 $
- * $Date: 2006/01/27 12:49:36 $
+ *
+ *
+ *
  */
 
 
@@ -43,7 +43,7 @@
     extends com.sun.org.apache.xerces.internal.dom.TextImpl
     implements javax.xml.soap.Text, org.w3c.dom.Text {
 
-    protected static Logger log =
+    protected static final Logger log =
         Logger.getLogger(LogDomainConstants.SOAP_IMPL_DOMAIN,
                          "com.sun.xml.internal.messaging.saaj.soap.impl.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/name/NameImpl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/name/NameImpl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,9 +23,9 @@
  * have any questions.
  */
 /*
- * $Id: NameImpl.java,v 1.48 2006/01/27 12:49:38 vj135062 Exp $
- * $Revision: 1.48 $
- * $Date: 2006/01/27 12:49:38 $
+ *
+ *
+ *
  */
 
 
@@ -63,7 +63,7 @@
     protected String prefix = "";
     private String qualifiedName = null;
 
-    protected static Logger log =
+    protected static final Logger log =
         Logger.getLogger(LogDomainConstants.NAMING_DOMAIN,
                          "com.sun.xml.internal.messaging.saaj.soap.name.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/Fault1_1Impl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/Fault1_1Impl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,7 +23,7 @@
  * have any questions.
  */
 /*
- * $Id: Fault1_1Impl.java,v 1.1.1.1 2006/01/27 13:10:57 kumarjayanti Exp $
+ *
  */
 
 
@@ -57,7 +57,7 @@
 
 public class Fault1_1Impl extends FaultImpl {
 
-    protected static Logger log =
+    protected static final Logger log =
         Logger.getLogger(
             LogDomainConstants.SOAP_VER1_1_DOMAIN,
             "com.sun.xml.internal.messaging.saaj.soap.ver1_1.LocalStrings");
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/Header1_1Impl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/Header1_1Impl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,7 +23,7 @@
  * have any questions.
  */
 /*
- * $Id: Header1_1Impl.java,v 1.29 2006/01/27 12:49:41 vj135062 Exp $
+ *
  */
 
 
@@ -50,7 +50,7 @@
 
 public class Header1_1Impl extends HeaderImpl {
 
-    protected static Logger log =
+    protected static final Logger log =
         Logger.getLogger(LogDomainConstants.SOAP_VER1_1_DOMAIN,
                          "com.sun.xml.internal.messaging.saaj.soap.ver1_1.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/HeaderElement1_1Impl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/HeaderElement1_1Impl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,7 +23,7 @@
  * have any questions.
  */
 /*
- * $Id: HeaderElement1_1Impl.java,v 1.29 2006/01/27 12:49:41 vj135062 Exp $
+ *
  */
 
 
@@ -49,7 +49,7 @@
 
 public class HeaderElement1_1Impl extends HeaderElementImpl {
 
-    protected static Logger log =
+    protected static final Logger log =
         Logger.getLogger(LogDomainConstants.SOAP_VER1_1_DOMAIN,
                          "com.sun.xml.internal.messaging.saaj.soap.ver1_1.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/Message1_1Impl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/Message1_1Impl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,7 +23,7 @@
  * have any questions.
  */
 /*
- * $Id: Message1_1Impl.java,v 1.24 2006/01/27 12:49:41 vj135062 Exp $
+ *
  */
 
 
@@ -48,7 +48,7 @@
 
 public class Message1_1Impl extends MessageImpl implements SOAPConstants {
 
-    protected static Logger log =
+    protected static final Logger log =
         Logger.getLogger(LogDomainConstants.SOAP_VER1_1_DOMAIN,
                          "com.sun.xml.internal.messaging.saaj.soap.ver1_1.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/SOAPPart1_1Impl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_1/SOAPPart1_1Impl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,7 +23,7 @@
  * have any questions.
  */
 /*
- * $Id: SOAPPart1_1Impl.java,v 1.1.1.1 2006/01/27 13:10:57 kumarjayanti Exp $
+ *
  */
 
 
@@ -48,7 +48,7 @@
 
 public class SOAPPart1_1Impl extends SOAPPartImpl implements SOAPConstants {
 
-    protected static Logger log =
+    protected static final Logger log =
         Logger.getLogger(LogDomainConstants.SOAP_VER1_1_DOMAIN,
                          "com.sun.xml.internal.messaging.saaj.soap.ver1_1.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/Body1_2Impl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/Body1_2Impl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,7 +23,7 @@
  * have any questions.
  */
 /*
- * $Id: Body1_2Impl.java,v 1.32 2006/01/27 12:49:44 vj135062 Exp $
+ *
  */
 
 
@@ -50,7 +50,7 @@
 
 public class Body1_2Impl extends BodyImpl {
 
-    protected static Logger log =
+    protected static  final Logger log =
         Logger.getLogger(Body1_2Impl.class.getName(),
                          "com.sun.xml.internal.messaging.saaj.soap.ver1_2.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/Detail1_2Impl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/Detail1_2Impl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,7 +23,7 @@
  * have any questions.
  */
 /*
- * $Id: Detail1_2Impl.java,v 1.24 2006/01/27 12:49:45 vj135062 Exp $
+ *
  */
 
 
@@ -47,7 +47,7 @@
 
 public class Detail1_2Impl extends DetailImpl {
 
-    protected static Logger log =
+    protected static final Logger log =
         Logger.getLogger(Detail1_2Impl.class.getName(),
                          "com.sun.xml.internal.messaging.saaj.soap.ver1_2.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/Envelope1_2Impl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/Envelope1_2Impl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,7 +23,7 @@
  * have any questions.
  */
 /*
- * $Id: Envelope1_2Impl.java,v 1.26 2006/01/27 12:49:47 vj135062 Exp $
+ *
  */
 
 
@@ -47,7 +47,7 @@
 
 public class Envelope1_2Impl extends EnvelopeImpl {
 
-    protected static Logger log =
+    protected static final Logger log =
         Logger.getLogger(Envelope1_2Impl.class.getName(),
                          "com.sun.xml.internal.messaging.saaj.soap.ver1_2.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/Fault1_2Impl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/Fault1_2Impl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,7 +23,7 @@
  * have any questions.
  */
 /*
- * $Id: Fault1_2Impl.java,v 1.1.1.1 2006/01/27 13:10:57 kumarjayanti Exp $
+ *
  */
 
 
@@ -51,7 +51,7 @@
 
 public class Fault1_2Impl extends FaultImpl {
 
-    protected static Logger log =
+    protected static final Logger log =
         Logger.getLogger(
             LogDomainConstants.SOAP_VER1_2_DOMAIN,
             "com.sun.xml.internal.messaging.saaj.soap.ver1_2.LocalStrings");
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/Header1_2Impl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/Header1_2Impl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,7 +23,7 @@
  * have any questions.
  */
 /*
- * $Id: Header1_2Impl.java,v 1.36 2006/01/27 12:49:48 vj135062 Exp $
+ *
  */
 
 
@@ -53,7 +53,7 @@
 
 public class Header1_2Impl extends HeaderImpl {
 
-    protected static Logger log =
+    protected static final Logger log =
         Logger.getLogger(
             LogDomainConstants.SOAP_VER1_2_DOMAIN,
             "com.sun.xml.internal.messaging.saaj.soap.ver1_2.LocalStrings");
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/HeaderElement1_2Impl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/HeaderElement1_2Impl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,7 +23,7 @@
  * have any questions.
  */
 /*
- * $Id: HeaderElement1_2Impl.java,v 1.29 2006/01/27 12:49:48 vj135062 Exp $
+ *
  */
 
 
@@ -47,7 +47,7 @@
 
 public class HeaderElement1_2Impl extends HeaderElementImpl {
 
-    private static Logger log =
+    private static final Logger log =
         Logger.getLogger(HeaderElement1_2Impl.class.getName(),
                          "com.sun.xml.internal.messaging.saaj.soap.ver1_2.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/SOAPPart1_2Impl.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/SOAPPart1_2Impl.java	Thu May 14 00:17:25 2009 -0700
@@ -23,7 +23,7 @@
  * have any questions.
  */
 /*
- * $Id: SOAPPart1_2Impl.java,v 1.1.1.1 2006/01/27 13:10:57 kumarjayanti Exp $
+ *
  */
 
 
@@ -47,7 +47,7 @@
 
 public class SOAPPart1_2Impl extends SOAPPartImpl implements SOAPConstants{
 
-    protected static Logger log =
+    protected static final Logger log =
         Logger.getLogger(SOAPPart1_2Impl.class.getName(),
                          "com.sun.xml.internal.messaging.saaj.soap.ver1_2.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/util/RejectDoctypeSaxFilter.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/util/RejectDoctypeSaxFilter.java	Thu May 14 00:17:25 2009 -0700
@@ -45,12 +45,12 @@
  * because they are not legal in SOAP.  If the user of this class sets a
  * LexicalHandler, then it forwards events to that handler.
  *
- * $Id: RejectDoctypeSaxFilter.java,v 1.13 2006/01/27 12:49:52 vj135062 Exp $
+ *
  * @author Edwin Goei
  */
 
 public class RejectDoctypeSaxFilter extends XMLFilterImpl implements XMLReader, LexicalHandler{
-    protected static Logger log =
+    protected static final Logger log =
     Logger.getLogger(LogDomainConstants.UTIL_DOMAIN,
     "com.sun.xml.internal.messaging.saaj.util.LocalStrings");
 
--- a/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/util/transform/EfficientStreamingTransformer.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/messaging/saaj/util/transform/EfficientStreamingTransformer.java	Thu May 14 00:17:25 2009 -0700
@@ -62,20 +62,22 @@
 public class EfficientStreamingTransformer
     extends javax.xml.transform.Transformer {
 
-  static final String version;
-  static final String vendor;
+  //static final String version;
+  //static final String vendor;
 
-  protected static TransformerFactory transformerFactory = TransformerFactory.newInstance();
+  protected static final TransformerFactory transformerFactory = TransformerFactory.newInstance();
 
-  static {
-        version = System.getProperty("java.vm.version");
-        vendor = System.getProperty("java.vm.vendor");
-        if (vendor.startsWith("Sun") &&
-            (version.startsWith("1.4") || version.startsWith("1.3"))) {
-            transformerFactory =
-                new com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl();
-        }
-  }
+   //removing support for Java 1.4 and 1.3 : CR6658158
+    /*static {
+    version = System.getProperty("java.vm.version");
+    vendor = System.getProperty("java.vm.vendor");
+    if (vendor.startsWith("Sun") &&
+    (version.startsWith("1.4") || version.startsWith("1.3"))) {
+    transformerFactory =
+    new com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl();
+    }
+}
+*/
 
     /**
      * TransformerFactory instance.
--- a/jaxws/src/share/classes/com/sun/xml/internal/txw2/DatatypeWriter.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/txw2/DatatypeWriter.java	Thu May 14 00:17:25 2009 -0700
@@ -25,6 +25,9 @@
 
 package com.sun.xml.internal.txw2;
 
+import java.util.AbstractList;
+import java.util.Collections;
+import java.util.List;
 import javax.xml.namespace.QName;
 
 /**
@@ -53,50 +56,60 @@
      */
     void print(DT dt, NamespaceResolver resolver, StringBuilder buf);
 
+    static final List<DatatypeWriter<?>> BUILTIN = Collections.unmodifiableList(new AbstractList() {
 
-    static final DatatypeWriter<?>[] BUILDIN = new DatatypeWriter<?>[] {
-        new DatatypeWriter<String>() {
-            public Class<String> getType() {
-                return String.class;
+        private DatatypeWriter<?>[] BUILTIN_ARRAY = new DatatypeWriter<?>[] {
+            new DatatypeWriter<String>() {
+                public Class<String> getType() {
+                    return String.class;
+                }
+                public void print(String s, NamespaceResolver resolver, StringBuilder buf) {
+                    buf.append(s);
+                }
+            },
+            new DatatypeWriter<Integer>() {
+                public Class<Integer> getType() {
+                    return Integer.class;
+                }
+                public void print(Integer i, NamespaceResolver resolver, StringBuilder buf) {
+                    buf.append(i);
+                }
+            },
+            new DatatypeWriter<Float>() {
+                public Class<Float> getType() {
+                    return Float.class;
+                }
+                public void print(Float f, NamespaceResolver resolver, StringBuilder buf) {
+                    buf.append(f);
+                }
+            },
+            new DatatypeWriter<Double>() {
+                public Class<Double> getType() {
+                    return Double.class;
+                }
+                public void print(Double d, NamespaceResolver resolver, StringBuilder buf) {
+                    buf.append(d);
+                }
+            },
+            new DatatypeWriter<QName>() {
+                public Class<QName> getType() {
+                    return QName.class;
+                }
+                public void print(QName qn, NamespaceResolver resolver, StringBuilder buf) {
+                    String p = resolver.getPrefix(qn.getNamespaceURI());
+                    if(p.length()!=0)
+                        buf.append(p).append(':');
+                    buf.append(qn.getLocalPart());
+                }
             }
-            public void print(String s, NamespaceResolver resolver, StringBuilder buf) {
-                buf.append(s);
-            }
-        },
-        new DatatypeWriter<Integer>() {
-            public Class<Integer> getType() {
-                return Integer.class;
-            }
-            public void print(Integer i, NamespaceResolver resolver, StringBuilder buf) {
-                buf.append(i);
-            }
-        },
-        new DatatypeWriter<Float>() {
-            public Class<Float> getType() {
-                return Float.class;
-            }
-            public void print(Float f, NamespaceResolver resolver, StringBuilder buf) {
-                buf.append(f);
-            }
-        },
-        new DatatypeWriter<Double>() {
-            public Class<Double> getType() {
-                return Double.class;
-            }
-            public void print(Double d, NamespaceResolver resolver, StringBuilder buf) {
-                buf.append(d);
-            }
-        },
-        new DatatypeWriter<QName>() {
-            public Class<QName> getType() {
-                return QName.class;
-            }
-            public void print(QName qn, NamespaceResolver resolver, StringBuilder buf) {
-                String p = resolver.getPrefix(qn.getNamespaceURI());
-                if(p.length()!=0)
-                    buf.append(p).append(':');
-                buf.append(qn.getLocalPart());
-            }
+        };
+
+        public DatatypeWriter<?> get(int n) {
+          return BUILTIN_ARRAY[n];
         }
-    };
+
+        public int size() {
+          return BUILTIN_ARRAY.length;
+        }
+      });
 }
--- a/jaxws/src/share/classes/com/sun/xml/internal/txw2/Document.java	Tue May 12 15:21:55 2009 +0900
+++ b/jaxws/src/share/classes/com/sun/xml/internal/txw2/Document.java	Thu May 14 00:17:25 2009 -0700
@@ -76,7 +76,7 @@
 
     Document(XmlSerializer out) {
         this.out = out;
-        for( DatatypeWriter dw : DatatypeWriter.BUILDIN )
+        for( DatatypeWriter dw : DatatypeWriter.BUILTIN )
             datatypeWriters.put(dw.getType(),dw);
     }
 
--- a/jdk/.hgtags	Tue May 12 15:21:55 2009 +0900
+++ b/jdk/.hgtags	Thu May 14 00:17:25 2009 -0700
@@ -31,3 +31,5 @@
 d1c43d1f5676a24ba86221ac7cad5694f3a9afda jdk7-b54
 522bb5aa17e0c0cff00b1ed7d1b51bc4db2cfef9 jdk7-b55
 7fd3bc37afe36f8f6165ba679db1229716db822a jdk7-b56
+d5a1223e961891564de25c39fba6f2442d0fb045 jdk7-b57
+9ba256e2e5c161b89e638390f998baa175ec9abe jdk7-b58
--- a/jdk/make/common/Release.gmk	Tue May 12 15:21:55 2009 +0900
+++ b/jdk/make/common/Release.gmk	Thu May 14 00:17:25 2009 -0700
@@ -52,6 +52,9 @@
                         com.sun.java.swing.plaf.motif    \
                         com.sun.java.swing.plaf.gtk
 
+# This is a stopgap until 6839872 is fixed.
+EXCLUDE_PROPWARN_PKGS += sun.dyn
+
 # 64-bit solaris has a few special cases. We define the variable
 # SOLARIS64 for use in this Makefile to easily test those cases
 ifeq ($(PLATFORM), solaris)
--- a/jdk/make/docs/CORE_PKGS.gmk	Tue May 12 15:21:55 2009 +0900
+++ b/jdk/make/docs/CORE_PKGS.gmk	Thu May 14 00:17:25 2009 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright 2001-2009 Sun Microsystems, Inc.  All Rights Reserved.
+# Copyright 2001-2008 Sun Microsystems, Inc.  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
@@ -55,6 +55,7 @@
 # This is a list of regular expressions. So foo.* matches "foo" and "foo.bar".
 #
 ACTIVE_JSR_PKGS= \
+  java.dyn \
   java.sql  \
   javax.activation  \
   javax.annotation.*  \
@@ -96,6 +97,7 @@
   java.awt.print                                 \
   java.beans                                     \
   java.beans.beancontext                         \
+  java.dyn                                       \
   java.io                                        \
   java.lang                                      \
   java.lang.annotation                           \
--- a/jdk/make/java/Makefile	Tue May 12 15:21:55 2009 +0900
+++ b/jdk/make/java/Makefile	Thu May 14 00:17:25 2009 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright 1995-2006 Sun Microsystems, Inc.  All Rights Reserved.
+# Copyright 1995-2009 Sun Microsystems, Inc.  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
@@ -39,7 +39,7 @@
 # Others
 #    Note: java_crw_demo java_hprof_demo are demos but must be delivered built in sdk
 SUBDIRS += security npt java_crw_demo java_hprof_demo \
-	    math awt util text applet net nio \
+	    math awt util text applet net nio dyn \
 	    sql rmi jar beans logging management instrument
 
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/make/java/dyn/Makefile	Thu May 14 00:17:25 2009 -0700
@@ -0,0 +1,44 @@
+#
+# Copyright 2008-2009 Sun Microsystems, Inc.  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
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  Sun designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Sun in the LICENSE file that accompanied this code.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+# CA 95054 USA or visit www.sun.com if you need additional information or
+# have any questions.
+#
+
+BUILDDIR = ../..
+
+PACKAGE = java.dyn
+PRODUCT = java
+include $(BUILDDIR)/common/Defs.gmk
+
+AUTO_FILES_JAVA_DIRS = java/dyn sun/dyn
+
+# The sources built here use new language syntax to generate
+# method handle calls.  Let's be sure we are using that format.
+#LANGUAGE_VERSION = -source 7
+#CLASS_VERSION = -target 7
+
+# Actually, it will be less disruptive to compile with the same
+# -target option as the rest of the system, and just turn on
+# the specific compiler option we need here:
+OTHER_JAVACFLAGS = -XDinvokedynamic
+
+include $(BUILDDIR)/common/Classes.gmk
--- a/jdk/make/sun/awt/FILES_c_unix.gmk	Tue May 12 15:21:55 2009 +0900
+++ b/jdk/make/sun/awt/FILES_c_unix.gmk	Thu May 14 00:17:25 2009 -0700
@@ -125,7 +125,6 @@
         FourByteAbgrPre.c \
 	BufferedMaskBlit.c \
 	BufferedRenderPipe.c \
-	RenderBuffer.c \
 	ShapeSpanIterator.c \
 	SpanClipRenderer.c \
 	awt_ImageRep.c \
--- a/jdk/make/sun/awt/FILES_c_windows.gmk	Tue May 12 15:21:55 2009 +0900
+++ b/jdk/make/sun/awt/FILES_c_windows.gmk	Thu May 14 00:17:25 2009 -0700
@@ -70,7 +70,6 @@
         FourByteAbgrPre.c \
 	BufferedMaskBlit.c \
 	BufferedRenderPipe.c \
-	RenderBuffer.c \
 	ShapeSpanIterator.c \
 	SpanClipRenderer.c \
 	SurfaceData.c \
--- a/jdk/make/sun/awt/mapfile-vers	Tue May 12 15:21:55 2009 +0900
+++ b/jdk/make/sun/awt/mapfile-vers	Thu May 14 00:17:25 2009 -0700
@@ -65,7 +65,6 @@
 		Java_sun_awt_image_ShortComponentRaster_initIDs;
                 Java_sun_java2d_pipe_BufferedMaskBlit_enqueueTile;
                 Java_sun_java2d_pipe_BufferedRenderPipe_fillSpans;
-                Java_sun_java2d_pipe_RenderBuffer_copyFromArray;
 		Java_sun_java2d_pipe_SpanClipRenderer_eraseTile;
 		Java_sun_java2d_pipe_SpanClipRenderer_fillTile;
                 Java_sun_java2d_pipe_ShapeSpanIterator_addSegment;
--- a/jdk/make/sun/awt/mapfile-vers-linux	Tue May 12 15:21:55 2009 +0900
+++ b/jdk/make/sun/awt/mapfile-vers-linux	Thu May 14 00:17:25 2009 -0700
@@ -117,7 +117,6 @@
 		Java_sun_java2d_loops_MaskBlit_MaskBlit;
 		Java_sun_java2d_loops_MaskFill_MaskFill;
                 Java_sun_java2d_pipe_BufferedRenderPipe_fillSpans;
-                Java_sun_java2d_pipe_RenderBuffer_copyFromArray;
 		Java_sun_java2d_pipe_SpanClipRenderer_initIDs;
 		sun_awt_image_GifImageDecoder_initIDs;
 
--- a/jdk/src/linux/doc/man/appletviewer.1	Tue May 12 15:21:55 2009 +0900
+++ b/jdk/src/linux/doc/man/appletviewer.1	Thu May 14 00:17:25 2009 -0700
@@ -1,6 +1,4 @@
-.'" t
-."
-." Copyright 2000-2006 Sun Microsystems, Inc.  All Rights Reserved.
+." Copyright 2002-2006 Sun Microsystems, Inc.  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
@@ -20,20 +18,21 @@
 ." Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
 ." CA 95054 USA or visit www.sun.com if you need additional information or
 ." have any questions.
-." 
-." `
-.TH appletviewer 1 "05 Aug 2006"
-." Generated by html2roff
+."
+.TH appletviewer 1 "04 May 2009"
+." Generated from HTML by html2man (author: Eric Armstrong)
 
 .LP
-.SH NAME
+.SH "Name"
 appletviewer \- The Java Applet Viewer
 .LP
+.RS 3
 
 .LP
 .LP
 The \f3appletviewer\fP command allows you to run applets outside of a web browser.
 .LP
+.RE
 .SH "SYNOPSIS"
 .LP
 
@@ -59,15 +58,18 @@
 .LP
 
 .LP
+.RS 3
 .TP 3
 \-debug 
-Starts the applet viewer in the Java debugger, \f3jdb\fP, thus allowing you to debug the applets in the document. 
+Starts the applet viewer in the Java debugger, jdb(1), thus allowing you to debug the applets in the document. 
 .TP 3
 \-encoding \  \ encoding name 
 Specify the input HTML file encoding name. 
 .TP 3
 \-Jjavaoption 
 Passes through the string \f2javaoption\fP as a single argument to the Java interpreter which runs the appletviewer. The argument should not contain spaces. Multiple argument words must all begin with the prefix \f3\-J\fP, which is stripped. This is useful for adjusting the compiler's execution environment or memory usage. 
+.RE
+
 .LP
 .LP
 
--- a/jdk/src/linux/doc/man/apt.1	Tue May 12 15:21:55 2009 +0900
+++ b/jdk/src/linux/doc/man/apt.1	Thu May 14 00:17:25 2009 -0700
@@ -1,5 +1,3 @@
-.'" t
-."
 ." Copyright 2004-2006 Sun Microsystems, Inc.  All Rights Reserved.
 ." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 ."
@@ -20,10 +18,9 @@
 ." Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
 ." CA 95054 USA or visit www.sun.com if you need additional information or
 ." have any questions.
-." 
-." `
-.TH apt 1 "05 Aug 2006"
-." Generated by html2roff
+."
+.TH apt 1 "04 May 2009"
+." Generated from HTML by html2man (author: Eric Armstrong)
 
 .LP
 .SH "NAME"
@@ -41,12 +38,15 @@
 .LP
 Options may be in any order. For a discussion of parameters which apply to a specific option, see OPTIONS below.
 .LP
+.RS 3
 .TP 3
 sourcefiles 
 Zero or more source files to be processed. 
 .TP 3
 @files 
 One or more files that list source files or other options 
+.RE
+
 .LP
 .SH "DESCRIPTION"
 .LP
@@ -60,19 +60,19 @@
 .fi
 http://java.sun.com/javase/6/docs/technotes/guides/apt/GettingStarted.html
 .LP
+.RS 3
 .TP 3
 Note: 
-\f2The functionality of \fP\f2apt\fP has been subsumed by the annotation\-processing infrastructure that is now part of the \f2javac\fP tool [
-.na
-\f2Solaris and Linux\fP @
-.fi
-http://java.sun.com/javase/6/docs/technotes/tools/solaris/javac.html] [Windows] and standardized for use by all Java compilers. This new infrastructure relies on the language model and annotation\-processing APIs that are now part of the Java Platform. It is recommended that new annotation processor development be based on the new APIs and the \f2javac\fP tool. 
+\f2The functionality of \fP\f2apt\fP has been subsumed by the annotation\-processing infrastructure that is now part of the \f2javac(1)\fP tool and standardized for use by all Java compilers. This new infrastructure relies on the language model and annotation\-processing APIs that are now part of the Java Platform. It is recommended that new annotation processor development be based on the new APIs and the \f2javac\fP tool. 
+.RE
+
 .LP
 .SH "OPTIONS"
 .LP
 .SS 
 apt specific options
 .LP
+.RS 3
 .TP 3
 \-s dir 
 Specify the directory root under which processor\-generated source files will be placed; files are placed in subdirectories based on package namespace. 
@@ -91,17 +91,21 @@
 .TP 3
 \-factory classname 
 Name of annotation processor factory to use; bypasses default discovery process 
+.RE
+
 .LP
 .SS 
 Options shared with javac
 .LP
+.RS 3
 .TP 3
 \-d dir 
 Specify where to place processor and javac generated class files 
 .TP 3
-\-cp path or \-classpath
-path 
+\-cp path or \-classpath path 
 Specify where to find user class files and annotation processor factories. If \f2\-factorypath\fP is given, the classpath is not searched for factories. 
+.RE
+
 .LP
 .LP
 Consult the javac(1) man page for information on \f2javac\fP options.
@@ -115,24 +119,11 @@
 .LP
 .RS 3
 .TP 2
-*
-javac: [
-.na
-\f2Solaris and Linux\fP @
-.fi
-http://java.sun.com/javase/6/docs/technotes/tools/solaris/javac.html] [Windows] 
-.TP 2
-*
-java: [
-.na
-\f2Solaris\fP @
-.fi
-http://java.sun.com/javase/6/docs/technotes/tools/solaris/java.html] [
-.na
-\f2Linux\fP @
-.fi
-http://java.sun.com/javase/6/docs/technotes/tools/linux/java.html] [Windows] 
+o
+javac(1), java(1) 
 .RE
 
 .LP
+
+.LP
  
--- a/jdk/src/linux/doc/man/extcheck.1	Tue May 12 15:21:55 2009 +0900
+++ b/jdk/src/linux/doc/man/extcheck.1	Thu May 14 00:17:25 2009 -0700
@@ -1,6 +1,4 @@
-.'" t
-."
-." Copyright 2000-2006 Sun Microsystems, Inc.  All Rights Reserved.
+." Copyright 2002-2006 Sun Microsystems, Inc.  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
@@ -21,19 +19,20 @@
 ." CA 95054 USA or visit www.sun.com if you need additional information or
 ." have any questions.
 ."
-." `
-.TH extcheck 1 "05 Aug 2006"
-." Generated by html2roff
+.TH extcheck 1 "04 May 2009"
+." Generated from HTML by html2man (author: Eric Armstrong)
 
 .LP
-.SH NAME
+.SH "Name"
 extcheck \- A utility to detect jar conflicts
 .LP
+.RS 3
 
 .LP
 .LP
 \f3extcheck\fP detects version conflicts between a target jar file and currently installed extension jar files.
 .LP
+.RE
 .SH "SYNOPSIS"
 .LP
 
@@ -67,19 +66,22 @@
 .LP
 
 .LP
+.RS 3
 .TP 3
 \-verbose 
 Lists Jar files in the extension directory as they are checked. Additionally, manifest attributes of the target jar file and any conflicting jar files are also reported. 
 .TP 3
 \-Joption 
-Pass \f2option\fP to the Java virtual machine, where \f2option\fP is one of the options described on the reference page for the java application launcher. For example, \f3\-J\-Xms48m\fP sets the startup memory to 48 megabytes. 
+Pass \f2option\fP to the Java virtual machine, where \f2option\fP is one of the options described on the reference page for the java(1). For example, \f3\-J\-Xms48m\fP sets the startup memory to 48 megabytes. 
+.RE
+
 .LP
 .SH "SEE ALSO"
 .LP
 
 .LP
 .LP
-jar
+jar(1)
 .LP
 
 .LP
--- a/jdk/src/linux/doc/man/idlj.1	Tue May 12 15:21:55 2009 +0900
+++ b/jdk/src/linux/doc/man/idlj.1	Thu May 14 00:17:25 2009 -0700
@@ -1,5 +1,3 @@
-.'" t
-."
 ." Copyright 2001-2006 Sun Microsystems, Inc.  All Rights Reserved.
 ." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 ."
@@ -21,12 +19,11 @@
 ." CA 95054 USA or visit www.sun.com if you need additional information or
 ." have any questions.
 ."
-." `
-.TH idlj 1 "07 Aug 2006"
-." Generated by html2man
+.TH idlj 1 "04 May 2009"
+." Generated from HTML by html2man (author: Eric Armstrong)
 
 .LP
-.SH NAME
+.SH "Name"
 idlj \- The IDL\-to\-Java Compiler
 .LP
 .RS 3
@@ -54,7 +51,11 @@
 .LP
 
 .LP
-The IDL\-to\-Java Compiler generates the Java bindings for a given IDL file.\  For binding details, see the OMG IDL to Java Language Language Mapping Specification. Some previous releases of the IDL\-to\-Java compiler were named \f2idltojava\fP. 
+The IDL\-to\-Java Compiler generates the Java bindings for a given IDL file.\  For binding details, see the 
+.na
+\f2OMG IDL to Java Language Language Mapping Specification\fP @
+.fi
+http://java.sun.com/javase/6/docs/technotes/guides/idl/mapping/jidlMapping.html. Some previous releases of the IDL\-to\-Java compiler were named \f2idltojava\fP. 
 .SS 
 Emitting Client and Server Bindings
 .LP
@@ -78,10 +79,18 @@
 The default server\-side model is the \f2Portable Servant Inheritance Model\fP. Given an interface \f2My\fP defined in \f2My.idl\fP, the file \f2MyPOA.java\fP is generated. You must provide the implementation for \f2My\fP and it must inherit from \f2MyPOA\fP.
 .LP
 .LP
-\f2MyPOA.java\fP is a stream\-based skeleton that extends \f2org.omg.PortableServer.Servant\fP and implements the \f2InvokeHandler\fP interface and the operations interface associated with the IDL interface the skeleton implements.
+\f2MyPOA.java\fP is a stream\-based skeleton that extends 
+.na
+\f2org.omg.PortableServer.Servant\fP @
+.fi
+http://java.sun.com/javase/6/docs/api/org/omg/PortableServer/Servant.html and implements the \f2InvokeHandler\fP interface and the operations interface associated with the IDL interface the skeleton implements.
 .LP
 .LP
-The \f2PortableServer\fP module for the Portable Object Adapter (POA) defines the native \f2Servant\fP type. In the Java programming language, the \f2Servant\fP type is mapped to the Java \f2org.omg.PortableServer.Servant\fP class. It serves as the base class for all POA servant implementations and provides a number of methods that may be invoked by the application programmer, as well as methods which are invoked by the POA itself and may be overridden by the user to control aspects of servant behavior.
+The \f2PortableServer\fP module for the 
+.na
+\f2Portable Object Adapter (POA)\fP @
+.fi
+http://java.sun.com/javase/6/docs/technotes/guides/idl/POA.html defines the native \f2Servant\fP type. In the Java programming language, the \f2Servant\fP type is mapped to the Java \f2org.omg.PortableServer.Servant\fP class. It serves as the base class for all POA servant implementations and provides a number of methods that may be invoked by the application programmer, as well as methods which are invoked by the POA itself and may be overridden by the user to control aspects of servant behavior.
 .LP
 .LP
 Another option for the Inheritance Model is to use the \f2\-oldImplBase\fP flag in order to generate server\-side bindings that are compatible with versions of the Java programming language prior to J2SE 1.4. Note that using the \f2\-oldImplBase\fP flag is non\-standard: these APIs are being deprecated. You would use this flag ONLY for compatibility with existing servers written in J2SE 1.3. In that case, you would need to modify an existing MAKEFILE to add the \f2\-oldImplBase\fP flag to the \f2idlj\fP compiler, otherwise POA\-based server\-side mappings will be generated. To generate server\-side bindings that are backwards compatible:
@@ -203,7 +212,11 @@
 .LP
 Since this form of include can become irritatingly long, another means of indicating to the compiler where to search for included files is provided. This technique is similar to the idea of an environment variable. Create a file named \f2idl.config\fP in a directory that is listed in your CLASSPATH. Inside of \f2idl.config\fP, provide a line with the following form:  \f2includes=/includes;/moreIncludes\fP
 .LP
-The compiler will find this file and read in the includes list. Note that in this example the separator character between the two directories is a semicolon (;). This separator character is platform dependent. On the Windows platform, use a semicolon, on the Unix platform, use a colon, etc. For more information on \f2includes\fP, read the CLASSPATH\ (Solaris) or CLASSPATH\ (Windows) documentation.
+The compiler will find this file and read in the includes list. Note that in this example the separator character between the two directories is a semicolon (;). This separator character is platform dependent. On the Windows platform, use a semicolon, on the Unix platform, use a colon, etc. For more information on \f2includes\fP, see the 
+.na
+\f2Setting the Classpath\fP @
+.fi
+http://java.sun.com/javase/6/docs/technotes/tools/index.html#general.
 .RE
 .SS 
 Emitting Bindings for Include Files
--- a/jdk/src/linux/doc/man/ja/appletviewer.1	Tue May 12 15:21:55 2009 +0900
+++ b/jdk/src/linux/doc/man/ja/appletviewer.1	Thu May 14 00:17:25 2009 -0700
@@ -1,6 +1,4 @@
-.'" t
-."
-." Copyright 2000-2006 Sun Microsystems, Inc.  All Rights Reserved.
+." Copyright 2002-2006 Sun Microsystems, Inc.  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
@@ -20,55 +18,58 @@
 ." Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
 ." CA 95054 USA or visit www.sun.com if you need additional information or
 ." have any questions.
-." 
-." `
-.TH appletviewer 1 "2006 年 9 月 4 日" "Java SE 6" "ユーザーコマンド"
-." Generated by html2roff
+."
+.TH appletviewer 1 "04 May 2009"
+." Generated from HTML by html2man (author: Eric Armstrong)
 
 .LP
-.SH 名前
-appletviewer \- Java アプレットビューア
+.SH ""
+appletviewer \- Java ≪ャ若
+.LP
+.RS 3
+
+.LP
+.LP
+\f3appletviewer\fP 潟潟 Web 吟紊с≪絎茵障
+.LP
+.RE
+.SH "綵√"
 .LP
 
 .LP
 .LP
-\f3appletviewer\fP コマンドは Web ブラウザの外でアプレットを実行させます。
+\f4appletviewer\fP \f2[\fP \f2options\fP \f2] \fP\f2urls\fP ...
 .LP
-.SH "形式"
+.SH "茯"
 .LP
 
 .LP
 .LP
-\f4appletviewer\fP \f2[\fP \f2options\fP \f2] \fP\f2urls\fP ...
+\f3appletviewer\fP 潟潟 \f2urls\fP 絎ャ<潟純若鴻・膓ャ<潟с≪c潟ц;腓冴障羈: \f2urls\fP cсャ<潟\f2OBJECT\fP\f2EMBED\fP障 \f2APPLET\fP 帥違с≪с翫\f3appletviewer\fP 篏茵障\f3appletviewer\fP с泣若 HTML 帥違荅括完ゃ
+.na
+\f2≪ャ若≪帥違\fP @
+.fi
+http://java.sun.com/javase/6/docs/technotes/tools/appletviewertags.htmlс
 .LP
-.SH "機能説明"
+.LP
+\f3羈:\fP \f3appletviewer\fP RFC2396 ц鎘鴻宴若罘罕緇c膃垸 URL 綽荀障泣若膃垸 URL с<ゃゃRFC2396 絎号х垸茹iゃ鏆荀障
+.LP
+.SH "激с"
 .LP
 
 .LP
-.LP
-\f3appletviewer\fP コマンドは \f2urls\fP に指定されたドキュメントあるいはリソースと接続して、そのドキュメントが参照するそれぞれのアプレットを独自のウィンドウで表示します。注:\f2urls\fP によって参照されたドキュメントが、\f2OBJECT\fP、\f2EMBED\fP、または \f2APPLET\fP タグでどのアプレットも参照していない場合、\f3appletviewer\fP は何も行いません。\f3appletviewer\fP でサポートされる HTML タグの詳細については、
-.fi
-http://java.sun.com/javase/6/docs/technotes/tools/appletviewertags.html
-の
-.na
-「\f2AppletViewer Tags\fP」を参照してください。
-.LP
-.LP
-\f3注:\fP \f3appletviewer\fP は、RFC2396 で規定されたエスケープ機構に従って符号化された URL を必要とします。サポートされるのは、符号化された URL だけです。ただし、ファイル名については、RFC2396 に指定された方法で符号化を解除しておく必要があります。
-.LP
-.SH "オプション"
-.LP
-
-.LP
+.RS 3
 .TP 3
 \-debug 
-Java デバッガ \f3jdb\fP でアプレットビューアを開始します。 これにより、ドキュメント中のアプレットをデバッグすることができます。 
+Java  jdb(1) с≪ャ若≪紮障 ャ<潟筝≪違с障 
 .TP 3
 \-encoding \  \ encoding name 
-入力 HTML ファイルのエンコーディング名を指定します。 
+ュ HTML <ゃ潟潟若c潟医絎障 
 .TP 3
 \-Jjavaoption 
-文字列 \f2javaoption\fP は、appletviewer を実行する Java インタプリタに 1 つの引数として渡されます。引数に空白文字を含めてはいけません。複数の引数は、各引数のすべてを接頭辞 \f3\-J\fP で始めることにより区分する必要があります。これは、コンパイラの実行環境、またはメモリの利用に有効です。 
+絖 \f2javaoption\fP appletviewer 絎茵 Java ゃ潟帥帥 1 ゃ綣違羝<障綣違鴻若鴻障茲違綣違綣違鴻・莨 \f3\-J\fP у阪綽荀障潟潟ゃ絎茵医障<≪若鴻с 
+.RE
+
 .LP
 .LP
 
--- a/jdk/src/linux/doc/man/ja/apt.1	Tue May 12 15:21:55 2009 +0900
+++ b/jdk/src/linux/doc/man/ja/apt.1	Thu May 14 00:17:25 2009 -0700
@@ -1,179 +1,126 @@
-'\" t
-.\"
-.\" Copyright 2004-2006 Sun Microsystems, Inc.  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
-.\" under the terms of the GNU General Public License version 2 only, as
-.\" published by the Free Software Foundation.
-.\"
-.\" This code is distributed in the hope that it will be useful, but WITHOUT
-.\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-.\" FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-.\" version 2 for more details (a copy is included in the LICENSE file that
-.\" accompanied this code).
-.\"
-.\" You should have received a copy of the GNU General Public License version
-.\" 2 along with this work; if not, write to the Free Software Foundation,
-.\" Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
-.\"
-.\" Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
-.\" CA 95054 USA or visit www.sun.com if you need additional information or
-.\" have any questions.
-.\" 
-.\"
-.\" 
-.TH apt 1 "2006 年 9 月 4 日" "Java SE 6" "ユーザーコマンド"
-.SH "名前"
-apt \- 注釈処理ツール
-.\"
-.SH "形式"
-.B apt 
-.BI [\-classpath " classpath"]
-.BI [\-sourcepath " sourcepath"]
-.BI [\-d " directory"]
-.BI [\-s " directory"]
-.BI [\-factorypath " path"]
-.BI [\-factory " class"]
-.B [\-print]
-.B [\-nocompile]
-.B [\-Akey[=val] ...]
-.BI [javac option]
-.BI sourcefiles
-.BI [@files]
-.SH "パラメータ" 
-オプションは任意の順序で使用できます。特定のオプションに適用される
-パラメータについては、後述の「オプション」を参照してください。
-.if t .TP 20
-.if n .TP 15
-.I sourcefiles
-処理される 0 個以上のソースファイル。
-.if t .TP 20
-.if n .TP 15
-.I @files
-ソースファイルまたはその他のオプションをリストする 1 個以上のファイル。
-.SH "機能説明"
-注釈処理ツール
-.B apt 
-には、プログラム注釈を処理するための一連の
-新しいリフレクション API とインフラストラクチャサポートが含まれています。
-.B apt 
-のリフレクション API では、プログラム構造のビューが、
-ビルド時のソースベースの読み取り専用として用意されています。
-これらのリフレクション API は、総称型の追加後に、
-Java(TM) プログラミング言語の型システムを
-わかりやすくモデル化できるように設計されました。
-はじめに、
-.B apt 
-は注釈プロセッサを実行します。この注釈プロセッサでは、
-新規のソースコードおよびその他のファイルを生成します。
-次に、オリジナルのソースファイルと生成したソースファイルの両方をコンパイルし、
-開発を容易にします。ツールと対話するためのリフレクション API と
-その他の API は、
-.B com.sun.mirror 
-のサブパッケージです。
+." Copyright  Sun Microsystems, Inc.  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
+." under the terms of the GNU General Public License version 2 only, as
+." published by the Free Software Foundation.
+."
+." This code is distributed in the hope that it will be useful, but WITHOUT
+." ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+." FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+." version 2 for more details (a copy is included in the LICENSE file that
+." accompanied this code).
+."
+." You should have received a copy of the GNU General Public License version
+." 2 along with this work; if not, write to the Free Software Foundation,
+." Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+."
+." Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+." CA 95054 USA or visit www.sun.com if you need additional information or
+." have any questions.
+."
+.TH apt 1 "04 May 2009"
+." Generated from HTML by html2man (author: Eric Armstrong)
+
 .LP
-.B apt 
-によるツールの操作方法と開発手順についての詳細は、
-http://java.sun.com/javase/6/docs/technotes/guides/apt/GettingStarted.html
-の「Getting Started with apt」を参照してください。
+.SH "NAME"
 .LP
+.LP
+\f2apt\fP \- 羈若
+.LP
+.SH "綵√"
+.LP
+.LP
+\f2apt [\-classpath \fP\f2classpath\fP] [\-sourcepath \f2sourcepath\fP] [\-d \f2directory\fP] [\-s \f2directory\fP] [\-factorypath \f2path\fP] [\-factory \f2class\fP] [\-print] [\-nocompile] [\-A\f2key\fP[\f2=val\fP] ...][\f2javac option\fP] sourcefiles [@files]
+.LP
+.SH "<若"
+.LP
+.LP
+激с潟筝с劫激с潟<若帥ゃ筝荐激с潟с
+.LP
+.RS 3
 .TP 3
-注: 
-\f2apt\fP\f2 の機能\fPは標準の注釈処理インフラストラクチャに組み込まれました。この標準のインフラストラクチャは、今では \f2javac\fP ツール [
+sourcefiles 
+若1 ゃ障茲違絲乗院純若鴻<ゃ 
+.TP 3
+@files 
+純若鴻<ゃ障篁激с潟筝荀ц;腓冴 1 ゃ障茲違<ゃ 
+.RE
+
+.LP
+.SH "茯"
+.LP
+.LP
+羈若 \f2apt\fP 違 API 泣若ゃ潟鴻c若罕違羈障\f2apt\fP  API  罕膀純若鴻若鴻с違罕≪茯水絨ャ若箴障 API 膩霡違菴遵緇Java(TM) 違潟域茯激鴻罩c≪荐荐障\f2apt\fP 違純若鴻潟若篁<ゃ篏羈祉泣絎茵障罨<\f2apt\fP 純若鴻<ゃ純若鴻<ゃ筝≧鴻潟潟ゃ冴罐純障若ゃ潟帥с若鴻篏睡 API  API \f2com.sun.mirror\fP 泣宴若吾с
+.LP
+.LP
+若罘純≪荅括完\f2apt\fP 篏睡堺号ゃ
 .na
-\f2Solaris と Linux\fP の場合: 
+\f4\fP\f4apt\fP\f3 ラ\fP @
 .fi
-http://java.sun.com/javase/6/docs/technotes/tools/solaris/javac.html] [
-.na
-\f2Windows\fP の場合: 
-.fi
-http://java.sun.com/javase/6/docs/technotes/tools/windows/javac.html] の一部となり、すべての Java コンパイラで使用できるように標準化されています。この新しいインフラストラクチャは、Java プラットフォームの一部となった言語モデルと注釈処理 API に依存しています。新しい注釈プロセッサの開発は、この新しい API と \f2javac\fP ツールに基づいて行うことをお勧めします。
+http://java.sun.com/javase/6/docs/technotes/guides/apt/GettingStarted.htmlс
 .LP
-.SH "オプション"
-.SS apt 固有のオプション
-.if t .TP 20
-.if n .TP 15
-.BI \-s " dir"
-プロセッサが生成するソースファイルが配置されるディレクトリルートを
-指定します。ファイルはパッケージのネームスペースに従って、
-サブディレクトリに配置されます。
-.if t .TP 20
-.if n .TP 15
-.BI \-nocompile
-ソースファイルをクラスファイルにコンパイルしません。
-.if t .TP 20
-.if n .TP 15
-.BI \-print
-指定した型のテキスト表現を出力します。
-注釈処理やコンパイルは実行しません。
-.if t .TP 20
-.if n .TP 15
-.BI \-A[key[=val]]
-注釈プロセッサに渡されるオプション。
-.B apt 
-は、これらのオプションを直接解釈しませんが、個別のプロセッサ
-によって使用可能になります。
-.if t .TP 20
-.if n .TP 15
-.BI \-factorypath " path" 
-注釈プロセッサファクトリを検索する場所を指定します。
-このオプションを使用する場合、ファクトリの検索に
-クラスパスは使用されません。
-.if t .TP 20
-.if n .TP 15
-.BI \-factory " classname"
-使用する注釈プロセッサファクトリの名前。
-デフォルトの検出処理はバイパスされます。
-.SS javac と共有されるオプション
-.if t .TP 20
-.if n .TP 15
-.BI \-d " dir"
-プロセッサおよび 
-.B javac 
-が生成したクラスファイルを配置する場所を指定します。
-.if t .TP 20
-.if n .TP 15
-.BI \-cp " path " \fLまたは\fP \fL\-classpath " path"
-ユーザクラスファイルおよび注釈プロセッサファクトリを検索する場所を
-指定します。
-.B \-factorypath 
-を指定した場合、ファクトリの検索にクラスパスは使用されません。
+.RS 3
+.TP 3
+羈: 
+\f2apt\fP 罘純\f2javac(1)\fP 若筝c羈ゃ潟鴻c若腟粋昭障鴻 Java 潟潟ゃт戎с罔羣障違ゃ潟鴻c若荐茯≪ Java 若筝c羈 API 箴絖障羈祉泣冴違 API  \f2javac\fP 若冴ャ茵с障 
+.RE
+
 .LP
-javac のオプションについては、
-.BR javac(1) 
-のマニュアルページを参照してください。
-.SH 注意事項
+.SH "激с"
 .LP
-\f2apt\fP の機能は、\f2javac\fP が提供するようになった標準の注釈処理インフラストラクチャに組み込まれました。\f2apt\fP とその関連 API のサポートは、JDK の将来のリリースで打ち切られる可能性があります。
+.SS 
+apt 堺激с
 .LP
-.SH "関連項目"
+.RS 3
+.TP 3
+\-s dir 
+祉泣純若鴻<ゃ臀c若絎障 <ゃ宴若吾腥咲冴ャ泣c臀障 
+.TP 3
+\-nocompile 
+純若鴻<ゃ鴻<ゃ潟潟ゃ障 
+.TP 3
+\-print 
+絎帥ゃ鴻茵憗阪障 羈障潟潟ゃ茵障 
+.TP 3
+\-A[key[=val]] 
+羈祉泣御検激с潟с 激с潟\f2apt\fP 贋・茹iс祉泣c篏睡с紊障 
+.TP 3
+\-factorypath path 
+羈祉泣<罎膣≪贋絎障 激с潟篏睡翫鴻鴻<罎膣≪障 
+.TP 3
+\-factory classname 
+篏睡羈祉泣<с 罎冴祉鴻ャ障 
+.RE
+
+.LP
+.SS 
+javac 援激с
+.LP
+.RS 3
+.TP 3
+\-d dir 
+祉泣 javac 鴻<ゃ臀贋絎障 
+.TP 3
+\-cp path or \-classpath path 
+若吟若鴻<ゃ羈祉泣<罎膣≪贋絎障\f2\-factorypath\fP 絎翫鴻鴻<罎膣≪障 
+.RE
+
+.LP
+.LP
+\f2javac\fP 激с潟荅括完ゃjavac(1) ャ≪若吾с
+.LP
+.SH "羈"
+.LP
+.LP
+\f2apt\fP 罘純\f2javac\fP 箴罔羣羈ゃ潟鴻c若腟粋昭障障篁緇 JDK 若鴻с\f2apt\fP 渇∫c API 泣若筝罩≪醇с障
+.LP
+.SH "∫i"
 .LP
 .RS 3
 .TP 2
-*
-javac: [
-.na
-\f2Solaris と Linux\fP の場合: 
-.fi
-http://java.sun.com/javase/6/docs/technotes/tools/solaris/javac.html] 
-[ \f2Windows\fP の場合: 
-.fi
-http://java.sun.com/javase/6/docs/technotes/tools/windows/javac.html] 
-.TP 2
-*
-java: [
-.na
-\f2Solaris\fP の場合: 
-.fi
-http://java.sun.com/javase/6/docs/technotes/tools/solaris/java.html] [
-.na
-\f2Linux\fP の場合: 
-.fi
-http://java.sun.com/javase/6/docs/technotes/tools/linux/java.html] 
-[ \f2Windows\fP の場合: 
-.fi
-http://java.sun.com/javase/6/docs/technotes/tools/windows/java.html] 
+o
+javac(1), java(1) 
 .RE
 
 .LP
--- a/jdk/src/linux/doc/man/ja/extcheck.1	Tue May 12 15:21:55 2009 +0900
+++ b/jdk/src/linux/doc/man/ja/extcheck.1	Thu May 14 00:17:25 2009 -0700
@@ -1,109 +1,88 @@
-'\" t
-.\"
-.\" Copyright 2000-2006 Sun Microsystems, Inc.  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
-.\" under the terms of the GNU General Public License version 2 only, as
-.\" published by the Free Software Foundation.
-.\"
-.\" This code is distributed in the hope that it will be useful, but WITHOUT
-.\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-.\" FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-.\" version 2 for more details (a copy is included in the LICENSE file that
-.\" accompanied this code).
-.\"
-.\" You should have received a copy of the GNU General Public License version
-.\" 2 along with this work; if not, write to the Free Software Foundation,
-.\" Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
-.\"
-.\" Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
-.\" CA 95054 USA or visit www.sun.com if you need additional information or
-.\" have any questions.
-.\"
-.\" `
-'\"macro stdmacro
-.TH extcheck 1 "2006 年 9 月 4 日" "Java SE 6" "ユーザーコマンド"
-.SH "名前"
-extcheck \- jar の競合検出ユーティリティ
+." Copyright 2002-2006 Sun Microsystems, Inc.  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
+." under the terms of the GNU General Public License version 2 only, as
+." published by the Free Software Foundation.
+."
+." This code is distributed in the hope that it will be useful, but WITHOUT
+." ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+." FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+." version 2 for more details (a copy is included in the LICENSE file that
+." accompanied this code).
+."
+." You should have received a copy of the GNU General Public License version
+." 2 along with this work; if not, write to the Free Software Foundation,
+." Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+."
+." Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+." CA 95054 USA or visit www.sun.com if you need additional information or
+." have any questions.
+."
+.TH extcheck 1 "04 May 2009"
+." Generated from HTML by html2man (author: Eric Armstrong)
+
+.LP
+.SH ""
+extcheck \- jar 腴九罎冴若cc
+.LP
+.RS 3
+
+.LP
+.LP
+\f3extcheck\fP 帥若蚊 jar <ゃ憜ゃ潟鴻若≦宍罘純 jar <ゃ若吾с潟腴九罎冴障
+.LP
+.RE
+.SH "綵√"
 .LP
 
 .LP
+.nf
+\f3
+.fl
+extcheck [ \-verbose ] targetfile.jar
+.fl
+\fP
+.fi
+
 .LP
-\f3extcheck\fP は、ターゲットの jar ファイルと現在インストールされている拡張機能の jar ファイル間のバージョンの競合を検出します。
+.SH "茯"
 .LP
-.SH "形式"
-.B extcheck 
-[ 
-.B \-verbose 
-] 
-.B targetfile.jar
-.SH "機能説明"
-.IX "jar conflict detection utility" "" "jar conflict detection utility \(em \fLextcheck\fP"
-.IX "extcheck" "" "\fLextcheck\fP \(em jar conflict detection utility"
-.B extcheck 
-ユーティリティは、指定された
-.B jar
-ファイルのタイトルおよびバージョンが Java(TM) SDK 
-ソフトウェアにインストールされている拡張機能と競合していないかを
-検査します。
-拡張機能をインストールする前に、このユーティリティを使って、
-バージョンが同じか、
-より新しい拡張機能がすでにインストールされていないかどうかを調べる
-ことができます。
+
 .LP
-.B extcheck
-ユーティリティは、
-.I targetfile.jar
-ファイルのマニフェスト内のヘッダ
-.I Specification-title 
-および 
-.I Specification-version
-を、拡張機能ディレクトリ内に現在インストールされているすべての jar 
-ファイル内の対応するヘッダと比較します。
-デフォルトでは、拡張機能ディレクトリは、
-.I jre/lib/ext
-です。
-.B extcheck 
-ユーティリティは、
-.I java.lang.Package.isCompatibleWith
-メソッドと同様の方法でバージョン番号を比較します。
 .LP
-競合が検出されない場合、リターンコードは
-.I 0 です。
+\f3extcheck\fP 若cc若絎 Jar <ゃ帥ゃ潟若吾с潟 Java(TM) 2 SDK ゃ潟鴻若≦宍罘純腴九с障≦宍罘純ゃ潟鴻若若cc若篏帥c若吾с潟違≦宍罘純сゃ潟鴻若茯帥鴻с障
 .LP
-拡張機能ディレクトリ内の 
-.B jar 
-ファイルのマニフェストに、同一の 
-.I Specification-title、
-および同一またはより新しい 
-.I Specification-version 
-番号がある場合、ゼロでないエラー
-コードが返されます。
-.I targetfile.jar 
-のマニフェストに 
-.I Specification-title 
-または 
-.I Specification-version 
-属性がない場合も、ゼロでないエラーコードが返されます。
-.SH "オプション"
-以下のオプションが指定できます。
-.TP 15
-.B -verbose
-拡張機能ディレクトリ内の
-.B jar
-ファイルを、検査時に一覧表示します。また、ターゲット 
-.B jar
-ファイルのマニフェストの属性、および競合する
-.B jar
-ファイルについても報告します。
-.TP 15
-.BI \-J "option"
-.I option
-を Java 仮想マシンに渡します。ここで、
-.I option
-は、Java アプリケーション起動プログラム java(1) のマニュアルページで
-説明されているオプションの 1 つです。たとえば、-J-Xms48m
-は、起動時に使用するメモリを 48M バイトに設定します。
-.SH "関連項目"
-.BR jar (1)
+.LP
+\f3extcheck\fP 若cc若\f2targetfile.jar\fP <ゃс鴻 \f2Specification\-title\fP  \f2Specification\-version\fP ≦宍罘純c憜ゃ潟鴻若鴻 Jar <ゃ絲上若罸莠障с≦宍罘純c\f2jre/lib/ext\fP с\f3extcheck\fP 若cc若\f2java.lang.Package.isCompatibleWith\fP <純罕号с若吾с括垩罸莠障
+.LP
+.LP
+腴九罎冴翫帥若潟潟若 \f20\fP с
+.LP
+.LP
+≦宍罘純c jar <ゃс鴻筝 \f2Specification\-title\fP喝筝障違 \f2Specification\-version\fP 垩翫若с若潟若菴障\f2targetfile.jar\fP с鴻 \f2Specification\-title\fP 障 \f2Specification\-version\fP 絮с翫若с若潟若菴障
+.LP
+.SH "激с"
+.LP
+
+.LP
+.RS 3
+.TP 3
+\-verbose 
+≦宍罘純c Jar <ゃс筝荀ц;腓冴障障帥若蚊 jar <ゃс鴻絮с括九 jar <ゃゃ怨障 
+.TP 3
+\-Joption 
+Java 篁潟激潟 \f2option\fP 羝<障 \f2option\fP java(1)<潟鴻若吾荐莠激с潟 1 ゆ絎障違\f3\-J\-Xms48m\fP 絎鴻帥若≪<≪若 48M ゃ荐絎障 
+.RE
+
+.LP
+.SH "∫i"
+.LP
+
+.LP
+.LP
+jar(1)
+.LP
+
+.LP
+ 
--- a/jdk/src/linux/doc/man/ja/idlj.1	Tue May 12 15:21:55 2009 +0900
+++ b/jdk/src/linux/doc/man/ja/idlj.1	Thu May 14 00:17:25 2009 -0700
@@ -1,203 +1,112 @@
-'\" t
-.\"
-.\" Copyright 2001-2006 Sun Microsystems, Inc.  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
-.\" under the terms of the GNU General Public License version 2 only, as
-.\" published by the Free Software Foundation.
-.\"
-.\" This code is distributed in the hope that it will be useful, but WITHOUT
-.\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-.\" FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-.\" version 2 for more details (a copy is included in the LICENSE file that
-.\" accompanied this code).
-.\"
-.\" You should have received a copy of the GNU General Public License version
-.\" 2 along with this work; if not, write to the Free Software Foundation,
-.\" Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
-.\"
-.\" Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
-.\" CA 95054 USA or visit www.sun.com if you need additional information or
-.\" have any questions.
-.\" 
-.\"
-.\" 
-.TH idlj 1 "2006 年 9 月 4 日" "Java SE 6" "ユーザーコマンド"
-.SH "名前"
-idlj - IDL-to-Java コンパイラ
-.LP
-.B idlj
-は、指定された IDL ファイルから Java バインディングを生成します。
-.SH "形式"
-.B idlj
-[
-.IB options
-]
-.B idl-file
-.LP
-.BR idl-file
-には、Interface Definition Language (IDL) 定義が格納されている
-ファイルの名前を指定します。
-.BR Options
-は任意の順序で指定できますが、
-.BR idl-file
-よりも前に指定する必要があります。
-.SH "機能説明"
-IDL-to-Java コンパイラは、指定された IDL ファイルに対して Java 
-バインディングを生成します。
-バインディングの詳細は、「\f2OMG IDL to Java Language Language Mapping Specification\fP」
-.fi
-(http://java.sun.com/javase/6/docs/technotes/guides/idl/mapping/jidlMapping.html) 
-を参照してください。
-IDL-to-Java コンパイラの旧リリースのなかには、
-.BR idltojava という名前が付けられていたものがあります。
-.SH "クライアントバインディングとサーババインディングの発行"
+." Copyright 2001-2006 Sun Microsystems, Inc.  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
+." under the terms of the GNU General Public License version 2 only, as
+." published by the Free Software Foundation.
+."
+." This code is distributed in the hope that it will be useful, but WITHOUT
+." ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+." FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+." version 2 for more details (a copy is included in the LICENSE file that
+." accompanied this code).
+."
+." You should have received a copy of the GNU General Public License version
+." 2 along with this work; if not, write to the Free Software Foundation,
+." Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+."
+." Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+." CA 95054 USA or visit www.sun.com if you need additional information or
+." have any questions.
+."
+.TH idlj 1 "04 May 2009"
+." Generated from HTML by html2man (author: Eric Armstrong)
 
 .LP
-.BR My.idl
-という名前の IDL ファイルに対して Java バインディングを生成
-するには、次のように指定します。
+.SH ""
+idlj \- IDL\-to\-Java 潟潟ゃ
 .LP
-.RS
-.ft 3
+.RS 3
+
+.LP
+\f3idlj\fP 絎 IDL <ゃ Java ゃ潟c潟違障
+.RE
+.SH "綵√"
+.LP
+
+.LP
 .nf
-idlj My.idl
+\f3
+.fl
+idlj [ \fP\f3options\fP\f3 ] \fP\f4idl\-file\fP\f3
+.fl
+\fP
 .fi
-.ft 1
-.RE
+
 .LP
-クライアント側のバインディングを生成する上記のコマンドは、
-次のようにも指定できます。
 .LP
-.RS
-.ft 3
-.nf
-idlj -fclient My.idl
+\f2idl\-file\fP ゃ潟帥с若劫臂荐茯 (IDL) 絎臂ャc<ゃс\f2options\fP 篁紙с\f2idl\-file\fP 絎違障
+.LP
+.SH "茯"
+.LP
+
+.LP
+IDL\-to\-Java 潟潟ゃ絎 IDL <ゃゃ Java ゃ潟c潟違障 ゃ潟c潟違荅括完
+.na
+\f2OMG IDL to Java Language Mapping Specification\fP @
 .fi
-.ft 1
-.RE
+http://java.sun.com/javase/6/docs/technotes/guides/idl/mapping/jidlMapping.html сIDL\-to\-Java 潟潟ゃ篁ュ若鴻筝\f2idltojava\fP c障 
+.SS 
+ゃ≪潟ゃ潟c潟違潟泣若若ゃ潟c潟違肴
 .LP
-クライアント側のバインディングには、サーバ側のスケルトンは
-取り込まれていません。インタフェースに対してサーバ側のバインディング
-を生成するには、次のように指定します。
+.RS 3
+
 .LP
-.RS
-.ft 3
-.nf
-idlj -fserver My.idl
+My.idl  IDL <ゃ絲障 Java ゃ潟c潟違罨<潟潟絎茵障 \f2idlj My.idl\fP
+.LP
+ゃ≪潟眼ゃ潟c潟違障 潟潟罨<潟潟膈箴<с \f2idlj \fP\f4\-fclient\fP\f2 My.idl\fP
+.LP
+ゃ≪潟眼ゃ潟c潟違泣若弱眼鴻宴潟腟粋昭障障ゃ潟帥с若鴻絲障泣若弱眼ゃ潟c潟違罨<潟潟絎茵障 \f2idlj \fP\f4\-fserver\fP\f2 My.idl\fP
+.LP
+泣若弱眼ゃ潟c潟違ゃ≪潟眼ゃ潟c潟違鴻宴潟腟粋昭障障 鴻 \f2POA\fP (膓帥≪) 鴻сゃ≪潟眼泣若弱眼筝≧鴻ゃ潟c潟違翫罨<潟潟 (膈箴) < 1 ゃ篏睡障 \f2idlj \fP\f4\-fclient \-fserver\fP\f2 My.idl\fP
+.br
+\f2idlj \fP\f4\-fall\fP\f2 My.idl\fP
+.LP
+.LP
+泣若弱眼≪2 ゃ≪純с膓帥≪Tie 紮茘蚊≪с
+.LP
+.LP
+泣若弱眼≪腱紙純泣若潟膓帥≪с\f2My.idl\fP  \f2My\fP ゃ潟帥с若鴻絎臂翫\f2MyPOA.java\fP <ゃ障\f2My\fP 絲障絎茖箴絎茖 \f2_MyPOA\fP 膓帥綽荀障
+.LP
+.LP
+\f2MyPOA.java\fP  
+.na
+\f2org.omg.PortableServer.Servant\fP @
 .fi
-.ft 1
-.RE
+http://java.sun.com/javase/6/docs/api/org/omg/PortableServer/Servant.html ≦宍鴻若若鴻鴻宴潟с鴻宴潟絎茖 IDL ゃ潟帥с若鴻∫d \f2InvokeHandler\fP ゃ潟帥с若鴻若激с潟ゃ潟帥с若鴻絎茖障
 .LP
-サーバ側のバインディングには、クライアント側のバインディングのほか
-にスケルトンが取り込まれています。これらはすべて、POA (継承モデル) 
-クラスです。クライアント側とサーバ側の両方のバインディングを生成する
-には、以下の等価コマンドのどちらか一方を使用してください。
-.LP
-.RS
-.ft 3
-.nf
-idlj -fclient -fserver My.idl
-.br
-idlj -fall My.idl
-.fi
-.ft 1
-.RE
-.LP
-サーバ側モデルとしては、継承モデルと Tie 委譲モデルの 2 種類を
-利用できます。
-.LP
-デフォルトのサーバ側モデルは、ポータブルサーバント継承モデルです。
-.BR My.idl
-でインタフェース My が定義されていると、ファイル 
-.BR MyPOA.java が生成されます。ユーザは、
-.BR My に対してその実装を提供する必要があります。この実装は、
-.BR MyPOA から継承しなければなりません。
-.LP
-.BR MyPOA.java は、
-.na
-\f2org.omg.PortableServer.Servant\fP 
-.fi
-(http://java.sun.com/javase/6/docs/api/org/omg/PortableServer/Servant.html) 
-を拡張するストリームベースのスケルトンであり、このスケルトンが実装する 
-IDL インタフェースに関連した
-.BR InvokeHandler
-インタフェースとオペレーションインタフェースを実装します。
 .LP
 .na
-\f2Portable Object Adapter (POA)\fP
+\f2Portable Object Adapter (POA)\fP @
 .fi
-(http://java.sun.com/javase/6/docs/technotes/guides/idl/POA.html) の
-.BR PortableServer 
-モジュールは、ネイティブ Servant 型を定義します。Java プログラミング言語では、
-.BR Servant
-型は、Java 
-.BR org.omg.PortableServer.Servant
-クラスにマップされます。
-これはすべての
-.BR POA
-サーバント実装の基底クラスとして機能し、アプリケーション開発者が呼び出せる
-多数のメソッドを提供します。また、POA 自体が呼び出したり、サーバント動作を
-制御するためにユーザが上書きしたりできるメソッドも提供します。
+http://java.sun.com/javase/6/docs/technotes/guides/idl/POA.html  \f2PortableServer\fP ≪吾ャ若ゃc \f2Servant\fP 絎臂障Java 違潟域茯с\f2Servant\fP Java  \f2org.omg.PortableServer.Servant\fP 鴻潟違障 POA 泣若潟絎茖阪鴻紊違<純箴障 <純≪宴若激с潟違若喝冴сPOA 荳若喝冴翫c泣若潟篏九勝若吟若若若ゃ障
 .LP
-継承モデルには、J2SE 1.4 より前のバージョンの Java プログラミング言語
-と互換性のあるサーバ側バインディングを生成するために
-.BR -oldImplBase
-フラグを使用するというオプションもあります。
-\f2\-oldImplBase\fP フラグの使用は非標準であることに注意してください。これらの API はまもなく非推奨となります。このフラグを使用するのは、J2SE 1.3 で記述された既存のサーバとの互換性を確保する必要がある場合だけにしてください。その場合、既存の MAKEFILE を変更し、\f2\-oldImplBase\fP フラグを \f2idlj\fP コンパイラに追加する必要があります。そうしないと、POA ベースのサーバ側マッピングが生成されてしまいます。
-下位互換を維持したサーバ側
-バインディングを生成するには、次のように指定します。
 .LP
-.RS
-.ft 3
-.nf
-idlj -fclient -fserver -oldImplBase My.idl
+膓帥≪ 1 ゃ激с潟\f2\-oldImplBase\fP 違篏睡J2SE 1.4 若吾с潟 Java 違潟域茯篋с泣若弱眼ゃ潟c潟違с\f2\-oldImplBase\fP 違篏睡罔羣羈с障 API ィ絅障違篏睡J2SE 1.3 ц菴違√泣若若篋с篆ゅ翫с翫√ MAKEFILE 紊眼 \f2idlj\fP 潟潟ゃ \f2\-oldImplBase\fP 違菴遵綽荀障 違菴遵翫POA 若鴻泣若弱眼潟違障筝篏篋с泣若弱眼ゃ潟c潟違罨<潟潟篏睡障
+.LP
+\f2idlj \fP\f4\-fclient \-fserver\fP\f2 \fP\f4\-oldImplBase\fP\f2 My.idl\fP
 .br
-idlj -fall -oldImplBase My.idl
-.fi
-.ft 1
-.RE
+\f2idlj \fP\f4\-fall\fP\f2 \fP\f4\-oldImplBase\fP\f2 My.idl\fP
 .LP
-.BR My.idl
-内でインタフェース My が定義されていると、ファイル 
-.I _MyImpleBase.java
-が生成されます。ユーザは、
-.BR My
-に対してその実装を提供する必要があります。この実証は、
-.I _MyImplBase
- から継承しなければなりません。
+\f2My.idl\fP  \f2My\fP ゃ潟帥с若鴻絎臂翫\f2_MyImplBase.java\fP <ゃ障\f2My\fP 絲障絎茖箴絎茖 \f2_MyImplBase\fP 膓帥違障  
 .LP
-もう一方のサーバ側モデルは、Tie モデルと呼ばれます。これは、
-委譲モデルです。Tie モデルは Tie とスケルトンを同時には生成
-できないため、これらは別々に生成する必要があります。次のコ
-マンドは、Tie モデルに対してバインディングを生成します。
+ 1 ゃ泣若弱眼≪Tie ≪若違с泣若弱眼≪紮茘蚊≪сTie 鴻宴潟сャ違障罨<潟潟cTie ≪ゃ潟c潟違障
 .LP
-.RS
-.ft 3
-.nf
-idlj -fall My.idl
+\f2idlj \fP\f4\-fall\fP\f2 My.idl\fP
 .br
-idlj -fallTIE My.idl
-.fi
-.ft 1
-.RE
+\f2idlj \fP\f4\-fallTIE\fP\f2 My.idl\fP
 .LP
-インタフェース 
-.BR My
-の場合、2 つめのコマンドは 
-.BR MyPOATie.java
- を生成します。
-.BR MyPOATie
-のコンストラクタは、delegate を受け取ります。
-この例ではデフォルトの POA モデルを使用しているので、コンストラクタは \f2poa\fP も必要とします。
-ユーザは、delegate 
-に対して実装を提供する必要があります。ただし、インタフェース 
-.BR MyOperations
-を継承すればよく、ほかのクラスから継承する必要はありません。
-しかし、この実装を ORB と共に使用するには、
-.BR MyPOATie 
-内に実装をラップする必要があります。例を示します。
+\f2My\fP ゃ潟帥с若鴻翫筝荐 2 潟潟\f2MyPOATie.java\fP 障\f2MyPOATie\fP 潟潟鴻帥\f2delegate\fP 障箴с POA ≪篏睡潟潟鴻帥 \f2poa\fP 綽荀с\f2delegate\fP 絲障絎茖箴違障絎茖 \f2MyOperations\fP ゃ潟帥с若鴻膓帥綽荀с篁鴻膓帥綽荀障絎茖 ORB 筝膩篏睡\f2MyPOATie\fP у茖違障違罨<障  
 .nf
 \f3
 .fl
@@ -205,7 +114,7 @@
 .fl
 
 .fl
-    // rootpoa への参照を取得し、POAManager を有効にします
+    // Get reference to rootpoa & activate the POAManager
 .fl
     POA rootpoa = (POA)orb.resolve_initial_references("RootPOA");
 .fl
@@ -213,7 +122,7 @@
 .fl
 
 .fl
-    // サーバントを作成し、それを ORB に登録します
+    // create servant and register it with the ORB
 .fl
     MyServant myDelegate = new MyServant();
 .fl
@@ -221,13 +130,13 @@
 .fl
 
 .fl
-    // Tie を作成します。サーバントが delegate になります。
+    // create a tie, with servant being the delegate.
 .fl
     MyPOATie tie = new MyPOATie(myDelegate, rootpoa);
 .fl
 
 .fl
-    // Tie の objectRef を取得します
+    // obtain the objectRef for the tie
 .fl
     My ref = tie._this(orb);
 .fl
@@ -235,45 +144,16 @@
 .fi
 
 .LP
-実装をほかの実装から継承しなければならない場合は、標準の継承モデル
-の代わりに Tie モデルを使用することもできます。Java は任意の数の
-インタフェース継承を認めていますが、クラスの継承に使用できる
-スロットは 1 つだけです。継承モデルを使用すると、このスロットが占
-有されます。Tie モデルを使用すると、スロットをユーザ自身の使用の
-ために解放できます。ただし、一定レベルの間接参照を引き起こすと
-いう欠点があります。つまり、メソッドを呼び出すと、余分なメソッド呼
-び出しが 1 つ発生します。
+篁絎茖膓帥違翫罔羣膓帥≪с Tie ≪篏睡障Java 翫ゃ潟帥с若鴻膓帥違狗障鴻膓帥篏睡с鴻 1 ゃс膓帥≪篏睡翫鴻障Tie ≪篏睡翫鴻篏睡若吟若т戎с障・с 1 ゅャ罨鴻障ゃ障<純若喝冴篏<純若喝冴榊障 
 .LP
-1.4 よりも前の J2SE バージョンで IDL-to-Java 言語
-マッピングのバージョンと互換性があるサーバ側の Tie モデルバインディングを生成
-するには、次のように指定します。
+IDL 若吾с潟 J2SE 1.4 若吾с潟 Java 荐茯吾潟違篋с泣若弱眼 Tie ≪ゃ潟c潟違罨<潟潟篏睡障
 .LP
-.RS
-.ft 3
-.nf
-idlj -oldImplBase -fall My.idl
+\f2idlj \fP\f4\-oldImplBase\fP\f2 \fP\f4\-fall\fP\f2 My.idl\fP
 .br
-idlj -oldImplBase -fallTIE My.idl
-.fi
-.ft 1
-.RE
+\f2idlj \fP\f4\-oldImplBase\fP\f2 \fP\f4\-fallTIE\fP\f2 My.idl\fP
 .LP
-インタフェース
-.BR My
-の場合、このコマンドは
-.I My_Tie.java
-を生成します。
-.I My_Tie
-のコンストラクタは、
-.BR impl
-を受け取ります。ユーザは、
-.BR impl
-に対して実装を提供する必要があります。ただし、インタフェース 
-.BR HelloOperations
-を継承すればよく、ほかのクラスから継承する必要はありません。
-しかし、この実装を ORB と共に使用するには、
-.BR My_Tie
- 内に実装をラップする必要があります。例を示します。
+.LP
+\f2My\fP ゃ潟帥с若鴻翫 \f2My_Tie.java\fP 障\f2My_Tie\fP 潟潟鴻帥\f2impl\fP 障\f2impl\fP 絲障絎茖箴違障絎茖 \f2HelloOperations\fP ゃ潟帥с若鴻膓帥綽荀с篁鴻膓帥綽荀障絎茖 ORB 筝膩篏睡\f2My_Tie\fP у茖違障違罨<障
 .LP
 .nf
 \f3
@@ -282,7 +162,7 @@
 .fl
 
 .fl
-    // サーバントを作成し、それを ORB に登録します
+    // create servant and register it with the ORB
 .fl
     MyServant myDelegate = new MyServant();
 .fl
@@ -290,13 +170,13 @@
 .fl
 
 .fl
-    // Tie を作成します。サーバントが delegate になります。
+    // create a tie, with servant being the delegate.
 .fl
     MyPOATie tie = new MyPOATie(myDelegate);
 .fl
 
 .fl
-    // Tie の objectRef を取得します
+    // obtain the objectRef for the tie
 .fl
     My ref = tie._this(orb);
 .fl
@@ -304,451 +184,235 @@
 .fi
 
 .LP
-.SH "発行されたファイルの代替場所の指定"
-.br
-発行されたファイルを現在のディレクトリ以外のディレクトリに保存したい場合は、
-次のようにコンパイラを呼び出してください。
+.RE
+.SS 
+肴<ゃ篁f推臀絎
 .LP
-.RS
-.ft 3
-.nf
-idlj -td /altdir My.idl
-.fi
-.ft 1
-.RE
-.LP
-インタフェース 
-.BR My
-の場合、バインディングは
-.BR ./My.java
- ではなく 
-.BR /altdir/My.java
-などに対して発行されます。
-.SH "インクルードファイルの代替場所の指定"
-.BR My.idl
-にほかの idl ファイル、
-.BR MyOther.idl 
-が取り込まれている場合、コンパイラは 
-.BR MyOther.idl 
-がローカルディレクトリに存在すると見なします。たとえば、
-.BR MyOther.idl 
-が 
-.BR /includes
-に存在する場合は、次のコマンドでコンパイラを呼び出します。
-.LP
-.RS
-.ft 3
-.nf
-idlj -i /includes My.idl
-.fi
-.ft 1 
-.RE
-.LP
-.BR たとえば、My.idl が
-.BR /moreIncludes
-に存在する
-.BR Another.idl 
-も取り込んでいる場合は、次のコマンドでコンパイラを呼び出します。
-.LP
-.RS
-.ft 3
-.nf
-idlj -i /includes -i /moreIncludes My.idl
-.fi
-.ft 1 
-.RE
-.LP
-この形式でファイルを取り込むと、コマンドが非常に長くなることがあります。
-このため、インクルードファイルの検索場所をコンパイラに知らせる方法が
-別に用意されています。この方法は、環境変数の概念に似ています。まず、
-CLASSPATH にリストされているディレクトリ内に、
-.BR idl.config
-という名前のファイルを作成します。そして、
-.BR idl.config
-内に次の形式の行を 1 つ作成します。
-.LP
-.RS
-.ft 3
-.nf
-includes=/includes;/moreIncludes
-.fi
-.ft 1 
-.RE
-.LP
-コンパイラはこのファイルを見つけ、インクルードリストに読み込みます。
-この例では 2 つのディレクトリ間の区切り文字はセミコロン (;) であること
-に注意してください。
-この区切り文字はプラットフォームによって異なります。Windows プラットフォームではセミコロンを使用し、UNIX プラットフォームではコロンを使用する、などのようになります。
-インクルードの詳
-細は、
-.na
-\f2CLASSPATH\ のドキュメント (Solaris: 
-.fi
-http://java.sun.com/javase/6/docs/technotes/tools/solaris/classpath.html) 
-(Windows: 
-.fi
-http://java.sun.com/javase/6/docs/technotes/tools/windows/classpath.html) 
-を参照してください。
-.SH "インクルードファイルに対するバインディングの発行"
-デフォルトでは、コマンド行 idl ファイルに定義されているインタフェース、
-構造体などに対してのみ、Java バインディングが生成されます。インクルード
-ファイルに定義されているタイプの Java バインディングは生成されません。
-例として、次の 2 つの idl ファイルを考えてみましょう。
-.TP
-.B My.idl
-.LP
-.RS
-#include <MyOther.idl> 
-.br
-interface My 
-.br
-{ 
-.br
-}; 
-.RE
-.TP
-.B MyOther.idl
-.LP
-.RS
-interface MyOther 
-.br
-{ 
-.br
-};
-.RE
-.LP
-次のコマンドは、
-.BR My
-に対する Java バインディングしか生成しません。
-.LP
-.RS
-.ft 3
-.nf
-idlj My.idl
-.fi
-.ft 1
-.RE
-.LP
-.BR My.idl
-内に定義されているすべてのタイプ、および 
-.BR My.idl
-に取り込まれているファイル (この例では 
-.BR MyOther.idl
-) 内に定義されているすべてのタイプを生成するには、
-次のコマンドを使用してください。
-.LP
-.RS
-.ft 3
-.nf
-idlj -emitAll My.idl 
-.fi
-.ft 1
-.RE
-.LP
-このデフォルトの規則については、次の点に注意する必要があります。
-グローバルスコープに出現する 
-.BR #include
-文は、記述どおりに処理されます。これらの 
-.BR #include
-文は、インポート文と見なすことができます。一部の囲みスコープ内に
-出現する #include 文は、通常の 
-.BR #include
-文として扱われます。つまり、インクルードファイル内のコードは
-オリジナルファイル内に出現しているかのように扱われ、これに
-対して Java バインディングが発行されます。例を示します。
-.TP
-.B My.idl
-.LP
-.RS
-#include <MyOther.idl> 
-.br
-interface My 
-.br
-{ 
-.br
-  #include <Embedded.idl> 
-.br
-}; 
-.RE
-.TP
-.B MyOther.idl
-.LP
-.RS
-interface MyOther 
-.br
-{ 
-.br
-}; 
-.RE
-.TP
-.B Embedded.idl
-.LP
-.RS
-enum E {one, two, three};
-.RE
-.LP
-次のコマンドを実行すると、
-.LP
-.RS
-.ft 3
-.nf
-idlj My.idl
-.fi
-.ft 1
-.RE
-.LP
-以下の Java ファイルのリストが生成されます。
-.LP
-.B ./MyHolder.java\fP
-.br
-.B ./MyHelper.java\fP
-.br
-.B ./_MyStub.java\fP
-.br
-.B ./MyPackage\fP
-.br
-.B ./MyPackage/EHolder.java\fP
-.br
-.B ./MyPackage/EHelper.java\fP
-.br
-.B ./MyPackage/E.java\fP
-.br
-.B ./My.java\fP
-.LP
-.BR MyOther.java
-は生成されないことに注意してください。これは、インポートに類似した
-.BR #include
-で定義されているためです。しかし、通常の
-.BR #include
-に定義された 
-.BR E.java
-は生成されます。
-.BR Embedded.idl
-はインタフェース My のスコープ内に取り込まれているため、
-.BR My
-のスコープ内 (つまり 
-.BR MyPackage
-) に生成されます。
-.LP
-上記の例で 
-.BI -emitAll
-フラグが使用されていた場合は、すべてのインクルードファイル内に
-定義されているすべてのタイプが発行されます。
-.SH "パッケージ接頭辞の挿入"
-あなたが次の IDL ファイルを作成した ABC という名の企業に勤務していると
-仮定してください。
-.TP
-.B Widgets. idl
-module Widgets 
-.br
-{ 
-.br
-  interface W1 {...}; 
-.br
-  interface W2 {...}; 
-.br
-}; 
-.LP
-このファイルに対して IDL-to-Java コンパイラを実行すると、パッケージ
-Widgets 内の W1 と W2 に対して Java バインディングが生成されます。
-しかし、業界規約では、企業のパッケージは 
-.BR com.<company name>
-という名前のパッケージ内に配置しなければならないと規定されています。
-そのため、この 
-.BR Widgets
-パッケージのままでは不十分です。規定に従うには、
-.BR com.abc.Widgets
-でなければなりません。
-.BR Widgets
-モジュールにこのパッケージ接頭辞を配置するには、次のコマンドを
-実行してください。
-.LP
-.RS
-.ft 3
-.nf
-idlj -pkgPrefix Widgets com.abc Widgets.idl
-.fi
-.ft 1
-.RE
-.LP
-.BR Widgets.idl 
-を取り込んでいる IDL ファイルが存在する場合は、そのコマンド内にも 
-.BI \-pkgPrefix 
-フラグを指定する必要があります。このフラグを指定しないと、IDL ファイルは
-.BR com.abc.Widgets
-パッケージではなく 
-.BR Widgets
-パッケージを検索します。
-.LP
-接頭辞を必要とするこれらのパッケージが多数存在する場合は、前述した 
-.BR idl.config
-ファイルに配置する方が簡単でしょう。各パッケージ接頭辞行は、次の書式で記述します。
-.LP
-.RS
-.ft 3
-.nf
-PkgPrefix.<type>=<prefix>
-.fi
-.ft 1
-.RE
-.LP
-この書式に従うと、上記例の行は次のようになります。
-.LP
-.RS
-.ft 3
-.nf
-PkgPrefix.Widgets=com.abc
-.fi
-.ft 1
-.RE
-.LP
-このオプションを使用しても、リポジトリ ID には影響を与えません。
-.SH "コンパイル前のシンボルの定義"
-バインディング内にデバッグコードを取り込む場合などに IDL ファイル内
-にコンパイル用のシンボルが定義されていないときは、それらのシンボル
-を定義する必要があることがあります。次のコマンド
-.LP
-.RS
-.ft 3
-.nf
-idlj -d MYDEF My.idl
-.fi
-.ft 1
-.RE
-.LP
-は、My.idl 内に 
-.BR #define
-.BR MYDEF
-という行を含めるのと同じです。
-.SH "既存のバインディングの保持"
-Java バインディングファイルが既に存在する場合は、
-.BI \-keep 
-フラグを使用してコンパイラによる上書きを防止できます。デフォルトでは、
-既に存在するかどうかにかかわらずすべてのファイルが生成されます。
-ファイルをカスタマイズ (カスタマイズはその内容がよほど適切でない限り推奨
-されません) してある場合は、
-.BI \-keep 
-オプションが非常に役立ちます。次のコマンド
-.LP
-.RS
-.ft 3
-.nf
-idlj -keep My.idl
-.fi
-.ft 1
-.RE
-.LP
-は、まだ存在していないすべてのクライアント側バインディングを発行します。
-.SH "コンパイルの進捗の表示"
-IDL-to-Java コンパイラは、その実行段階でステータスメッセージを
-生成します。この生成を詳細 (verbose) モードにするには、
-.BR -v
-オプションを使用してください。
-.LP
-.RS
-.ft 3
-.nf
-idlj -v My.idl
-.fi
-.ft 1
-.RE
-.LP
-デフォルトでは、コンパイラは詳細モードで動作しません。
-.SH "バージョン情報の表示"
-IDL-to-Java コンパイラのビルドバージョンを表示するには、コマンド行で
-.BI \-version
-オプションを指定してください。
-.LP
-.RS
-.ft 3
-.nf
-idlj -version 
-.fi
-.ft 1
-.RE
-.LP
-コンパイラが生成したバインディング内に、バージョン情報も表示されます。
-コマンド行に指定されるその他のオプションは無視されます。
-.SH "オプション"
-.TP
-.BI \-d " symbol"
-これは、IDL ファイルに次の行を指定するのと同じです。
-.LP
-.RS
-.ft 3
-.nf
-#define symbol
-.fi
-.ft 1
-.RE
-.TP
-.BI \-emitAll
-.BR #include
-ファイル内に指定されているものも含め、すべてのタイプを発行します。
-.TP
-.BI \-fside
-発行するバインディングを定義します。
-.BI side
-には、
-.BR client
-、
-.BR server
-、
-.BR serverTIE
-、
-.BR all
-、
-.BR allTIE
-のうちいずれか 1 つを指定します。
-.BR -fserverTIE
-と 
-.BR -fallTIE
-オプションを指定すると、委譲モデルスケルトンが発行されます。
-フラグを指定しない場合は、
-.BR -fclient
-と見なされます。
-.TP
-.BI \-i " include-path"
-デフォルトでは、現在のディレクトリでインクルードファイルが
-検索されます。このオプションを使用すると、ほかのディレクトリを
-追加できます。 
-.TP
-.BI \-keep
-生成されるファイルが既に存在する場合、既存ファイルを上書きしません。
-デフォルトでは、既存ファイルが上書きされます。
-.TP
-.BI \-noWarn
-警告メッセージを表示しないようにします。
-.TP
-.BI \-oldImplBase
-1.4 より前の JDK ORB と互換性のあるスケルトンを生成します。
-デフォルトでは、POA 継承モデルのサーバ側バインディングが生成されます。
-このオプションは、
-.BR ImplBase
-継承モデルクラスであるサーバ側バインディングを生成することによって、
-旧バージョンの Java プログラミング言語との下位互換性を提供します。
-.TP
-.BI \-pkgPrefix " type prefix"
-ファイルスコープで 
-.BI type 
-が検出された場合、そのタイプに対して生成されるすべてのファイルについて、
-生成される Java パッケージ名に
-.BI prefix 
-という接頭辞を付けます。
-.BI type 
-は、トップレベルモジュールの単純名か、モジュールの外部で定義された 
-IDL タイプの単純名です。
-.TP
-.BI \-pkgTranslate " type package"
-特定の識別子内でモジュール名 \f2type\fP が見つかった場合、生成された Java パッケージ内のすべてのファイルに対して、その識別子内のモジュール名を \f2package\fP で置き換えます。
-.BR pkgPrefix 
-変更が初めに行われることに注意してください。
-.BI type 
-はトップレベルモジュールの単純名か、モジュールの外部で定義された IDL タイプの
-単純名のいずれかであり、パッケージのフルネームと正確に一致する必要があります。
+.RS 3
 
 .LP
-特定の識別子に一致する変換が 2 つ以上見つかった場合、もっとも長い一致が選択されます。たとえば、引数を次のように指定したとします。
+肴<ゃ潟c篁ュc臀罨<潟潟с潟潟ゃ若喝冴障 
+.RS 3
+
+.LP
+\f2idlj \fP\f4\-td /altdir\fP\f2 My.idl\fP
+.RE
+\f2My\fP ゃ潟帥с若鴻翫ゃ潟c潟違\f2./My.java\fP с\f2/altdir/My.java\fP 肴障
+.RE
+.SS 
+ゃ潟若<ゃ篁f推臀絎
+.LP
+.RS 3
+
+.LP
+\f2My.idl\fP  1 ゃ IDL <ゃ \f2MyOther.idl\fP ゃ潟若翫潟潟ゃ若c \f2MyOther.idl\fP 喝障<ゃ \f2/includes\fP 翫罨<潟潟с潟潟ゃ若喝冴障 \f2idlj \fP\f4\-i /includes\fP\f2 My.idl\fP
+.LP
+障 \f2My.idl\fP  \f2/moreIncludes\fP  \f2Another.idl\fP ゃ潟若с違罨<潟潟с潟潟ゃ若喝冴障 \f2idlj \fP\f4\-i /includes \-i /moreIncludes\fP\f2 My.idl\fP
+.LP
+綵√сゃ潟若絎潟潟激茲障 сゃ潟若<ゃ罎膣≪贋潟潟ゃ腓冴ャ号障号医紊違鴻篌若障CLASSPATH 鴻c \f2idl.config\fP <ゃ篏障 \f2idl.config\fP 筝罨<綵√茵ャ障  \f2includes=/includes;/moreIncludes\fP
+.LP
+潟潟ゃ<ゃ罎膣≪ゃ潟若鴻茯粋昭帥障箴сc阪絖祉潟 (;) c障阪絖若c違障違Windows 若с祉潟潟сUnix 若с潟潟с \f2ゃ潟若\fP荅括完ゃ
+.na
+\f2CLASSPATH 荐絎\fP @
+.fi
+http://java.sun.com/javase/6/docs/technotes/tools/index.html#general с
+.RE
+.SS 
+ゃ潟若<ゃ絲障ゃ潟c潟違肴
+.LP
+.RS 3
+
+.LP
+с潟潟茵絎 IDL <ゃу臂ゃ潟帥с若鴻罕篏ゃ帥Java ゃ潟c潟違障ゃ潟若<ゃу臂ゃJava ゃ潟c潟違障違罨< 2 ゃ IDL <ゃゃ帥障   \f4My.idl\fP
+.LP
+\f2#include <MyOther.idl>\fP
+.br
+\f2interface My\fP
+.br
+\f2{\fP
+.br
+\f2};\fP
+.br
+\f4MyOther.idl\fP 
+.LP
+\f2interface MyOther\fP
+.br
+\f2{\fP
+.br
+\f2};\fP\  
+.LP
+罨<潟潟с\f2My\fP 絲障 Java ゃ潟c潟違障 \f2idlj My.idl\fP
+.LP
+\f2My.idl\fP у臂\f2My.idl\fP ゃ潟若<ゃ (箴с \f2MyOther.idl\fP) у臂鴻ゃ Java ゃ潟c潟違罨<潟潟篏睡障 \f2idlj \fP\f4\-emitAll\fP\f2 My.idl\fP
+.LP
+荀≪羈違障違若鴻潟若絎 \f2#include\fP 菴違障 \f2#include\fP ゃ潟若荀с障絲障篁絎臂蚊障鴻潟若絎 \f2#include\fP 綵潟с \f2#include\fP 障 ゃ障ゃ潟若<ゃ潟若<ゃ障丈絎絲障 Java ゃ潟c潟違肴障罨<箴腓冴障   \f4My.idl\fP
+.LP
+\f2#include <MyOther.idl>\fP
+.br
+\f2interface My\fP
+.br
+\f2{\fP
+.br
+\f2\  #include <Embedded.idl>\fP
+.br
+\f2};\ \fP  \f4MyOther.idl\fP
+.LP
+\f2interface MyOther\fP
+.br
+\f2{\fP
+.br
+\f2};\ \fP  \f4Embedded.idl\fP
+.LP
+\f2enum E {one, two, three};\fP\  
+.LP
+罨<潟潟絎茵 \f2idlj My.idl\fP
+.LP
+罨<筝c Java <ゃ障 \f2./MyHolder.java\fP
+.br
+\f2./MyHelper.java\fP
+.br
+\f2./_MyStub.java\fP
+.br
+\f2./MyPackage\fP
+.br
+\f2./MyPackage/EHolder.java\fP
+.br
+\f2./MyPackage/EHelper.java\fP
+.br
+\f2./MyPackage/E.java\fP
+.br
+\f2./My.java\fP
+.LP
+ゃ潟若荀 \f2#include\fP 絎臂\f2MyOther.java\fP 障綵潟с \f2#include\fP у臂\f2E.java\fP 障\f2Embedded.idl\fP  \f2My\fP ゃ潟帥с若鴻鴻潟若ゃ潟若\f2My\fP 鴻潟若 (ゃ障\f2MyPackage\fP ) 障 
+.LP
+筝荐箴 \f2\-emitAll\fP 違篏睡違ゃ潟若鴻<ゃ鴻肴障
+.LP
+.RE
+.SS 
+宴若吾・莨水
+.LP
+.RS 3
+
+.LP
+ABC 篌腓障篏罐罨< IDL <ゃ罕膀障   
+.br
+\f4Widgets.idl\fP 
+.LP
+\f2module Widgets\fP
+.br
+\f2{\fP
+.br
+\f2\  interface W1 {...};\fP
+.br
+\f2\  interface W2 {...};\fP
+.br
+\f2};\fP\  
+.LP
+<ゃ絲障 IDL\-to\-Java 潟潟ゃ絎茵\f2W1\fP  \f2W2\fP 絲障 Java ゃ潟c潟違 \f2Widgets\fP 宴若後障罐d篌腓障宴若吾\f2com.<篌腓上>\fP 宴若後臀c障\f2Widgets\fP 宴若吾с筝сd緇宴若吾 \f2com.abc.Widgets\fP 綽荀障宴若御・莨 \f2Widgets\fP ≪吾ャ若篁罨<潟潟絎茵障 \f2idlj \fP\f4\-pkgPrefix Widgets com.abc\fP\f2 Widgets.idl\fP
+.LP
+\f2Widgets.idl\fP ゃ潟若 IDL <ゃ翫潟潟 \f2\-pkgPrefix\fP 違綽荀с違絎 IDL <ゃ\f2com.abc.Widgets\fP 宴若吾с\f2Widgets\fP 宴若吾罎膣≪障 
+.LP
+・莨綽荀宴若吾ゃ翫菴違 \f2idl.config\fP <ゃф・莨絎膂≦с宴若吾・莨絎茵罨<綵√ц菴違障
+.LP
+\f2PkgPrefix.<type>=<prefix>\fP
+.LP
+c筝荐箴翫罨<荐菴違障  \f2PkgPrefix.Widgets=com.abc\fP
+.LP
+.LP
+激с潟篏睡吾 ID 綵演帥障
+.LP
+.RE
+.SS 
+潟潟ゃ激潟絎臂
+.LP
+.RS 3
+
+.LP
+潟潟ゃ激潟 IDL <ゃу臂翫激潟絎臂綽荀障 違ゃ潟c潟医違潟若腟水ャ篏睡障罨<潟潟 \f2idlj \fP\f4\-d\fP\f2 MYDEF My.idl\fP
+.LP
+\f2My.idl\fP  \f2#define MYDEF\fP 茵絎翫膈箴<с
+.RE
+.SS 
+√ゃ潟c潟違篆
+.LP
+.RS 3
+
+.LP
+Java ゃ潟c潟違<ゃс絖翫\f2\-keep\fP 違絎潟潟ゃ筝吾帥с障сс絖鴻<ゃ障<ゃ鴻帥ゃ冴翫 (絎鴻罩g∈с篁ュ鴻帥ゃ冴帥)\f2\-keep\fP 激с潟с罨<潟潟 \f2idlj \fP\f4\-keep\fP\f2 My.idl\fP
+.LP
+ゃ≪潟眼ゃ潟c潟違с障絖鴻肴障
+.RE
+.SS 
+潟潟ゃ我倶茵腓
+.LP
+.RS 3
+
+.LP
+IDL\-to\-Java 潟潟ゃ絎茵罧級х倶<祉若吾障激≪若 (<祉若吾紊≪若) \f2\-v\fP 激с潟篏睡障 \f2idlj \fP\f4\-v\fP\f2 My.idl\fP
+.LP
+с潟潟ゃ激≪若с絎茵障
+.RE
+.SS 
+若吾с恰宴茵腓
+.LP
+.RS 3
+
+.LP
+.LP
+IDL\-to\-Java 潟潟ゃ若吾с潟茵腓冴潟潟茵 \f2\-version\fP 激с潟絎障
+.LP
+.LP
+\f2idlj \-version\fP
+.LP
+.LP
+若吾с恰宴潟潟ゃcゃ潟c潟医吾莨若障障激с潟潟潟茵絎篁ュ激с潟絎鴻∴障
+.LP
+.RE
+.SH "激с"
+.LP
+
+.LP
+.RS 3
+.TP 3
+\-d symbol 
+激с潟IDL <ゃ罨<茵菴遵翫膈箴<с 
+.RS 3
+
+.LP
+.nf
+\f3
+.fl
+#define \fP\f4symbol\fP\f3
+.fl
+\fP
+.fi
+.RE
+.TP 3
+\-emitAll 
+\f2#include\fP <ゃу臂鴻肴障 
+.TP 3
+\-fside 
+肴ゃ潟c潟違絎臂障 \f2side\fP \f2client\fP\f2server\fP\f2serverTIE\fP\f2all\fP\f2allTIE\fP <с\f2\-fserverTIE\fP 障 \f2\-fallTIE\fP 激с潟絎紮茘蚊≪鴻宴潟肴障違絎c翫\f2\-fclient\fP 絎荀障 
+.TP 3
+\-i include\-path 
+сゃ潟若<ゃ潟c罎膣≪障激с潟絎祉c菴遵с障 
+.TP 3
+\-keep 
+<ゃс絖翫<ゃ筝吾障с筝吾障 
+.TP 3
+\-noWarn 
+茘<祉若吾茵腓冴障 
+.TP 3
+\-oldImplBase 
+v1.4  JDK ORB 篋с鴻宴潟障сPOA 膓帥≪泣若弱眼ゃ潟c潟違障激с潟絎\f2ImplBase\fP 膓帥≪鴻с泣若弱眼ゃ潟c潟違сゃ若吾с潟 Java 違潟域茯筝篏篋с緇障 
+.TP 3
+\-pkgPrefix type prefix 
+\f2type\fP <ゃ鴻潟若ф冴翫絲障鴻<ゃゃ Java 宴若後 \f2prefix\fP ・莨篁障\f2type\fP ≪吾ャ若膣≪吾ャ若紊眼у臂 IDL 膣<с 
+.TP 3
+\-pkgTranslate type package 
+茘ュ筝≪吾ャ若 \f2type\fP 罎冴 Java 宴若後鴻<ゃゃ茘ュ筝 \f2package\fP х舟障 \f2pkgPrefix\fP 紊眼障\f2type\fP ≪吾ャ若障鴻≪吾ャ若紊у臂 IDL 膣с 絎宴若後罩g∈筝眼違障 
+.LP
+1 ゃ茘ュ筝ц違紊翫c激吾違障違罨<綣違絎翫 
 .nf
 \f3
 .fl
@@ -757,7 +421,7 @@
 \fP
 .fi
 .LP
-このとき、次の変換が実行されます。
+罨<紊絎純障 
 .nf
 \f3
 .fl
@@ -772,102 +436,74 @@
 \fP
 .fi
 .LP
-次のパッケージ名は変換できません。
+罨<宴若後紊с障 
 .RS 3
 .TP 2
-*
+o
 \f2org\fP 
 .TP 2
-*
-\f2org.omg\fP または \f2org.omg\fP のサブパッケージ
+o
+\f2org.omg\fP障 \f2org.omg\fP 泣宴若 
 .RE
 .LP
-これらのパッケージの変換を試みると、コンパイル不可能なコードが生成されます。
-これらのパッケージを 
-.BR \-pkgTranslate
-の後の最初の引数として使用すると、エラーとして扱われます。
+宴若後紊篋с潟若障 \f2\-pkgTranslate\fP 綣違宴若吾篏睡若宴障  
+.TP 3
+\-skeletonName xxx%yyy 
+\f2xxx%yyy\fP 鴻宴潟篁帥若潟篏睡障罨<с 
+.RS 3
+.TP 2
+o
+\f2POA\fP 阪鴻翫%POA(\f2\-fserver\fP 障 \f2\-fall\fP) 
+.TP 2
+o
+\f2oldImplBase\fP 鴻翫_%ImplBase(\f2\-oldImplBase\fP  (\f2\-fserver\fP 障 \f2\-fall\fP)) 
 .RE
-.TP
-.BI \-skeletonName " xxx%yyy"
-.BI xxx%yyy
-をスケルトンの名前付けのパターンとして使用します。デフォルトは次のとおりです。
+.TP 3
+\-td dir 
+阪c潟cс\f2dir\fP 篏睡障 
+.TP 3
+\-tieName xxx%yyy 
+帥若潟緇c Tie 篁障罨<с 
+.RS 3
+.TP 2
+o
+\f2POA\fP Tie 阪鴻翫%POATie(\f2\-fserverTie\fP 障 \f2\-fallTie\fP) 
+.TP 2
+o
+\f2oldImplBase\fP Tie 鴻翫%_Tie(\f2\-oldImplBase\fP  (\f2\-fserverTie\fP 障 \f2\-fallTie\fP)) 
+.RE
+.TP 3
+\-verbose 
+激≪若障 
+.TP 3
+\-version 
+若吾с恰宴茵腓冴腟篋障 
+.RE
+
 .LP
-.RS
-.TP 2
-\(bu POA 基底クラス 
-(
-.BR \-fserver
-または
-.BR \-fall
-) の場合、%POA
-.TP 2
-\(bu 
-.BR \-oldImplBase
-クラス (
-.BR \-oldImplBase
-および、
-.BR \-fserver
-または
-.BR \-fall
-) の場合、_%ImplBase
-.RE
-.TP
-.BI \-td " dir"
-出力ディレクトリとして、現在のディレクトリではなく
-.BI dir
-を使用します。
-.TP
-.BI \-tieName " xxx%yyy"
-パターンに応じて Tie に名前を付けます。デフォルトは次のとおりです。
-.LP
-.RS
-.TP 2
-\(bu POA Tie 基底クラス (
-.BR \-fserverTie
-または 
-.BR \-fallTie
-) の場合、%POATie
-.TP 2
-\(bu 
-.BR oldImplBase Tie
-クラス (
-.BR \-oldImplBase
-および、
-.BR \-fserverTie
-または
-.BR \-fallTie
-のいずれか) の場合、%_Tie
-.RE
-.TP
-.BI \-nowarn, \-verbose
-詳細モードにします。
-.TP
-.BI \-version
-バージョン情報を表示して終了します。
-.LP
-オプションの詳細は、「機能説明」の節を参照してください。
-.SH "制限事項"
-.LP
-.TP 2
-\(bu グローバルスコープ内でエスケープされた識別子は、
-IDL プリミティブ型 (
-.BR Object 
-または 
-.BR ValueBase
-) と同じスペルであってはなりません。これは、シンボルテーブルがこれらの
-識別子を使用してすでにロードされているためです。これらを定義し直すと、
-それらの本来の定義を上書きすることになります (この制限は永続的に
-適用される見込み)。
-.TP 2
-\(bu IDL の fixed 型はサポートされていません。
-.SH "既知の問題"
+激с潟荅括完ゃ茯祉激с潟с 
+.SH "句"
 .LP
 
 .LP
 .RS 3
 .TP 2
-*
-グローバル識別子のインポートは生成されません。エクスポートされていないローカル実装を呼び出すと例外が発生しますが、その原因はおそらく \f2ServerDelegate\fP DSI コード内の \f2NullPointerException\fP です。
+o
+違若鴻潟若鴻宴若茘ュIDL c \f2Object\fP 障 \f2ValueBase\fP 膓眼сc障茘ュゃ激潟若篋若茘ュ絎臂荐怨絎臂筝吾障障箙句с 
+.TP 2
+o
+\f2fixed\fP  IDL 泣若障 
+.RE
+
+.LP
+.SH "∝ャ馹"
+.LP
+
+.LP
+.RS 3
+.TP 2
+o
+違若茘ュゃゃ潟若障篋若 impl 若喝冴箴紊障 \f2ServerDelegate\fP DSI 潟若 \f2NullPointerException\fP с 
 .RE
 
 .LP
--- a/jdk/src/linux/doc/man/ja/jar.1	Tue May 12 15:21:55 2009 +0900
+++ b/jdk/src/linux/doc/man/ja/jar.1	Thu May 14 00:17:25 2009 -0700
@@ -1,234 +1,141 @@
-'\" t
-.\"
-.\" Copyright 2000-2006 Sun Microsystems, Inc.  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
-.\" under the terms of the GNU General Public License version 2 only, as
-.\" published by the Free Software Foundation.
-.\"
-.\" This code is distributed in the hope that it will be useful, but WITHOUT
-.\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-.\" FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-.\" version 2 for more details (a copy is included in the LICENSE file that
-.\" accompanied this code).
-.\"
-.\" You should have received a copy of the GNU General Public License version
-.\" 2 along with this work; if not, write to the Free Software Foundation,
-.\" Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
-.\"
-.\" Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
-.\" CA 95054 USA or visit www.sun.com if you need additional information or
-.\" have any questions.
-.\"
-.\" `
-.TH jar 1 "2006 年 9 月 4 日" "Java SE 6" "ユーザーコマンド"
-.SH "名前"
-jar \- Java アーカイブツール
+." Copyright 2004-2006 Sun Microsystems, Inc.  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
+." under the terms of the GNU General Public License version 2 only, as
+." published by the Free Software Foundation.
+."
+." This code is distributed in the hope that it will be useful, but WITHOUT
+." ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+." FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+." version 2 for more details (a copy is included in the LICENSE file that
+." accompanied this code).
+."
+." You should have received a copy of the GNU General Public License version
+." 2 along with this work; if not, write to the Free Software Foundation,
+." Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+."
+." Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+." CA 95054 USA or visit www.sun.com if you need additional information or
+." have any questions.
+."
+.TH jar 1 "04 May 2009"
+." Generated from HTML by html2man (author: Eric Armstrong)
+
 .LP
-\f3jar\fP は複数のファイルを 1 つの Java Archive (JAR) ファイルに結合します。
-.\" 
-.\"  This document was created by saving an HTML file as text
-.\"  from the JavaSoft web site:
-.\" 
-.\" http://java.sun.com/j2se/1.5/docs/tooldocs/tools.html
-.\" 
-.\"  and adding appropriate troff macros.  Because the JavaSoft web site 
-.\"  man pages can change without notice, it may be helpful to diff
-.\"  files to identify changes other than new functionality. 
-.\" 
-.SH "形式"
+.SH ""
+jar \- Java ARchive 若
+.LP
+\f3jar\fP 茲違<ゃ 1 ゃ JAR ≪若ゃ<ゃ腟障 
+.RS 3
+.TP 2
+o
+綵√ 
+.TP 2
+o
+茯 
+.TP 2
+o
+激с 
+.TP 2
+o
+潟潟茵綣違<ゃ 
+.TP 2
+o
+箴 
+.TP 2
+o
+∫i 
+.RE
+
+.LP
+.SH "綵√"
 .LP
 
 .LP
+.RS 3
 .TP 3
-jar ファイルの作成 
+JAR <ゃ篏 
 \f4jar c\fP\f2[v0Mmfe] [\fP\f2manifest\fP\f2] [\fP\f2jarfile\fP\f2] [\fP\f2entrypoint\fP\f2] [\-C\fP \f2dir\fP\f2]\fP \f2inputfiles\fP \f2[\-J\fP\f2option\fP\f2]\fP 
 .TP 3
-jar ファイルの更新 
+JAR <ゃ贋 
 \f4jar u\fP\f2[v0Mmfe] [\fP\f2manifest\fP\f2] [\fP\f2jarfile\fP\f2] [\fP\f2entrypoint\fP\f2] [\-C\fP \f2dir\fP\f2]\fP \f2inputfiles\fP \f2[\-J\fP\f2option\fP\f2]\fP 
 .TP 3
-jar ファイルの抽出 
+JAR <ゃ遵 
 \f4jar x\fP\f2[vf] [\fP\f2jarfile\fP\f2] [\fP\f2inputfiles\fP\f2] [\-J\fP\f2option\fP\f2]\fP 
 .TP 3
-jar ファイルの内容の一覧を作成
+JAR <ゃ絎鴻茵綵√筝荀ц;腓 
 \f4jar t\fP\f2[vf] [\fP\f2jarfile\fP\f2] [\fP\f2inputfiles\fP\f2] [\-J\fP\f2option\fP\f2]\fP 
 .TP 3
-jar ファイルにインデックスを追加
+JAR <ゃ吾ゃ潟鴻菴遵 
 \f4jar i\fP \f2jarfile\fP \f2[\-J\fP\f2option\fP\f2]\fP 
+.RE
+
 .LP
 .LP
-パラメータ
+茯
 .LP
 .RS 3
 
 .LP
+.RS 3
 .TP 3
 cuxtiv0Mmfe 
-.I jar 
-コマンドを制御するオプション。
+\f2jar\fP 潟潟九勝激с 
 .TP 3
- jarfile 
-作成 (c)、更新 (u)、抽出 (x)、または閲覧される内容の一覧を作成 (t) する
-jar ファイルです。
-.I \-f 
-オプションとファイル名
-.I jarfile 
-は対になっています。
-使用する場合は、両方を一緒に使用します。
-.I f 
-および 
-.I jarfile 
-を省略すると、標準入力から「jar ファイル」が
-使用されたり (x および t の場合)、標準出力にこの「jar ファイル」が
-送信されたりします (c および u の場合)。
+jarfile 
+篏 (\f2c\fP)贋 (\f2u\fP)遵 (\f2x\fP)障絎鴻筝荀ц;腓 (\f2t\fP) 絲乗院 JAR <ゃ\f2f\fP 激с潟<ゃ \f2jarfile\fP ≪障 ゃ障鴻荐菴違違筝鴻荐菴違綽荀障\f2f\fP  \f2jarfile\fP ャ罔羣ュJAR <ゃ緇 (x  t 翫)罔羣阪吾JAR <ゃ篆<障(c  u 翫) 
 .TP 3
-
 inputfiles 
-.I jar ファイル
-に結合 (c および u の場合)、または 
-.I jar ファイル
-から抽出 (x の場合) または一覧表示 (t の場合) されるファイル
-またはディレクトリ。空白文字で区切ります。
-すべてのディレクトリは再帰的に処理されます。
-オプション 0 (ゼロ) が使用されない場合は、ファイルが圧縮されます。
+\f2jarfile\fP 腟 (c  u 翫)\f2jarfile\fP 遵 (x 翫) 障筝荀ц;腓 (t 翫) 腥榊純у阪<ゃ障c鴻c絽亥障<ゃ激с \f2O\fP (若) 篏睡х軒障 
 .TP 3
- manifest 
-jar ファイルの MANIFEST.MF に含めようとする名前:値ペアが含まれている
-既存の manifest ファイルです。
-.I \-m 
-オプションと
-.I manifest 
-のファイル名は対になっています。
-使用する場合は、両方を一緒に使用します。
-文字 
-.B m 
-、 
-.B f 
-、および 
-.B e 
-の出現順序は、
-.I manifest 
-、 
-.I jarfile 
-、および 
-.I entrypoint 
-の出現順序と一致する必要があります。
+manifest 
+\f2name\fP\f2:\fP\f2value\fP ≪JAR <ゃ MANIFEST.MF 障√с鴻<ゃ\f2\-m\fP 激с潟<ゃ \f2manifest\fP ≪障 ゃ障鴻荐菴違違筝鴻荐菴違綽荀障\f3m\fP\f3f\fP \f3e\fP 榊憥綺\f2manifest\fP\f2jarfile\fP\f2entrypoint\fP 榊憥綺筝眼綽荀障 
 .TP 3
-
 entrypoint 
-実行可能 JAR ファイル内にバンドルされたスタンドアロンアプリケーションのアプリケーションエントリポイントとして設定するクラスの名前。
-.I \-e
-オプションと entrypoint は対になっています。どちらかを指定する場合は両方とも指定する必要があります。文字 
-.I m
-、
-.I f
-、
-.I e
-の出現順序は 
-.I manifest
-、
-.I jarfile
-、
-.I entrypoint
-の出現順序と一致する必要があります。 
+絎茵 JAR <ゃ潟鴻帥潟≪潟≪宴若激с潟≪宴若激с潟潟ゃ潟荐絎鴻\f2\-e\fP 激с潟 entrypoint 絲障c障 <絎翫筝≧鴻絎綽荀障\f3m\fP\f3f\fP \f3e\fP 榊憥綺\f2manifest\fP\f2jarfile\fP\f2entrypoint\fP 榊憥綺筝眼綽荀障 
 .TP 3
 \-C\ dir 
-後続の入力ファイル引数の処理中、
-ディレクトリを 
-.I dir 
-に一時的に変更します。
-複数の 
-.I \-C " dir" 
-入力ファイルのセットを使用できます。
+膓 \f2inputfiles\fP 綣違c \f2dir\fP 娯紊眼障\f2\-C\ \fP\f2dir\fP \f2inputfiles\fP 祉茲遺戎с障 
 .TP 3
 \-Joption 
-Java Runtime Environment に渡されるオプション
-(
-.I \-J 
-と
-.I option 
-の間には空白文字を入れないでください)。
-.SH "機能説明"
-.IX "Java archive tool" "" "Java archive tool \(em \fLjar\fP"
-.IX "jar" "" "\fLjar\fP \(em Java archive tool"
-.B jar
-ツールは
-Java 
-アプリケーションの
-1
-つで、複数個のファイルを
-1
-個の
-JAR
-アーカイブファイルに統合します。また、
-jar は汎用的なアーカイブ作成用
-および圧縮用のツールでもあり、圧縮は
-.SM ZIP
-または
-.I ZLIB
+Java 絎茵医御検激с潟\f2\-J\fP  \f2option\fP 腥榊純ャс 
+.RE
+
+.LP
+.RE
+.SH "茯"
+.LP
+
+.LP
+\f3jar\fP 若茲違<ゃ 1 ゃ JAR ≪若ゃ<ゃ腟障 \f3jar\fP ZIP  
+.na
+\f2ZLIB\fP @
 .fi
- (http://www.gzip.org/zlib/) 
-形式で行います。
-ただし
-.B jar
-ツールの主な目的は、いくつかの
-Java
-アプレットやアプリケーションを
-1
-個のアーカイブに統合することです。
-アプレットやアプリケーションのコンポーネント、たとえば
-クラスファイル、イメージ、サウンドなどを単一のアーカイブに
-まとめると、ブラウザのような
-Java
-エージェントにダウンロードするときに、一度の
-HTTP
-トランザクションで済みます。コンポーネントごとに
-新たに接続する必要がありません。
-これによりダウンロード時間が大幅に短縮できます。
-また
-.B jar
-はファイルの圧縮も行うので、ダウンロードがより高速になります。
-さらに、ファイル中の個々のエントリに対してアプレットの作成者が
-署名できるので、作成元を明確化できます。
-.B jar
-ツールの構文は、
-.I tar
-コマンドの構文とほぼ同一です。
-.B jar
-アーカイブは、圧縮されているかどうかにかかわらず、
-クラスパス
+http://www.gzip.org/zlib/ х軒綵√若鴻羆≪若ゃ喝х軒若с \f3jar\fP 若筝祉ゃ Java ≪≪宴若激с潟 1 ≪若ゃ腟怨с≪≪宴若激с潟潟潟若潟 (<ゃゃ<若吾潟泣潟)  1 ゃ≪若ゃ腟Java 若吾с潟 (吟) 潟潟若潟 1  HTTP 潟吟激с潟с潟若с潟潟若潟違・膓綽荀障c潟若違紊у羝障 障\f3jar\fP <ゃх軒с潟若障障<ゃ潟≪篏臀峨吾莨若с絽茯荐若純障jar 若罕\f2tar\fP 潟潟罕祉弱с\f3JAR\fP ≪若ゃх軒鴻鴻潟篏睡с障 
+.LP
+茲違<ゃ JAR <ゃ悟筝篏睡羈罨<с
+.LP
+.RS 3
+
+.LP
+.nf
+\f3
+.fl
+% jar cf myFile.jar *.class
+.fl
+\fP
 .fi
- (http://java.sun.com/javase/6/docs/technotes/tools/solaris/classpath.html) 
-エントリとして使用できます。
+.RE
+
 .LP
-複数のファイルを jar ファイルに統合する標準的な使い方は次のとおりです。
+箴с憜c (.class) <ゃ鴻\f2myFile.jar\fP <ゃ主障jar 若\f2META\-INF/MANIFEST.MF\fP с鴻<ゃ潟障絽吾JAR <ゃ潟障с鴻<ゃ≪若ゃ≪<炊宴絎h若帥 \f2name\ :\ value\fP ≪主障jar 若с鴻<ゃ<炊宴主号荅括完ゃ
+.na
+\f2JAR file specification\fP @
+.fi
+http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html#JAR%20Manifestс 
 .LP
-.RS
-.ft 3
-.nf
-% jar cf myFile.jar *.class
-.fi
-.ft 1
-.RE
-.LP
-この例では、現在のディレクトリ中のすべてのクラスファイルが
-.I myFile.jar
-という名前のファイルに置かれます。
-jar ツールは自動的に、
-.I META\-INF/MANIFEST.MF
-という名前のマニフェストファイルエントリを生成します。これは常に、JAR ファイルの最初のエントリになります。マニフェストファイルは、アーカイブに関するメタ情報を宣言し、そのデータを
-.I name : value
-ペアとして格納します。jar ツールがマニフェストファイル内にメタ情報を格納する方法の詳細については、
-.fi
-http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html#JAR%20Manifest
-の
-.na
-「JAR file specification」を参照してください。 
-.LP
-既存のマニフェストファイル内に格納された 
-.I name : value
-ペアを JAR ファイルに含める必要がある場合には、そのファイルを次のように \f2\-m\fP オプションを使って指定します。
+√с鴻<ゃ主 \f2name\ :\ value\fP ≪ JAR <ゃ綽荀翫<ゃ罨< \f2\-m\fP 激с潟篏帥c絎障
 .LP
 .RS 3
 
@@ -243,295 +150,206 @@
 .RE
 
 .LP
-既存のマニフェストファイルは改行文字で終わっている必要があります。\  マニフェストファイルが改行文字で終わっていない場合、\f3jar\fP はその最後の行を解析しません。
+√с鴻<ゃ壕絖хc綽荀障 с鴻<ゃ壕絖хc翫\f3jar\fP 緇茵茹f障
 .br
 
 .LP
 .br
 
 .LP
-\f3注:\ \fP コマンド行に 
-.I cmf
-ではなく 
-.I cfm
-が指定された jar コマンド (m と \-f オプションの順番を逆にする) の場合、\f3jar\fP コマンド行にまず jar アーカイブの名前を指定し、続いてマニフェストファイルの名前を指定する必要があります。次に例を示します。 
+\f3羈:\ \fP潟潟茵 \f2cmf\fP с \f2cfm\fP 絎 jar 潟潟 (m  \-f 激с潟) 翫\f3jar\fP 潟潟茵障 JAR ≪若ゃ絎膓с鴻<ゃ絎綽荀障 罨<箴腓冴障 
+.RS 3
+
 .LP
-.RS 5
-.B % jar cfm myFile.jar myManifestFile *.class
+.nf
+\f3
+.fl
+% jar cfm myFile.jar myManifestFile *.class
+.fl
+\fP
+.fi
+.RE
+
+.LP
+с鴻RFC822 ASCII 綵√ц鎘鴻綵√сс鴻<ゃ絎鴻膂≦茵腓冴括隈с障 
+.LP
+JAR <ゃ<ゃ遵冴翫\f2x\fP 篏睡障
+.LP
+.RS 3
+
+.LP
+.nf
+\f3
+.fl
+% jar xf myFile.jar
+.fl
+\fP
+.fi
+.RE
+
+.LP
+.LP
+jar <ゃャ<ゃ遵冴翫<ゃ絎障
+.LP
+.RS 3
+
+.LP
+.nf
+\f3
+.fl
+% jar xf myFile.jar foo bar
+.fl
+\fP
+.fi
+.RE
+
+.LP
+.LP
+Java 2 SDK 若吾с 1.3 篁ラ\f2jar\fP 若cc若 
+.na
+\f2JarIndex\fP @
+.fi
+http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html#JARIndex 泣若障 JarIndex 篏睡≪宴若激с潟鴻若若 JAR <ゃ鴻若合筝障≪宴若激с潟障≪茲違 JAR <ゃ潟翫鴻若綽荀 JAR <ゃ篁ュ潟若潟若潟茵障若潟鴻違 \f2\-i\fP 激с潟絎 \f2jar\fP 絎茵鴻障激с潟篏帥絎 JAR <ゃ潟<ゃ<ゃ潟<ゃ箴絖鴻 JAR <ゃゃ宴若娯臀宴障 <ゃ潟<ゃ箴絖 JAR <ゃJAR <ゃ潟<ゃс鴻 \f2Class\-Path\fP 絮с絎鏆荀障
+.LP
+.RS 3
+
+.LP
+.nf
+\f3
+.fl
+% jar i main.jar
+.fl
+\fP
+.fi
+.RE
+
+.LP
+.LP
+箴с\f2INDEX.LIST\fP <ゃ \f2main.jar\fP  \f2META\-INF\fP c水ャ障
+.br
+.br
+<ゃ主宴篏睡≪宴若激с潟鴻若若合鴻若障 ゃ潟鴻<ゃ篏臀宴主号荅括完 \f2JarIndex\fP 篁罕с
+.br
+.br
+c潟若障 \f2dir1\fP <ゃх軒罔羣阪阪膓罔羣ュ \f2dir2\fP 遵冴障 (筝≧鴻 \f2jar\fP 潟潟 \f2\-f\fP 激с潟) 罨<箴腓冴障
+.LP
+.RS 3
+
+.LP
+.nf
+\f3
+.fl
+% (cd dir1; jar c .) | (cd dir2; jar x)
+.fl
+\fP
+.fi
+.RE
+
+.LP
+.LP
+\f2jar\fP 篏帥c JAR <ゃ JAR <ゃс鴻篏潟潟泣潟腆肴箴с障
+.na
+\f2Java Tutorial\fP @
+.fi
+http://java.sun.com/docs/books/tutorial/jar JAR 潟若鴻с
+.LP
+.SH "激с"
+.LP
+
+.LP
+.RS 3
+.TP 3
+c 
+\f2jarfile\fP ф違≪若ゃ<ゃ篏 (\f2f\fP 絎翫)罔羣阪т障 (\f2f\fP  \f2jarfile\fP ャ翫)\f2inputfiles\fP ф絎<ゃc≪若ゃ菴遵障 
+.TP 3
+u 
+\f2inputfiles\fP ф絎<ゃc菴遵√<ゃ \f2jarfile\fP 贋違障 (\f2f\fP 絎翫) 箴腓冴障 
+.RS 3
+
+.LP
+.nf
+\f3
+.fl
+jar uf foo.jar foo.class
+.fl
+\fP
+.fi
+.RE
+筝潟潟<ゃ \f2foo.class\fP √ JAR <ゃ \f2foo.jar\fP 菴遵障罨<箴腓冴\f2\-u\fP 激с潟с鴻潟贋違с障 
+.RS 3
+
+.LP
+.nf
+\f3
+.fl
+jar umf manifest foo.jar
+.fl
+\fP
+.fi
+.RE
+\f2foo.jar\fP с鴻с鴻 \f2name:value\fP ≪ф贋違障 
+.TP 3
+x 
+\f2jarfile\fP  (\f2f\fP 絎翫)障罔羣ュ (\f2f\fP  \f2jarfile\fP ャ翫)<ゃc遵冴障\f2inputfiles\fP 絎翫絎<ゃc遵冴障絎違鴻<ゃc遵冴障遵冴<ゃユ≪若ゃц┃絎с 
+.TP 3
+t 
+\f2jarfile\fP  (\f2f\fP 絎翫)障罔羣ュ (\f2f\fP  \f2jarfile\fP ャ翫)絎鴻茵綵√т荀ц;腓冴障\f2inputfiles\fP 絎翫絎<ゃc筝荀ц;腓冴障絎違鴻<ゃc筝荀ц;腓冴障 
+.TP 3
+i 
+絎 \f2jarfile\fP 箴絖 JAR <ゃゃゃ潟号宴障箴腓冴障 
+.RS 3
+
+.LP
+.nf
+\f3
+.fl
+jar i foo.jar
+.fl
+\fP
+.fi
 .RE
 .LP
-manifest は RFC822 
-.SM ASCII 
-形式に基づいたテキスト形式を使用するため、manifest ファイルの内容は
-簡単に表示および処理できます。
+筝潟潟\f2foo.jar\fP  \f2INDEX.LIST\fP <ゃ障 <ゃ\f2foo.jar\fP \f2foo.jar\fP  \f2Class\-Path\fP 絮с絎鴻 JAR <ゃャc宴若吾篏臀宴吾莨若障障 ゃ潟鴻箴с   
+.TP 3
+f 
+篏 (\f2c\fP)贋 (\f2u\fP)遵 (\f2x\fP)ゃ潟壕申 (\f2i\fP)障茵腓 (\f2t\fP) 絲乗院<ゃ \f2jarfile\fP 絎障\f2f\fP 激с潟<ゃ \f2jarfile\fP ≪障 ゃ障鴻荐菴違違筝鴻荐菴違綽荀障\f2f\fP  \f2jarfile\fP ャ罔羣ュ JAR <ゃ篏睡 (x  t 翫)罔羣阪 jar <ゃ 篆<障 (c  u 翫) 
+.TP 3
+v 
+荅括完阪罔羣阪障т腓冴障 
+.TP 3
+0 
+(若) ZIP х軒篏睡篆絖障 
+.TP 3
+M 
+с鴻<ゃ潟篏障 (c  u 翫) 障с鴻<ゃ潟絖翫ゃ障 (u 翫) 
+.TP 3
+m 
+\f2META\-INF/MANIFEST.MF\fP <ゃф絎с鴻<ゃ \f2manifest\fP  \f2name :value\fP 絮с≪腟粋昭帥障су \f2jar\fP  \f2name\ :\ value\fP ≪菴遵障у翫\f2jar\fP ゃ贋違障 
 .LP
-jar ファイルからファイルを抽出する場合は、
-.I x 
-を使用します。次に例を示します。
+潟潟茵с\f3m\fP  \f3f\fP 絖\f2manifest\fP  \f2jarfile\fP ュ綺綺ц菴違綽荀障違罨<篏帥障 
+.RS 3
+
 .LP
-.RS 5
-% jar xf myFile.jar
+.nf
+\f3
+.fl
+jar cmf myManifestFile myFile.jar *.class
+.fl
+\fP
+.fi
 .RE
+с鴻障с鴻劫ャ \f2name\ :\ value\fP 絮с≪菴遵с障違潟惹宴若吾с恰宴宴若吾激若潟違障 JAR 潟≪宴若激с潟絎茵絮с菴遵с障\f4\-m\fP 激с潟篏睡箴ゃJava Tutorial 
+.na
+\f2JAR Files\fP @
+.fi
+http://java.sun.com/docs/books/tutorial/jar/潟若鴻с 
 .LP
-jar ファイルから個別のファイルを抽出する場合は、
-そのファイル名を指定します。
-.LP
-.RS 5
-% jar xf myFile.jar foo bar
-.RE
-.LP
-JDK のバージョン 1.3 から、jar ユーティリティで 
-.fi
-http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html#JAR%20Index
-の「
-.I JarIndex
-」をサポートするようになりました。
-これにより、
-アプリケーションのクラスローダは、jar ファイルから
-クラスをより高速に読み込めるようになりました。
-アプリケーションまたはアプレットが複数の jar ファイルに
-バンドルされている場合、必要な jar ファイルだけがダウン
-ロードされて開かれ、クラスが読み込まれます。
-このパフォーマンスの最適化は、
-.I jar
-を 
-.I \-i
-オプションを使用して実行すると有効になります。
-指定した
-メインの jar ファイルおよびそのファイルが依存している
-すべての jar ファイルのパッケージ位置情報が生成されます。
-これらの情報は、メイン jar ファイルの manifest の 
-.I Class-Path 
-属性で
-指定する必要があります。
-.LP
-.RS 5
-% jar i main.jar
-.RE
-.LP
-この例では、
-.I INDEX.LIST 
-ファイルが 
-.I main.jar 
-の
-.I META-INF ディレクトリに追加されます。
-アプリケーションのクラスローダでは、このファイルに格納された情報を
-使用して、クラスのロードを高速化します。
-インデックスファイルに位置情報を格納する方法の詳細は、
-「JarIndex 仕様」を参照してください。
-.br
-.br
-ディレクトリをコピーするには、まず 
-.I dir1
-内のファイルを圧縮して標準出力に出力し、続いて標準入力から 
-.I dir2
-に抽出します (両方の 
-.I jar
-コマンドから
-.I \-f
-オプションを省く)。次に例を示します。
-.LP
-.RS 5
-% (cd dir1; jar c .) | (cd dir2; jar x)
-.RE
-.LP
-.I jar
-を使って JAR ファイルや JAR ファイルマニフェストを操作するコマンドサンプルを確認するには、「例」を参照してください。また、
-.fi
-http://java.sun.com/docs/books/tutorial/jar
-の
-.na
-「Java Tutorial」の JAR コースも参照してください。
-.SH "オプション"
-.if t .TP 10
-.if n .TP 5
-.B c
-新規のアーカイブファイルを 
-.I jarfile 
-という名前 (
-.I f 
-を指定した場合)、または標準出力上に (
-.I f 
-と 
-.I jarfile 
-を省略した場合) 作成します。
-アーカイブには入力ファイルで指定したファイルおよびディレクトリが追加されます。
-.if t .TP 10
-.if n .TP 5
-.B u
-既存の 
-.I jarfile 
-(
-.I f 
-を指定した場合) を更新します。
-このとき、この 
-.I jarfile 
-には入力ファイルで指定されたファイルおよびディレクトリが追加されます。以下に例を示します。
-.LP
-.RS 5
-% jar uf foo.jar foo.class
-.RE
-.LP
-この例では、ファイル 
-.I foo.class 
-が既存の jar ファイル 
-.I foo.jar 
-に追加されます。
-.I u 
-オプションでは、マニフェストのエントリを更新することもできます。以下に例を示します。
-.LP
-.RS 5
-% jar umf manifest foo.jar
-.RE
-.LP
-.I foo.jar 
-マニフェストをマニフェスト内の名前:値ペアで更新します。
-.if t .TP 10
-.if n .TP 5
-.B x
-ファイルおよびディレクトリを 
-.I jarfile 
-(
-.I f 
-を指定した場合)、
-または標準入力 (
-.I f 
-と 
-.I jarfile 
-を省略した場合) から抽出します。
-入力ファイルを指定した場合、その入力ファイルで指定されたファイルおよびディレクトリだけが
-抽出されます。指定しない場合は、すべてのファイルおよびディレクトリが抽出されます。
-抽出されたファイルの日時は、アーカイブ内で設定されたものです。
-.if t .TP 10
-.if n .TP 5
-.B t
-.I jarfile 
-(
-.I f 
-を指定した場合)、または標準入力 (
-.I f 
-と 
-.I jarfile 
-を省略した場合) から内容をリストします。入力ファイルを指定した場合、
-その入力ファイルで指定されたファイルおよびディレクトリだけが
-リストされます。指定しない場合は、すべてのファイルおよびディレクトリがリストされます。
-.if t .TP 10
-.if n .TP 5
-.B i
-指定された 
-.I jarfile 
-および関連づけられている jar ファイルの
-インデックス情報を生成します。次に例を示します。 
-.LP
-.RS 5
-% jar i foo.jar
-.RE
-.LP
-.I foo.jar
-に 
-.I INDEX.LIST 
-ファイルが生成されます。
-このファイルには、
-.I foo.jar 
-の各パッケージおよび 
-.I foo.jar 
-の 
-.I Class-Path 
-属性に指定されているすべての jar ファイルの
-位置情報が書き込まれています。
-インデックスの例を参照してください。
-.if t .TP 10
-.if n .TP 5
-.B f
-作成 (c)、更新 (u)、抽出 (x)、インデックス作成(i)、
-または表示 (t) する 
-.I jarfile 
-を指定します。
-.I \-f 
-オプションと 
-.I jarfile 
-のファイル名は対になっています。
-使用する場合は、両方を一緒に使用します。
-.I f 
-と 
-.I jarfile 
-を省略すると、標準入力から jar ファイル名が
-使用されたり (x および t の場合)、標準出力に jar ファイルが
-送信されたりします (c および u の場合)。
-.if t .TP 10
-.if n .TP 5
-.B v
-標準出力に詳細な出力を生成します。次に例を示します。
-.if t .TP 10
-.if n .TP 5
-.B 0
-ゼロ。ZIP 圧縮を使用せずに格納します。
-.if t .TP 10
-.if n .TP 5
-.B M
-manifest ファイルエントリを作成しません (c および u の場合)。または
-すでに存在する manifest ファイルエントリを削除します (u の場合)。 
-.if t .TP 10
-.if n .TP 5
-.B m
-指定したマニフェストファイル 
-.I manifest 
-から
-名前:値属性をファイル
-.I META-INF/MANIFEST.MF 
-に取り込みます。
-すでに同じ名前で存在しない限り、
-.I jar
-はその名前:値ペアを追加します。同じ名前で存在する場合は、
-jar
-はその値を更新します。
-.LP
-コマンド行では、文字 
-.B m 
-と 
-.B f 
-は、
-.I manifest 
-と 
-.I jarfile
-が出現するのと
-同じ順序で使用します。次に例を示します。
-.LP
-.RS 5
-% jar cmf myManifestFile myFile.jar *.class
-.RE
-.LP
-manifest ファイルには、デフォルトのマニフェストに含まれていない、
-専用の名前:値属性ペアを追加できます。
-たとえば、
-ベンダー情報、バージョン情報、パッケージシーリング、
-または JAR にバンドルされたアプリケーションを実行するための属性を
-追加できます。
-.B -m 
-オプションの使用例については、「Java Tutorial」
-.fi
-http://java.sun.com/docs/books/tutorial/jar/
-にある
-.na
-「
-.I JAR Files
-」コースを参照してください。
 .TP 3
 e 
-実行可能 JAR ファイル内にバンドルされたスタンドアロンアプリケーションのアプリケーションエントリポイントとして、
-.I entrypoint
-を設定します。このオプションを使用すると、マニフェストファイル内の 
-.I Main\-Class
-属性値が作成または上書きされます。このオプションは、JAR ファイルの作成中または更新中に使用できます。このオプションを使えば、マニフェストファイルを編集または作成することなしに、アプリケーションのエントリポイントを指定できます。
+絎茵 JAR <ゃ潟鴻帥潟≪潟≪宴若激с潟≪宴若激с潟潟ゃ潟\f2entrypoint\fP 荐絎障激с潟篏睡с鴻<ゃ \f2Main\-Class\fP 絮уゃ篏障筝吾障 激с潟JAR <ゃ篏筝障贋遺賢篏睡с障 激с潟篏帥違с鴻<ゃ膩障篏≪宴若激с潟潟ゃ潟絎с障
 .br
 .br
-たとえば、次のコマンドは 
-.I Main.jar
-を作成しますが、その際、マニフェストファイル内の 
-.I Main\-Class
-属性値は 
-.I Main
-に設定されます。 
+違罨<潟潟 \f2Main.jar\fP 篏障с鴻<ゃ \f2Main\-Class\fP 絮уゃ \f2Main\fP 荐絎障 
 .RS 3
 
 .LP
@@ -544,7 +362,7 @@
 .fi
 .RE
 .LP
-次のコマンドを実行すると java ランタイムから直接このアプリケーションを起動できます。 
+罨<潟潟絎茵 java 潟帥ゃ贋・≪宴若激с潟莎桁с障 
 .RS 3
 
 .LP
@@ -556,11 +374,7 @@
 \fP
 .fi
 .RE
-エントリポイントのクラス名が特定のパッケージ内に存在している場合、エントリポイントの区切り文字としてドット (「.」) またはスラッシュ (「/」) を使用できます。たとえば、
-.I Main.class
-が 
-.I foo
-という名前のパッケージ内に存在している場合、次のようにしてエントリポイントを指定できます。 
+潟ゃ潟劫劫宴若後絖翫潟ゃ潟阪絖 (.) 障鴻激 (/) 篏睡с障違\f2Main.class\fP  \f2foo\fP 宴若後絖翫罨<潟ゃ潟絎с障 
 .RS 3
 
 .LP
@@ -572,7 +386,7 @@
 \fP
 .fi
 .RE
-または 
+障 
 .RS 3
 
 .LP
@@ -584,36 +398,14 @@
 \fP
 .fi
 .RE
-\f3注:\ \fP 
-.I \-m
-オプションと 
-.I \-e
-オプションの両方を同時に指定する場合、指定されたマニフェストにも 
-.I Main\-Class
-属性が含まれていると、
-.I Main.class
-の指定があいまいになってエラーが発生し、JAR の作成または更新処理が異常終了します。 
-.if t .TP 10
-.if n .TP 5
-.B \-C \ dir 
-.B jar 
-コマンドの実行中に一時的にディレクトリを変更します (
-.I cd " dir"
-)。
-このとき、後続の入力ファイル引数が処理されます。
-この動作は、UNIX の 
-.I tar 
-ユーティリティの 
-.I \-C 
-オプションと
-同様の動作になります。
-たとえば、次のコマンドは、
-.I classes 
-ディレクトリに移動し、そのディレクトリから 
-.I bar.classes 
-を
-.I foo.jar 
-に追加します。
+\f3羈:\ \fP \f2\-m\fP 激с潟 \f2\-e\fP 激с潟筝≧鴻絎翫絎с鴻 \f2Main\-Class\fP 絮с障\f2Main.class\fP 絎障c若榊JAR 篏障贋医医幻腟篋障 
+.LP
+.TP 3
+\-C \ dir 
+\f2jar\fP 潟潟絎茵筝緇膓 \f2inputfiles\fP 綣違筝c紊眼障 (\f2cd\fP\ \f2dir\fP)UNIX  \f2tar\fP 若cc若 \f2\-C\fP 激с潟罘純蕁篌若障
+.br
+.br
+違罨<潟潟\f2classes\fP c腱糸c \f2bar.class\fP  \f2foo.jar\fP 菴遵障 
 .RS 3
 
 .LP
@@ -625,20 +417,7 @@
 \fP
 .fi
 .RE
-次のコマンドでは、
-.I classes 
-ディレクトリに移動し、
-.I classes 
-ディレクトリ内のすべてのファイルを
-.I foo.jar 
-に追加します (jar ファイルには classes ディレクトリを作成しません)。
-次に元のディレクトリに戻ってから、
-.I bin 
-ディレクトリに移動し、
-.I xyz.class 
-を 
-.I foo.jar 
-に追加します。
+罨<潟潟с\f2classes\fP c腱糸\f2classes\fP c鴻<ゃ \f2foo.jar\fP 菴遵障 (jar <ゃ classes c篏障) 罨<c祉c\f2bin\fP c腱糸\f2xyz.class\fP  \f2foo.jar\fP 菴遵障 
 .RS 3
 
 .LP
@@ -650,276 +429,294 @@
 \fP
 .fi
 .RE
-.I classes
-にファイル 
-.I bar1
-および 
-.I bar2
-がある場合、
-.I jar tf foo.jar
-を実行すると、jar ファイルの内容が次のように表示されます。
+\f2classes\fP  \f2bar1\fP  \f2bar2\fP 篆翫\f2jar tf foo.jar\fP 篏睡JAR <ゃ罨<荀膣障 
+.RS 3
+
 .LP
-.if t .RS 15
-.if n .RS 8
-.ft 3
 .nf
-META-INF/
-META-INF/MANIFEST.MF
+\f3
+.fl
+META\-INF/
+.fl
+META\-INF/MANIFEST.MF
+.fl
 bar1
+.fl
 bar2
+.fl
 xyz.class
+.fl
+\fP
 .fi
-.ft 1
-.RE
-.if t .TP 10
-.if n .TP 5
-.B \-Joption
-.I option
-を Java Runtime Environment に渡します。
-ここで、
-.I option
-は、Java アプリケーション起動プログラムのマニュアルページ
-.fi
- (http://java.sun.com/javase/6/docs/technotes/tools/solaris/java.html#options) 
-で説明されているオプションの 1 つです。
-たとえば
-.B \-J-Xms48m
-は、最大メモリを 48M バイトに設定します。
-.I \-J
-が基本にする仮想マシンにオプションを渡すことは、共通の規約です。
-.SH "コマンド行引数ファイル"
-.B jar 
-コマンド行を短くまたは簡単にするために、
-.I jar 
-コマンドの引数 (
-.I \-J 
-オプションを除く) を含むファイルを 1 つ以上指定できます。
-これにより、任意の長さの 
-.B jar 
-コマンドを作成でき、
-オペレーティングシステムによるコマンド行の制限を
-回避できます。
-.LP
-引数ファイルには、オプションとファイル名を含めることができます。
-引数ファイル内の引数は空白文字区切りまたは改行区切りにします。
-引数ファイル内のファイル名は、引数ファイルの位置に対してではなく、
-現在のディレクトリに対して相対的に指定します。
-通常はオペレーティングシステムシェルによって展開されるワイルドカード (*) は
-展開されません。ファイルを再帰的に解釈するための @ 文字は使用できません。
-.I \-J 
-オプションは、起動プログラムに渡されるため、サポートされていません。
-起動プログラムでは引数ファイルを使用できないためです。
-.LP
-.I jar 
-の実行時、各引数ファイルのパスおよび名前の先頭に @ 文字を付けて渡します。
-.I jar 
-で先頭に文字 @ の付いた引数が出現するたびに、
-そのファイルの内容が引数リストに展開されます。
-.br
-.br
-次の例では、
-.I find
-コマンドから出力されたファイル名を 
-.I classes.list
-内に格納しています。 
-.LP
-.RS 5
-% find . -name '*.class' -print > classes.list
 .RE
 .LP
-その後、引数ファイル構文を使って
-.I jar
-にリストを渡すと、
-.I Classes.list
-で 
-.I jar
-コマンドを実行できます。
+.TP 3
+\-Joption 
+Java 絎茵医 \f2option\fP 羝<障 \f2option\fP Java ≪宴若激с活儀若<潟鴻若吾荐莠激с潟 1 ゆ絎障違\f4\-J\-Xmx48M\fP 絎紊с<≪若 48M ゃ荐絎障\f2\-J\fP 篏帥c緇絎茵医激с潟羝<頫障 
+.RE
+
 .LP
-.RS 5
-% jar cf my.jar @classes.list
-.RE
+.SH "潟潟茵綣違<ゃ"
 .LP
-引数ファイルはパスを指定できますが、相対パスが記述された引数ファイル内の
-すべてのファイル名は、渡されたパスに対して相対的ではなく、
-現在の作業ディレクトリに相対的となります。次に例を示します。
+
 .LP
-.RS 5
-% jar @path1/classes.list
-.RE
-.SH "使用例"
-あるディレクトリ中のファイルをすべてアーカイブに追加する例を示します 
-(アーカイブがすでに存在する場合は、内容が上書きされます)。
-詳細を列挙すると (
-.I \-v
-オプションを使用)、
-サイズや最終更新日など、
-アーカイブ内のファイルに関して詳しい情報が得られます。
-.RS 
+jar 潟潟茵膂≧\f2jar\fP 潟潟絲障綣 (\f2\-J\fP 激с潟ゃ)  1 や札筝<ゃ絎с障篁紙激 jar 潟潟篏с若c潟違激鴻潟潟茵狗茹f障障 
+.LP
+綣違<ゃ激с潟<ゃс障<ゃ綣違鴻若鴻障壕у阪障綣違<ゃ<ゃ憜c荀後障鴻障 綣違<ゃ篏臀荀後障鴻с障ゃ若 (*) 絽吾違若c潟違激鴻激сc絖茹i障翫茹i障綣違<ゃ綣違 \f2@\fP 絖篏睡茲違<ゃ絽亥茹i泣若障障\f2\-J\fP 激с潟泣若障 激с潟莎桁若羝<障莎桁若с綣違<ゃ泣若с
+.LP
+.LP
+\f2jar\fP 絎茵綣違<ゃ鴻<ゃ \f2@\fP 絖篁羝<障\f2jar\fP \f2@\fP 絖у障綣違荀ゃ<ゃ絎鴻絮綣違鴻水ャ障
+.br
+.br
+罨<箴с\f2find\fP 潟潟阪<ゃ \f2classes.list\fP 主障 
+.LP
+.RS 3
+
+.LP
+.nf
 \f3
-.nf
-% ls
-1.au          Animator.class    monkey.jpg
-2.au          Wave.class        spacemusic.au
-3.au          at_work.gif
-.LP
-% jar cvf bundle.jar *
-added manifest
-adding: 1.au(in = 2324) (out= 67)(deflated 97%)
-adding: 2.au(in = 6970) (out= 90)(deflated 98%)
-adding: 3.au(in = 11616) (out= 108)(deflated 99%)
-adding: Animator.class(in = 2266) (out= 66)(deflated 97%)
-adding: Wave.class(in = 3778) (out= 81)(deflated 97%)
-adding: at_work.gif(in = 6621) (out= 89)(deflated 98%)
-adding: monkey.jpg(in = 7667) (out= 91)(deflated 98%)
-adding: spacemusic.au(in = 3079) (out= 73)(deflated 97%)
-\f1
+.fl
+% find \fP\f3.\fP \-name '*.class' \-print > classes.list
+.fl
 .fi
 .RE
-イメージ、オーディオファイル、およびクラス用のサブディレクトリが
-すでに存在する場合、単一の 
-.B jar 
-ファイルに結合できます。
-.RS 
+
+.LP
+.LP
+緇綣違<ゃ罕篏帥c \f2jar\fP 鴻羝<\f2Classes.list\fP  \f2jar\fP 潟潟絎茵с障
+.LP
+.RS 3
+
+.LP
+.nf
 \f3
+.fl
+% jar cf my.jar @classes.list
+.fl
+\fP
+.fi
+.RE
+
+.LP
+綣違<ゃ鴻絎с障後障鴻荐菴違綣違<ゃ鴻<ゃ羝<鴻絲障後丞с憜篏罐c後丞障 罨<箴腓冴障 
+.RS 3
+
+.LP
 .nf
-% ls -F
+\f3
+.fl
+% jar @path1/classes.list
+.fl
+\fP
+.fi
+.RE
+
+.LP
+.LP
+
+.LP
+.SH "箴"
+.LP
+
+.LP
+劫c鴻<ゃ≪若ゃ菴遵 (≪若ゃс絖翫絎鴻筝吾) 罨<障\f2\-v\fP 激с潟篏睡宴荅括完絎泣ゃ冴違贋井ャ≪若ゃ<ゃゃ荅括完宴茵腓冴障 
+.RS 3
+
+.LP
+.nf
+\f3
+.fl
+% ls
+.fl
+1.au          Animator.class    monkey.jpg
+.fl
+2.au          Wave.class        spacemusic.au
+.fl
+3.au          at_work.gif
+.fl
+
+.fl
+% jar cvf bundle.jar *
+.fl
+added manifest
+.fl
+adding: 1.au(in = 2324) (out= 67)(deflated 97%)
+.fl
+adding: 2.au(in = 6970) (out= 90)(deflated 98%)
+.fl
+adding: 3.au(in = 11616) (out= 108)(deflated 99%)
+.fl
+adding: Animator.class(in = 2266) (out= 66)(deflated 97%)
+.fl
+adding: Wave.class(in = 3778) (out= 81)(deflated 97%)
+.fl
+adding: at_work.gif(in = 6621) (out= 89)(deflated 98%)
+.fl
+adding: monkey.jpg(in = 7667) (out= 91)(deflated 98%)
+.fl
+adding: spacemusic.au(in = 3079) (out= 73)(deflated 97%)
+.fl
+\fP
+.fi
+.RE
+
+.LP
+с糸若c<ゃ潟合泣c翫筝 JAR <ゃ腟с障 
+.RS 3
+
+.LP
+.nf
+\f3
+.fl
+% ls \-F
+.fl
 audio/ classes/ images/
+.fl
 
+.fl
 % jar cvf bundle.jar audio classes images
+.fl
 added manifest
+.fl
 adding: audio/(in = 0) (out= 0)(stored 0%)
+.fl
 adding: audio/1.au(in = 2324) (out= 67)(deflated 97%)
+.fl
 adding: audio/2.au(in = 6970) (out= 90)(deflated 98%)
+.fl
 adding: audio/3.au(in = 11616) (out= 108)(deflated 99%)
+.fl
 adding: audio/spacemusic.au(in = 3079) (out= 73)(deflated 97%)
+.fl
 adding: classes/(in = 0) (out= 0)(stored 0%)
+.fl
 adding: classes/Animator.class(in = 2266) (out= 66)(deflated 97%)
+.fl
 adding: classes/Wave.class(in = 3778) (out= 81)(deflated 97%)
+.fl
 adding: images/(in = 0) (out= 0)(stored 0%)
+.fl
 adding: images/monkey.jpg(in = 7667) (out= 91)(deflated 98%)
+.fl
 adding: images/at_work.gif(in = 6621) (out= 89)(deflated 98%)
+.fl
 
-% ls -F
+.fl
+% ls \-F
+.fl
 audio/ bundle.jar classes/ images/
+.fl
+\fP
 .fi
-\f1
 .RE
-次の例では、
-.I t 
-オプションを指定して、jar ファイル中のエントリ名を表示します。
-.RS 
+
+.LP
+JAR <ゃ潟茵腓冴\f2t\fP激с潟篏睡障 
+.RS 3
+
+.LP
+.nf
 \f3
-.nf
+.fl
 % jar tf bundle.jar
-META-INF/
-META-INF/MANIFEST.MF
+.fl
+META\-INF/
+.fl
+META\-INF/MANIFEST.MF
+.fl
 audio/1.au
+.fl
 audio/2.au
+.fl
 audio/3.au
+.fl
 audio/spacemusic.au
+.fl
 classes/Animator.class
+.fl
 classes/Wave.class
+.fl
 images/monkey.jpg
+.fl
 images/at_work.gif
+.fl
+\fP
 .fi
-\f1
 .RE
-クラスの読み込みを高速化するために jar ファイルにインデックスファイルを
-追加する場合は、
-.I i
-オプションを使用してください。
+
+.LP
+.LP
+鴻若蕭ゃ潟鴻<ゃ JAR <ゃ菴遵\f2i\fP激с潟篏睡障
 .br
 .br
-例:
+箴:
 .br
 
 .LP
 .RS 3
 
 .LP
-たとえば株取引アプリケーションの内部依存しているクラスを 
-.I main.jar
-、
-.I buy.jar
-、
-および 
-.I sell.jar 
-という 3 つの jar ファイル
-に分割したとします。
-.I main.jar 
-のマニフェストの 
-.I Class-Path
-属性に次のように指定した場合、 
+違綣≪宴若激с括娯箴絖鴻\f2main.jar\fP\f2buy.jar\fP \f2sell.jar\fP  3 ゃ JAR <ゃ蚊障
+.br
+
 .LP
-.RS 5
-Class-Path: buy.jar sell.jar
+.br
+
+.LP
+\f2main.jar\fP с鴻 \f2Class\-path\fP 絮с罨<絎翫 
+.nf
+\f3
+.fl
+Class\-Path: buy.jar sell.jar
+.fl
+\fP
+.fi
+
+.LP
+\f2\-i\fP 激с潟篏睡違≪宴若激с潟鴻 茯粋昭帥蕭с障 
+.nf
+\f3
+.fl
+% jar i main.jar
+.fl
+\fP
+.fi
+
+.LP
+\f2INDEX.LIST\fP <ゃ \f2META\-INF\fP c水ャ障腟≪宴若激с潟鴻若若c鴻障 純若鴻罎膣≪茵 jar <ゃ潟若障
 .RE
-.LP
-.I -i 
-オプションを使用すれば、アプリケーションのクラスの
-読み込みを高速化できます。
-.LP
-.RS 5
-% jar i main.jar
-.RE
-.LP
-.I INDEX.LIST 
-ファイルが 
-.I META-INF 
-ディレクトリに追加されます。
-この結果、アプリケーションのクラスローダによってクラスまたは
-リソースの検索が行われるときに、適切な jar ファイルがダウンロードされます。 
-.SH "関連項目"
+.SH "∫i"
 .LP
 
 .LP
+.na
+\f2JAR <ゃ网荀\fP @
 .fi
 http://java.sun.com/javase/6/docs/technotes/guides/jar/jarGuide.html
-の
-.na
-「
-.I The Jar Overview
-」
 .br
 
 .LP
+.na
+\f2JAR <ゃ篁罕\fP @
 .fi
 http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html
-の
-.na
-「
-.I The Jar File Specification
-」
 .br
 
 .LP
+.na
+\f2Jar ゃ潟鴻\fP @
 .fi
-http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html#JAR%20Index
-の
-.na
-「
-.I The JarIndex Spec
-」
+http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html#JARIndex
 .br
 
 .LP
+.na
+\f2Jar ャ若≪\fP @
 .fi
-http://java.sun.com/docs/books/tutorial/jar
-の
-.na
-「
-.I Jar Tutorial
-」
-(Java ソフトウェアの Web サイト内) 
+http://java.sun.com/docs/books/tutorial/jar (Java Software  Web 泣ゃ)
 .br
 
 .LP
-.fi
-http://java.sun.com/javase/6/docs/technotes/tools/share/pack200.html
-の
-.na
-「
-.I pack200 Reference Page
-」
+pack200(1) 
 .LP
  
--- a/jdk/src/linux/doc/man/ja/jarsigner.1	Tue May 12 15:21:55 2009 +0900
+++ b/jdk/src/linux/doc/man/ja/jarsigner.1	Thu May 14 00:17:25 2009 -0700
@@ -1,431 +1,827 @@
-'\" t
-.\"
-.\" Copyright 2000-2006 Sun Microsystems, Inc.  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
-.\" under the terms of the GNU General Public License version 2 only, as
-.\" published by the Free Software Foundation.
-.\"
-.\" This code is distributed in the hope that it will be useful, but WITHOUT
-.\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-.\" FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-.\" version 2 for more details (a copy is included in the LICENSE file that
-.\" accompanied this code).
-.\"
-.\" You should have received a copy of the GNU General Public License version
-.\" 2 along with this work; if not, write to the Free Software Foundation,
-.\" Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
-.\"
-.\" Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
-.\" CA 95054 USA or visit www.sun.com if you need additional information or
-.\" have any questions.
-.\" 
-.\"
-.TH jarsigner 1 "2006 年 9 月 4 日" "Java SE 6" "ユーザーコマンド"
-.SH "名前"
-jarsigner \- JAR 署名および検証ツール
+." Copyright 2004-2006 Sun Microsystems, Inc.  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
+." under the terms of the GNU General Public License version 2 only, as
+." published by the Free Software Foundation.
+."
+." This code is distributed in the hope that it will be useful, but WITHOUT
+." ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+." FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+." version 2 for more details (a copy is included in the LICENSE file that
+." accompanied this code).
+."
+." You should have received a copy of the GNU General Public License version
+." 2 along with this work; if not, write to the Free Software Foundation,
+." Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+."
+." Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+." CA 95054 USA or visit www.sun.com if you need additional information or
+." have any questions.
+."
+.TH jarsigner 1 "04 May 2009"
+." Generated from HTML by html2man (author: Eric Armstrong)
+
+.LP
+.SH ""
+jarsigner \- JAR 臀峨恰荐若若
 .LP
 .RS 3
 
 .LP
 .LP
-Java ARchive (JAR) ファイルの署名を生成し、署名付き JAR ファイルの署名を検証します。
+Java ARchive (JAR) <ゃ臀峨臀峨篁 JAR <ゃ臀峨罎荐若障
 .LP
 .RE
-.SH "形式"
-.B jarsigner 
-[ 
-.BI options
-]  
-jar-file alias
-.br
-.B jarsigner
-.BI \-verify
-[
-.BI options 
-]
-jar-file 
-.SH "説明"
-.IX "JAR signing and verification tool " "" "JAR signing and verification tool  \(em \fLjarsigner\fP"
-.IX "jarsigner" "" "\fLjarsigner\fP \(em JAR signing and verification tool "
-.B jarsigner 
-ツールは、次の 2 つの目的で使用します。
-.TP 5
-1. 
-Java ARchive (JAR) ファイルに署名を付ける
-.TP 5
-2. 
-署名付き JAR ファイルの署名と完全性を検証する
+.SH "綵√"
 .LP
-JAR 機能を使うと、クラスファイル、イメージ、サウンド、およびその他のデジタルデータ
-を単一のファイルにパッケージ化できるので、ファイルを迅速かつ容易に配布できます。
-開発者は、
-.B jar 
-という名前のツールを使って JAR ファイルを作成できます。技術的な観点から言えば、
-すべての ZIP ファイルも JAR ファイルとみなすことができます。
-.LP
-「デジタル署名」は、なんらかのデータ (「署名」の対象となるデータ) と、エンティティ
-(人、会社など) の非公開鍵とに基づいて計算されるビット列です。手書きの署名同様、
-デジタル署名には多くの利点があります。
-.TP 2
-\(bu
-署名の生成に使われた非公開鍵と対になる公開鍵を使って計算を行うことで、
-デジタル署名が本物かどうかを検証できる
-.TP 2
-\(bu
-非公開鍵が他人に知られない限り、デジタル署名の偽造は不可能である
-.TP 2
-\(bu
-デジタル署名は、その署名が付いたデータだけを対象とするものであり、ほかのデータの
-署名として機能することはない
-.TP 2
-\(bu
-署名付きのデータは変更できない。データが変更された場合は、その署名によってデータ
-が本物ではないことが検証される
-.LP
-ファイルに対してエンティティの署名を生成するには、まず、そのエンティティが公開鍵と
-非公開鍵のペアを持つ必要があります。また、公開鍵を認証する 1 つ以上の証明書も
-必要です。「証明書」とは、あるエンティティからのデジタル署名付きの文書のことです。
-証明書には、ほかのあるエンティティの公開鍵が特別な値を持っていることが書かれて
-います。
-.LP
-.B jarsigner 
-は、「キーストア」に含まれる鍵と証明書情報を使って、JAR ファイルのデジタル署名を
-生成します。キーストアは、非公開鍵と、非公開鍵に関連付けられた X.509 証明連鎖が
-収められたデータベースです。証明連鎖は、非公開鍵に対応する公開鍵を認証します。
-キーストアの作成と管理には、
-.B keytool
-ユーティリティを使います。
-.LP
-.B jarsigner 
-は、エンティティの非公開鍵を使って署名を生成します。署名付き JAR ファイルには、
-キーストアからの証明書のコピーが含まれています。これは、JAR ファイルの署名に使わ
-れた非公開鍵に対応する公開鍵の証明書のコピーです。
-.B jarsigner 
-は、署名付き JAR ファイルのデジタル署名を、ファイル内 (の署名ブロックファイル) に含
-まれている証明書を使って検証することができます。
-.LP
-J2SE 5.0 以降の \f3jarsigner\fP は、タイムスタンプを含む署名を生成できるようになりました。このため、システム/デプロイヤ (Java Plug\-in など) は、署名付きの証明書がまだ有効である期間中に JAR ファイルの署名が行われたかどうかを確認できます。さらに、そのタイムスタンプ情報をアプリケーションが取得するための API が、J2SE 5.0 で追加されました。
-.LP
-現時点では、
-.B jarsigner 
-で署名できるのは、JDK の 
-.B jar
-ツールで作成された JAR ファイル、または ZIP ファイルだけです。JAR ファイルは ZIP ファイルと同じですが、JAR ファイルには
-.B META-INF/MANIFEST.MF 
-ファイルが含まれている点が異なります。
-.B META-INF/MANIFEST.MF
-ファイルは、
-.B jarsigner 
-が ZIP ファイルに署名を付けるときに自動的に作成されます。
-.LP
-デフォルトでは、
-.B jarsigner
-は JAR ファイルに「署名」を付けます。
-署名付き JAR ファイルを「検証」する場合は、
-.I -verify 
-オプションを指定します。
-.SS 
-JDK 1.1 との互換性
-.LP
-.IX "jarsigner" "Compatibility with JDK 1.1" "\fLjarsigner\fP \(em JAR signing and verification tool "
-.B keytool
-ツールと 
-.B jarsigner 
-ツールは、JDK 1.1 で提供されていた
-.B javakey
-ツールを完全に置き換えるものです。これらの新しいツールは
-.B javakey
-よりも多くの機能を備えており、キーストアと非公開鍵をパスワードで保護する機能や、
-署名の生成だけでなく署名を検証する機能を持っています。
-.LP
-新しいキーストアアーキテクチャは、
-.B javakey 
-が作成して管理していたアイデンティティデータベースに代わるものです。キーストア形式と、JDK 1.1 の 
-.B javakey 
-が使っていたデータベース形式との間には下位互換性はありません。ただし、次のような
-ことは可能です。
-.TP 2
-\(bu
-.B keytool
-の
-.I -identitydb 
-コマンドを使うと、アイデンティティデータベースの情報をキーストアにインポートできます。
-.TP 2
-\(bu
 
-.B jarsigner
-は、以前に 
-.B javakey
-を使って署名された JAR ファイルに署名を付けることができます。
-.TP 2
-\(bu
-.B jarsigner 
-は、
-.B javakey
-を使って署名された JAR ファイルを検証できます。したがって、
-.B jarsigner
-は、JDK 1.2 のキーストアではなく JDK 1.1 のアイデンティティデータベースからの署名者別
-名を認識し、これらを対象に処理を行うことができます。
-.LP 
-次の表は、JDK 1.1.x で署名された JAR ファイルが、Java 2 プラットフォームでどのように扱われるかを
-示しています。
 .LP
 .nf
-.ft 3
-                      1.1 データ
-         1.1 データ   ベースから   ポリシー
-JAR      ベース内の   1.2 キース   ファイル      
-ファイル   アイデン   トアにイン   がアイデン   与えられる
-のタイプ   ティティ   ポートされ   ティティ/    特権 
-                      る信頼でき   別名に特権  
-                      るアイデン   を与える
-                      ティティ(4)
+\f3
+.fl
+\fP\f3jarsigner\fP [ options ] jar\-file alias
+.fl
+\f3jarsigner\fP \-verify [ options ] jar\-file 
+.fl
+.fi
 
-署名付き                                         すべてのコードに
-JAR          x         x          x           与えられる
-                                                 デフォルトの
-                                                 特権
-												   
-署名のない                                       すべてのコードに
-JAR          x         x          x           与えられる
-                                                 デフォルトの
-                                                 特権
+.LP
+.SH "茯"
+.LP
 
-署名付き                                         すべてのコードに
-JAR          x         ○          x           与えられる
-                                                 デフォルトの
-                                                 特権
+.LP
+.LP
+\f3jarsigner\fP 若罨< 2 ゃт戎障
+.LP
+.RS 3
+.TP 3
+1.
+Java ARchive (JAR) <ゃ臀峨篁 
+.TP 3
+2.
+臀峨篁 JAR <ゃ臀峨翫с罎荐若 
+.RE
 
-署名付き                                         すべてのコードに
-JAR          ○/信頼で  x          x           与えられる
-              きない                             デフォルトの
-                                                 特権 (3)
+.LP
+.LP
+JAR 罘純篏帥鴻<ゃゃ<若吾泣潟潟篁吾帥若帥筝<ゃ宴若後сс<ゃ菴ゅ号絽с障肴jar(1) 若篏帥c JAR <ゃ篏с障茵荀括鴻荐違鴻 ZIP <ゃ JAR <ゃ帥с障 \f3jar\fP c篏 JAR <ゃ障 \f3jarsigner\fP c JAR <ゃMETA\-INF/MANIFEST.MF <ゃ障障
+.LP
+.LP
+吾帥臀峨若 (臀峨絲乗院若) 潟cc (篋冴篌腓障) 泣冴ャ荐膊с吾臀峨罕吾帥臀峨紊鴻障
+.LP
+.RS 3
+.TP 2
+o
+臀峨篏帥泣絲障泣篏帥c荐膊茵с吾帥臀峨罎荐若с 
+.TP 2
+o
+泣篁篋冴ャ吾帥臀峨初筝純с 
+.TP 2
+o
+吾帥臀峨臀峨篁若帥絲乗院с祉若帥臀峨罘純 
+.TP 2
+o
+臀峨篁若帥紊眼с 若帥紊眼翫臀峨c若帥с罎荐若 
+.RE
 
-署名付き                                         すべてのコードに
-JAR          ○/信頼で  x          ○           与えられる
-              きない                             デフォルトの
-                                                 特権 (1,3)
-
-署名付き                                         すべてのコードに
-JAR          x         ○          ○           与えられる
-                                                 デフォルトの
-                                                 特権とポリシー
-                                                 ファイル内
-                                                 で与えられる
-                                                 特権
-												   
-署名付き                                         すべてのコードに
-JAR          ○/信頼    ○          ○           与えられる
-              できる                             デフォルトの
-                                                 特権とポリシー
-                                                 ファイル内
-                                                 で与えられる
-                                                 特権 (2)
-
-署名付き                                         すべての
-JAR          ○/信頼    x          x           特権
-              できる 
-署名付き                                         すべての
-JAR          ○/信頼    ○          x           特権 (1)
-              できる
-署名付き                                         すべての
-JAR          ○/信頼    x          ○           特権 (1)
-              できる
-.fi
-.ft 1
 .LP
-注:
-.TP 5
-1. 
-ポリシーファイル内にアイデンティティ/別名についての言及がある場合、
-それをキーストアにインポートして、ポリシーファイルの設定が与えられた
-特権に反映されるようにする必要があります。
-.TP 5
-2. 
-ポリシーファイル/キーストアの組み合わせは、アイデンティティデータベース
-内の信頼できるアイデンティティよりも優先されます。
-.TP 5
-3. 
-Java 2 プラットフォームでは、信頼できないアイデンティティは無視されます。
-.TP 5
-4. 
-JDK キーストアにインポートできるのは、信頼できるアイデンティティだけです。
-.SS 
-キーストアの別名
 .LP
-.IX "jarsigner" "Keystore Aliases" "\fLjarsigner\fP \(em JAR signing and verification tool "
+<ゃ絲障潟cc若臀峨障潟cc若潟cc若∫c泣泣≪ゅ荀障 障泣茯荐若 1 ゃ障茲違荐惹吾綽荀с荐惹吾潟cc若肴吾帥臀峨篁吾сャ潟cc若泣劫ゃс荐惹障
 .LP
-キーストアのすべてのエントリは、一意の「別名」を介してアクセスされます。
 .LP
-.B jarsigner 
-を使って JAR ファイルに署名を付けるときは、署名の生成に必要な非公開鍵を
-含むキーストアエントリの別名を指定する必要があります。たとえば、次の例は、
-working ディレクトリの
-.B mystore
-という名前のキーストアに含まれる別名 
-.B duke 
-に関連付けられた非公開鍵を使って、
-.BR MyJARFile.jar
-という名前の JAR ファイルに署名を付けます。出力ファイルは指定されていない
-ので、
-.BR MyJARFile.jar 
-は署名付きの JAR ファイルによって上書きされます。
+\f3jarsigner\fP 若鴻≪障泣荐惹御宴篏帥cJAR <ゃ吾帥臀峨障若鴻≪泣泣∫d X.509 荐惹吾с若潟若帥若鴻с若鴻≪篏膊∞keytool(1) 若cc若篏帥障
 .LP
-.ft 3
-.nf
-jarsigner -keystore /working/mystore -storepass 
-   myspass -keypass dukekeypasswd MyJARFile.jar duke
-.fi
-.ft 1
 .LP
-キーストアはパスワードで保護されているので、ストアのパスワード (上の例では 
-.BR myspass
-) を指定する必要があります。コマンド行でストアのパスワードを指定しなかった場合は、パスワードの入力を求められます。同様に、非公開鍵もキーストア内でパスワードによって保護されているので、非公開鍵のパスワード (上の例では 
-.BR dukekeypasswd 
-) を指定する必要があります。コマンド行で非公開鍵のパスワードを指定しておらず、非公開鍵のパスワートがストアのパスワードと違っている場合は、非公開鍵のパスワードの入力を求められます。
+\f3jarsigner\fP 潟cc若泣篏帥c臀峨障臀峨篁 JAR <ゃ<ゃ臀峨篏睡泣絲上泣篆絖若鴻≪c荐惹吾潟若障障 \f3jarsigner\fP 臀峨篁 JAR <ゃ吾帥臀峨<ゃ (臀峨<ゃ) 障荐惹吾篏帥c罎荐若с障
+.LP
+.LP
+5.0 篁ラс\f3jarsigner\fP 帥ゃ鴻帥潟臀峨с激鴻ゃ (Java Plug\-in ) JAR <ゃ臀峨荐惹吾号筝臀峨сс障5.0 ц申 API 篏睡≪宴若激с潟帥ゃ鴻帥潟宴緇с障
+.LP
+.LP
+憝鴻с\f3jarsigner\fP х讐сJDK  jar(1) 若т JAR <ゃ障 ZIP <ゃсJAR <ゃ ZIP <ゃсJAR <ゃ META\-INF/MANIFEST.MF <ゃ障鴻違障META\-INF/MANIFEST.MF <ゃ\f3jarsigner\fP  ZIP <ゃ臀峨篁篏障
+.LP
+.LP
+с\f3jarsigner\fP  JAR (障 ZIP) <ゃ臀峨篁障臀峨篁 JAR <ゃ罎荐若翫\f2\-verify\fP 激с潟絎障
 .LP
 .SS 
-キーストアの場所
+JDK 1.1 篋
 .LP
-.IX "jarsigner" "Keystore Location" "\fLjarsigner\fP \(em JAR signing and verification tool "
+.RS 3
+
 .LP
-.B jarsigner 
-には、使用するキーストアの名前と場所を指定する 
-.I -keystore
-オプションがあります。キーストアは、デフォルトではユーザのホームディレクトリの 
-.I .keystore 
-という名前のファイルに格納されます。ユーザのホームディレクトリは、
-.I user.home
-システムプロパティによって決まります。
 .LP
-.I \-keystore