WebLogic Server 12.1.1 on Mac OS X
はじめに
この記事はJavaEE Advent Calendar 2012の9日目です。
昨日は[twitter:@tt4cs]さんによる"http://tt4cs.blogspot.jp/2012/12/something-about-ldap-realm.html"でした。
明日は[twitter:@mike_neck]さんの登場となります。
私のネタは、若干今更感もありますが「WebLogic Server(以下、WLS)12cをMac OS Xで動かしてみよう」です。
WLS12.1.1では、開発用途ながらMac OS Xが正式にサーティファイされるようになりました。*1
[いきなり余談] WLSはOracle社の製品になってから、商用で利用するための開発ライセンスがしばらく存在しなかったのですが、近頃はOTN Free Developer Licenseも利用できるようになっています。
詳細は[twitter:@OraBlogs_jp]さんの"Oracle Blogs 日本語のまとめ: [WLS] WebLogic Application Server: free for developers!"を参照ください。
上記を参照する限り、今のところ環境としては
のみサーティファイされていますが、今回は環境含め、様々なパターンで検証してみることにしました。
※注意事項: 動作保証外の環境についての検証は正式なものではないので、Oracle社や製品サポートへのお問い合わせはご遠慮ください。
検証パターン
今回試してみたのは、以下の組み合わせです。
項目 | 内容 |
---|---|
OS |
|
JDK | |
インストーラ | |
インストールモード |
|
まずは、それぞれの項目について解説していきましょう。
OS
- OS X v10.7 Lion
- 正確なバージョンは10.7.5となります。
- Mountain Lionでなくてごめんなさい。WLS12.1.2が出たらアップグレードして試したいとは思っています…
JDK
- Oracle HotSpot JDK 1.7.0_09(以下、Oracle JDK7)
- 説明: 2012/3/15以降に配布されているWLS12.1.1のリリースではJDK7に正式対応しています。
また、Oracle JDK7u4からMac OS Xがサポートされるようになりました。今回は現時点で最新版のJDK7u9で動かしてみます。 - 入手方法: Java SE - Downloads | Oracle Technology Network | Oracleからダウンロードできます。
- JDKホーム: /Library/Java/JavaVirtualMachines/jdk1.7.0_09.jdk/Contents/Home*3
- 説明: 2012/3/15以降に配布されているWLS12.1.1のリリースではJDK7に正式対応しています。
[余談その2] 10/16に公開されたOS X向けJavaのセキュリティアップデート「Java for OS X 2012-006」を入れたことで「Java Preferences」がなくなったようで戸惑いました。*4
Oracle JDKでは[システム環境設定]-[その他]-[Java]から「Javaコントロール・パネル」を利用することになります。
インストーラ
Oracle Fusion Middleware 11g ソフトウェア・ダウンロードからダウンロードできるインストーラのうち、OS Xで利用できるのは、以下となります。
- Generic Installer(以下、Generic版)
インストールモード
ZIP版の場合は関係ありませんが、OS X専用版とGeneric版のインストーラでは3つのモードがあります。
JDKホームを$JAVA_HOME、インストーラファイル名を$INSTALLER_JARとして、基本的な実行方法についても説明します。詳細は各マニュアルを参照ください。
- グラフィカル・モード(以下、GUIモード)
- 実行方法: $JAVA_HOME/bin/java -jar $INSTALLER_JAR
- マニュアル: グラフィカル・モードでのインストール・プログラムの実行
- コンソール・モード(以下、CUIモード)
- 実行方法: $JAVA_HOME/bin/java -jar $INSTALLER_JAR -mode=console
- マニュアル: コンソール・モードでのインストール・プログラムの実行
- サイレント・モード(以下、Silentモード)
以下にサイレント用のXMLファイル(上記$SILENT_XML)の例を示します。
<?xml version="1.0" encoding="UTF-8"?> <bea-installer> <input-fields> <data-value name="BEAHOME" value="/Users/xxx/Oracle/Middleware" /> <data-value name="WLS_INSTALL_DIR" value="/Users/xxx/Oracle/Middleware/wlserver_12.1" /> <data-value name="COMPONENT_PATHS" value="WebLogic Server/Core Application Server|WebLogic Server/Administration Console|WebLogic Server/Configuration Wizard and Upgrade Framework|WebLogic Server/Web 2.0 HTTP Pub-Sub Server|WebLogic Server/WebLogic JDBC Drivers|WebLogic Server/Third Party JDBC Drivers|WebLogic Server/WebLogic Server Clients|WebLogic Server/Xquery Support|Oracle Coherence/Coherence Product Files" /> <data-value name="LOCAL_JVMS" value="/Library/Java/JavaVirtualMachines/jdk1.7.0_09.jdk/Contents/Home" /> </input-fields> </bea-installer>
- インストール時の詳細なログの取得
- -logオプションを付加することで詳細なログを取得できますので、必要に応じてこれを追加します。
検証結果
まずは結論から。以下のマトリックスを参照ください。
ZIP版 | OS X専用版 | Generic版 | ||||||
---|---|---|---|---|---|---|---|---|
OS | JDK | GUI | CUI | Silent | GUI | CUI | Silent | |
10.7 | Apple JDK6 | ◯ | ◯ | × | ◯ | △ | △ | △ |
Oracle JDK7 | ◯ | × | × | × | × | × | × |
△ : 若干の難ありだが、インストール可能
× : インストール不可
項目ごとのポイント
すべてのパターンを網羅的に説明すると膨大になってしまうので、項目ごとに説明していきます。
それでも非常に長くなるため、最後のまとめへ飛んでいただいて構いません…
JDK
- Apple JDK6
- Oracle JDK7
-
- CUIモードやSilentモードで進めても、実際のインストール時にエラーになってしまいます。
- Silentモードでのエラー例
- CUIモードやSilentモードで進めても、実際のインストール時にエラーになってしまいます。
Extracting scripts to /var/folders/fv/xxx/T/ Executing MacOS-specific pre-installation scripts Extracting 0%....................................................................................................100% log4j:WARN Failed to set property conversionPattern to value "%d [%t] %-5p - %m%n". null log4j:WARN Failed to set property conversionPattern to value "%d [%t] %-5p - %m%n". null ファイルのインストール中に致命的なエラーが発生しました。インストーラはクリーン・アップして終了します。
Exception in thread "main" java.lang.AssertionError: Platform not recognized at sun.nio.fs.DefaultFileSystemProvider.create(DefaultFileSystemProvider.java:73) at java.nio.file.FileSystems$DefaultFileSystemHolder.getDefaultProvider(FileSystems.java:108) at java.nio.file.FileSystems$DefaultFileSystemHolder.access$000(FileSystems.java:89) at java.nio.file.FileSystems$DefaultFileSystemHolder$1.run(FileSystems.java:98) at java.nio.file.FileSystems$DefaultFileSystemHolder$1.run(FileSystems.java:96) at java.security.AccessController.doPrivileged(Native Method) at java.nio.file.FileSystems$DefaultFileSystemHolder.defaultFileSystem(FileSystems.java:95) at java.nio.file.FileSystems$DefaultFileSystemHolder.<clinit>(FileSystems.java:90) at java.nio.file.FileSystems.getDefault(FileSystems.java:176) at sun.util.calendar.ZoneInfoFile$1.run(ZoneInfoFile.java:483) at sun.util.calendar.ZoneInfoFile$1.run(ZoneInfoFile.java:478) at java.security.AccessController.doPrivileged(Native Method) at sun.util.calendar.ZoneInfoFile.<clinit>(ZoneInfoFile.java:477) at sun.util.calendar.ZoneInfo.getTimeZone(ZoneInfo.java:663) at java.util.TimeZone.getTimeZone(TimeZone.java:571) at java.util.TimeZone.setDefaultZone(TimeZone.java:668) at java.util.TimeZone.getDefaultRef(TimeZone.java:635) at java.util.TimeZone.getDefault(TimeZone.java:622) at java.text.SimpleDateFormat.initializeCalendar(SimpleDateFormat.java:682) at java.text.SimpleDateFormat.<init>(SimpleDateFormat.java:581) at java.text.MessageFormat.makeFormat(MessageFormat.java:1496) at java.text.MessageFormat.applyPattern(MessageFormat.java:479) at java.text.MessageFormat.<init>(MessageFormat.java:363) at com.bea.plateng.common.util.logging.Jdk14Logger$DefaultFormatter.<init>(Jdk14Logger.java:404) at com.bea.plateng.common.util.logging.Jdk14Logger$DefaultFormatter.<init>(Jdk14Logger.java:416) at com.bea.plateng.common.util.logging.Jdk14Logger.addDestination(Jdk14Logger.java:350) at com.bea.plateng.wizard.WizardController.setupWizardLog(WizardController.java:373) at com.bea.plateng.wizard.WizardController.<init>(WizardController.java:168) at com.bea.plateng.wizard.WizardHelper.invokeWizard(WizardHelper.java:161) at com.bea.plateng.wizard.WizardHelper.invokeWizardAndWait(WizardHelper.java:42) at com.bea.plateng.wizard.WizardController.main(WizardController.java:933)
インストーラ
- ZIP版
- 問題なくインストールできます。海外でも何人かの方が試した結果をブログに載せていますが、Javaエバンジェリストである[twitter:@arungupta]さんの"Get Started with Oracle WebLogic Server 12c - Using Zip Installer (TOTD #174) (Arun Gupta, Miles to go ...)"が私としては一番分かりやすかったです。
[~]$ LC_ALL=C; export LC_ALL [~]$ $JAVA_HOME/bin/java -jar $INSTALLER_JAR -mode=console Extracting scripts to /var/folders/fv/xxx/T/ Executing MacOS-specific pre-installation scripts Extracting 0%....................................................................................................100% <----------- Oracle Installer - Oracle Enterprise Pack for Eclipse -----------> Welcome: -------- This installer will guide you through the installation of Oracle Enterprise Pack for Eclipse. Type "Next" or enter to proceed to the next prompt. If you want to change data entered previously, type "Previous". You may quit the installer at any time by typing "Exit". Enter [Exit][Next]> Next
スレッドダンプを取得すると、ファイル読み込み待ちのまま延々と待っていますが、何のファイルかは不明です。
"Console Controller" daemon prio=5 tid=0x00007fa365057800 nid=0x4b03 runnable [0x000000010d34b000] java.lang.Thread.State: RUNNABLE at java.io.FileInputStream.readBytes(Native Method) at java.io.FileInputStream.read(FileInputStream.java:242) at java.io.BufferedInputStream.read1(BufferedInputStream.java:273) at java.io.BufferedInputStream.read(BufferedInputStream.java:334) - locked <0x00000007f6d822d8> (a java.io.BufferedInputStream) at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:283) at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:325) at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:177) - locked <0x00000007f6d86388> (a java.io.InputStreamReader) at java.io.InputStreamReader.read(InputStreamReader.java:184) at java.io.BufferedReader.fill(BufferedReader.java:154) at java.io.BufferedReader.readLine(BufferedReader.java:317) - locked <0x00000007f6d86388> (a java.io.InputStreamReader) at java.io.BufferedReader.readLine(BufferedReader.java:382) at com.bea.plateng.wizard.ConsoleContext$ConsoleController.run(ConsoleContext.java:823) at java.lang.Thread.run(Thread.java:722)
- Generic版
- 通常のまま実行すると、ディスクの空き領域検出で失敗します。
Extracting 0%....................................................................................................100% Insufficient disk space! The installer requires: 185MB for the BEA Home at /Users/xxx/Oracle/Middleware, 294MB for the product at /Users/xxx/Oracle/Middleware/coherence_3.7,/Users/xxx/Oracle/Middleware/utils/uninstall/WebLogic_Platform_12.1.1.0,/Users/xxx/Oracle/Middleware/wlserver_12.1 and 1071MB temporary work space at /var/folders/fv/xxx/T/beaxxx.tmp. There is only 1MB available at /Users/xxx/Oracle/Middleware/wlserver_12.1.
-
- -logオプションで取得したログを確認すると"ERROR:unknown OS"とみなされていることが分かります。
2012-12-09 17:38:30,025 ERROR [WizardController] com.bea.plateng.common.util.DetectFreeSpace - INSTALLER ERROR:unknown OS
-
- この動作を回避するためには、"-Dos.name=unix"を付加してインストーラを起動します。
[twitter:@yusuke]さんの"http://samuraism.jp/diary/2007/04/10/1176132478922.html"辺りが参考になります。
- この動作を回避するためには、"-Dos.name=unix"を付加してインストーラを起動します。
インストールモード
- GUIモード
- CUIモード
- Apple JDK6では文字化けするので、前述のように"LC_ALL=C; export LC_ALL"してから実行してください。
また、日本語環境だとウィザード画面でPreviousやExitが効かず、先にしか進めません。- この場合、インストールを行わず終了するにはCtrl+Cで強制停止するしかありません。
そうするとクリーンアップが行われないので、一時フォルダ(デフォルトで、/var/folders/fv/xxx/T/beaxxxのようになる)を適宜削除してください。
- この場合、インストールを行わず終了するにはCtrl+Cで強制停止するしかありません。
- Apple JDK6では文字化けするので、前述のように"LC_ALL=C; export LC_ALL"してから実行してください。
- Silentモード
- ターミナル上は進行状況が分からなく不安になるので、実行時に-logオプションを付加してログを取得した方がよいです。ログには警告(WARN)がかなり出力されますが、最後に以下のように出力されていれば問題ありません。
2012-12-09 17:48:19,546 INFO [WizardController] com.bea.plateng.wizard.silent.tasks.LogTask - The installation was successfull!
インストール後
ドメイン作成
- インストールが正常に完了すれば、ドメインの作成などは問題なく行えます。
- ドメイン構成ウィザードはインストール後のQuickStartから起動できます。それ以降に作成する場合は"$WL_HOME/common/bin/config.sh"を実行してください。
- ドメイン作成時に「本番モード」を指定したときは、WLS起動前に別途boot.propertiesを事前作成してください。
- boot.propertiesの詳細については、以前にWebLogic Server勉強会で発表した資料を参照ください。
- 通常は起動時にパスワードを入力できますが、Mac用のネイティブライブラリがないため、パスワードを安全に入力できないとみなされるからです。
<2012/12/09 17時51分55秒 JST> <Info> <Security> <BEA-090065> <ユーザーから起動アイデンティティを取得しています。> WebLogic Serverを起動するためのユーザー名を入力してください:weblogic <2012/12/09 17時51分58秒 JST> <Error> <Security> <BEA-090782> <サーバーは本番モードで実行されています。コマンドラインからパスワードを安全に読み取るためのネイティブ・ライブラリ(terminalio)が見つかりません。> <2012/12/09 17時51分58秒 JST> <Notice> <WebLogicServer> <BEA-000388> <JVMによりWebLogic Serverの停止フックが呼び出されました。サーバーは強制停止されます。> <2012/12/09 17時51分58秒 JST> <Alert> <WebLogicServer> <BEA-000396> <<WLS Kernel>からサーバーをshutdownするようリクエストされました。> <2012/12/09 17時51分58秒 JST> <Notice> <WebLogicServer> <BEA-000365> <サーバー状態がFORCE_SHUTTING_DOWNに変化しました。>
起動
- ドメイン作成後はWLSを起動しましょう。"$DOMAIN_HOME/bin/startWebLogic.sh"を実行してください。
- 専用のネイティブライブラリがMac版にはありませんのでいくつか警告が出力されますが、開発用途なので特に無視して問題ないはずです。
. . JAVA Memory arguments: -Xms256m -Xmx512m -XX:CompileThreshold=8000 -XX:PermSize=128m -XX:MaxPermSize=256m . WLS Start Mode=Development . CLASSPATH=/Users/xxx/Oracle/Middleware/patch_wls1211/profiles/default/sys_manifest_classpath/weblogic_patch.jar:/Users/xxx/Oracle/Middleware/patch_ocp371/profiles/default/sys_manifest_classpath/weblogic_patch.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_09.jdk/Contents/Home/lib/tools.jar:/Users/xxx/Oracle/Middleware/wlserver_12.1/server/lib/weblogic_sp.jar:/Users/xxx/Oracle/Middleware/wlserver_12.1/server/lib/weblogic.jar:/Users/xxx/Oracle/Middleware/modules/features/weblogic.server.modules_12.1.1.0.jar:/Users/xxx/Oracle/Middleware/wlserver_12.1/server/lib/webservices.jar:/Users/xxx/Oracle/Middleware/modules/org.apache.ant_1.7.1/lib/ant-all.jar:/Users/xxx/Oracle/Middleware/modules/net.sf.antcontrib_1.1.0.0_1-0b2/lib/ant-contrib.jar:/Users/xxx/Oracle/Middleware/wlserver_12.1/common/derby/lib/derbyclient.jar:/Users/xxx/Oracle/Middleware/wlserver_12.1/server/lib/xqrl.jar . PATH=/Users/xxx/Oracle/Middleware/wlserver_12.1/server/bin:/Users/xxx/Oracle/Middleware/modules/org.apache.ant_1.7.1/bin:/Library/Java/JavaVirtualMachines/jdk1.7.0_09.jdk/Contents/Home/jre/bin:/Library/Java/JavaVirtualMachines/jdk1.7.0_09.jdk/Contents/Home/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin . *************************************************** * To start WebLogic Server, use a username and * * password assigned to an admin-level user. For * * server administration, use the WebLogic Server * * console at http://hostname:port/console * *************************************************** starting weblogic with Java version: java version "1.7.0_09" Java(TM) SE Runtime Environment (build 1.7.0_09-b05) Java HotSpot(TM) 64-Bit Server VM (build 23.5-b02, mixed mode) Starting WLS with line: /Library/Java/JavaVirtualMachines/jdk1.7.0_09.jdk/Contents/Home/bin/java -client -Xms256m -Xmx512m -XX:CompileThreshold=8000 -XX:PermSize=128m -XX:MaxPermSize=256m -Dweblogic.Name=AdminServer -Djava.security.policy=/Users/xxx/Oracle/Middleware/wlserver_12.1/server/lib/weblogic.policy -Xverify:none -Djava.endorsed.dirs=/Library/Java/JavaVirtualMachines/jdk1.7.0_09.jdk/Contents/Home/jre/lib/endorsed:/Users/xxx/Oracle/Middleware/wlserver_12.1/endorsed -da -Dplatform.home=/Users/xxx/Oracle/Middleware/wlserver_12.1 -Dwls.home=/Users/xxx/Oracle/Middleware/wlserver_12.1/server -Dweblogic.home=/Users/xxx/Oracle/Middleware/wlserver_12.1/server -Dweblogic.management.discover=true -Dwlw.iterativeDev= -Dwlw.testConsole= -Dwlw.logErrorsToConsole= -Dweblogic.ext.dirs=/Users/xxx/Oracle/Middleware/patch_wls1211/profiles/default/sysext_manifest_classpath:/Users/xxx/Oracle/Middleware/patch_ocp371/profiles/default/sysext_manifest_classpath weblogic.Server <2012/12/09 18時43分07秒 JST> <Info> <Security> <BEA-090905> <起動パフォーマンスを向上するためにCryptoJ JCEプロバイダ自己整合性チェックを無効にしています。このチェックを有効にするには、-Dweblogic.security.allowCryptoJDefaultJCEVerification=trueを指定します> <2012/12/09 18時43分08秒 JST> <Info> <Security> <BEA-090906> <RSA CryptoJのデフォルトの乱数ジェネレータをECDRBGからFIPS186PRNGに変更しています。この変更を無効にするには、-Dweblogic.security.allowCryptoJDefaultPRNG=trueを指定します> <2012/12/09 18時43分08秒 JST> <Info> <WebLogicServer> <BEA-000377> <WebLogic ServerをOracle CorporationからJava HotSpot(TM) 64-Bit Server VMバージョン23.5-b02で起動しています。> <2012/12/09 18時43分09秒 JST> <Info> <Management> <BEA-141107> <バージョン: WebLogic Server Temporary Patch for 13340309 Thu Feb 16 18:30:21 IST 2012 WebLogic Server Temporary Patch for 13019800 Mon Jan 16 16:53:54 IST 2012 WebLogic Server Temporary Patch for BUG13391585 Thu Feb 02 10:18:36 IST 2012 WebLogic Server Temporary Patch for 13516712 Mon Jan 30 15:09:33 IST 2012 WebLogic Server Temporary Patch for BUG13641115 Tue Jan 31 11:19:13 IST 2012 WebLogic Server Temporary Patch for BUG13603813 Wed Feb 15 19:34:13 IST 2012 WebLogic Server Temporary Patch for 13424251 Mon Jan 30 14:32:34 IST 2012 WebLogic Server Temporary Patch for 13361720 Mon Jan 30 15:24:05 IST 2012 WebLogic Server Temporary Patch for BUG13421471 Wed Feb 01 11:24:18 IST 2012 WebLogic Server Temporary Patch for BUG13657792 Thu Feb 23 12:57:33 IST 2012 WebLogic Server 12.1.1.0 Wed Dec 7 08:40:57 PST 2011 1445491 > <2012/12/09 18時43分10秒 JST> <Notice> <WebLogicServer> <BEA-000365> <サーバー状態がSTARTINGに変化しました。> <2012/12/09 18時43分10秒 JST> <Info> <WorkManager> <BEA-002900> <自動チューニング・スレッド・プールを初期化しています。> <2012/12/09 18時43分10秒 JST> <Notice> <Log Management> <BEA-170019> <サーバー・ログ・ファイル/Users/xxx/Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/logs/AdminServer.logを開きました。すべてのサーバーサイド・ログ・イベントはこのファイルに書き込まれます。> <2012/12/09 18時43分10秒 JST> <Error> <Socket> <BEA-000438> <パフォーマンス・パックをロードできません。かわりにJava I/Oを使用しています。Please ensure that libmuxer library is in :'/Users/xxx/Oracle/Middleware/patch_wls1211/profiles/default/native:/Users/xxx/Oracle/Middleware/patch_ocp371/profiles/default/native:/Users/xxx/Oracle/Middleware/wlserver_12.1/server/native/macosx:/Users/xxx/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:.' > <2012/12/09 18時43分13秒 JST> <Notice> <Security> <BEA-090082> <セキュリティはセキュリティ・レルムmyrealmを使用して初期化しています。> <2012/12/09 18時43分14秒 JST> <Warning> <Store> <BEA-280109> <永続ファイル・ストア"_WLS_AdminServer"のネイティブのwlfileioライブラリをロードできません。ストアはバッファされたI/Oを使用します。ストアは、まだトランザクション上安全な同期モードで動作しています。リクエストされた書込みポリシーおよび最終的な書込みポリシーを調べるには、ストアのオープン・ログ・メッセージを参照してください。> <2012/12/09 18時43分15秒 JST> <Notice> <WebLogicServer> <BEA-000365> <サーバー状態がSTANDBYに変化しました。> <2012/12/09 18時43分15秒 JST> <Notice> <WebLogicServer> <BEA-000365> <サーバー状態がSTARTINGに変化しました。> <2012/12/09 18時43分15秒 JST> <Notice> <Log Management> <BEA-170027> <サーバーはドメイン・レベルの診断サービスとの接続を正常に確立しました。> <2012/12/09 18時43分16秒 JST> <Notice> <WebLogicServer> <BEA-000365> <サーバー状態がADMINに変化しました。> <2012/12/09 18時43分16秒 JST> <Notice> <WebLogicServer> <BEA-000365> <サーバー状態がRESUMINGに変化しました。> <2012/12/09 18時43分16秒 JST> <Notice> <Server> <BEA-002613> <チャネル"Default"は、現在127.0.0.1: 7001でプロトコルiiop, t3, ldap, snmp, httpをリスニングしています。> <2012/12/09 18時43分16秒 JST> <Notice> <WebLogicServer> <BEA-000331> <ドメイン"base_domain"で、WebLogic Server管理サーバー"AdminServer"を開発モードで起動しました。> <2012/12/09 18時43分16秒 JST> <Notice> <WebLogicServer> <BEA-000365> <サーバー状態がRUNNINGに変化しました。> <2012/12/09 18時43分16秒 JST> <Notice> <WebLogicServer> <BEA-000360> <サーバーがRUNNINGモードで起動しました。>
まとめ
*1:WLS10.3での非公式ハックは[twitter:@yusuke]さんの"http://samuraism.jp/diary/2008/09/20/1221842883416.html"を参照ください。
*2:Certification Matrixには10.3.6と記載されていますが、10.6が正しいはずです。
*3:Oracle JDK7のインストール場所が、"which java"などでは分からず"find / -name java"で探してしまいました。詳細は[twitter:@aoetk]さんの"謎なMacのJavaインストール構成 - AOEの日記"を参照ください。
*4:「Java Preferences」がなくなった経緯は"「JavaはOracleから直接入手を」、Apple経由のプラグインに削除措置 - ITmedia エンタープライズ"を参照ください。
*5:Unix系OSではLANG環境変数に設定するのが一般的な解決策だと思いますが、LC_ALLに設定する必要がありました。localeコマンドを実行しても他のLC_*系変数が悪さをしてるようには見えず、よく分かってません…