Sun Java System Calendar Serverに以下の2つの脆弱性が報告されています。
#256228: Cross-Site Scripting (XSS) Vulnerability in Sun Java System Calendar Server
前者はXSS脆弱性で、6.3以前のバージョンが対象。後者はDoS攻撃に対する脆弱性で、バージョン6.3のみが対象となっています。双方ともパッチが公開されています。
Sun Java System Calendar Serverに以下の2つの脆弱性が報告されています。
#256228: Cross-Site Scripting (XSS) Vulnerability in Sun Java System Calendar Server
前者はXSS脆弱性で、6.3以前のバージョンが対象。後者はDoS攻撃に対する脆弱性で、バージョン6.3のみが対象となっています。双方ともパッチが公開されています。
Javaアプリケーションのモニタリング/プロファイリングツールであるVisualVM 1.1.1に多言語版ができ、日本語と中国語(簡体字)に対応しました。
https://visualvm.dev.java.net/
ドキュメントもGetting StartedとIntroduction to VisualVMの翻訳版が掲載されていますね。
Google App EngineがJavaをサポートするという件についてTech Crunchに記事が上がっています。正式なアナウンスは5月末のGoogle I/O conferenceで行われる予定とのこと。
http://jp.techcrunch.com/archives/20090326get-ready-for-java-on-appengine/
Javaに対応するという報道は去年もあって、10月にGoogleからその報道を否定する声名が出されたことが記憶に新しいです。次に噂になったのが今年の1月か2月頭くらいだったか、何かの打ち合わせで編集者さんとその話をした記憶があるので大体その辺りのことでしたが、ちょっとソースを失念してしまいました。3月以降にとかそんな感じの噂だったと思います。今回の記事も噂以上のソースが示されていないようですけど、先の否定コメントでもPython以外の言語に取り組んでいること自体は認めているので、市場の背景を考えれば(時期はともかくとして)Javaがサポートされることそのものに対する信憑性は高いように思えます。個人的にも今回の報道が本当であって欲しいと切に願います。
さっきの投稿の補足です。OpenJDKのサイトに掲載されているJava SE 7のフィーチャーリストは以下のようになっています。
MYCOM Journalにもレポートが載ってますが、覚え書き程度に補足しておきます。12月の発表のときの情報と被る部分もありますが(当時はブログ書いてなかったので)。
Compressed 64bit Object Pointerっていうのはこの辺りで言及されていた話に関連するもので、64bit JVMを使う場合2Gや4G以上のメモリ空間を使えるわけだけれど、そうするとメモリの消費効率が悪くなる。なので64bit JVMでもアドレッシングを圧縮してその問題を回避できるようにしようということのようです。これはすでにJDK 7に実装されていて、G1-GC同様にJDK 6にもバックポートされています。
モジュラリティについてはJSR 294とProject Jigsawの2つがありますが、前者は高レベルの、後者は低レベルのモジュラリティを対象としているとのことです。以前この記事でモジュラリティサポートの経緯について少し触れたのですが、ちょうどこの記事の入稿と前後する時期にJSR 294の再度の見直しがスペックリードのAlex Buckley氏から提案されて、結果としてコンパイル時/ランタイム時双方のモジュラリティをカバーする仕組みを構築するという方向でまとまったようです。あのときReinhold氏は「新しい動きがある」と話していましたが、Jigsawだけでなくこれのことも含まれていたんですね。ちょっと誤解していました。新しいJSR 294は既存のパッケージシステムの問題を解決することを目的としていて、当初のJSR 294とJSR 277と方向性としては同じものですかね。
URLClassLoaderについてはこれもつい最近Michael McMahon氏が言及していました。URLClassLoaderでクラスをロードした場合に、JARファイルを閉じる手段が無くてオブジェクトが開放できないので、これを解決するためにclose()メソッドを付け加えたというものです。JDK 7にはb48で実装済みです。
XRender pipeline for Java 2DというのはJava 2Dのパイプライン処理にX11で提供されるXRender拡張を使えるようにするというもの。これによってGPUの性能をもっと活かせるようになるとのことです。Swing関連ではJXLayerやDataPickerが挙げられていますが、残念ながらJWebPaneについては触れられていませんね。*1
でも実は今一番気になっているのは技術的なことよりもSunの買収騒動の方ですね。政治的な話はともかくとして、Java 7の開発に影響するんじゃないかというのが。
JDK/JRE 6 Update 13、JDK/JRE 5.0 Update 18、J2SDK/JRE 1.4.2_20*1、J2SDK/JRE 1.3.1_25がそれぞれリリースされました。ちょうど昨日チェックして気づいたんですが書くのを忘れてました。
http://java.sun.com/javase/ja/6/download.html
以下の7つの脆弱性の修正が含まれています。
-
OpenJDKのサイト上にて、Mark Reinhold氏によってJDK 7の新しいリリーススケジュールとフィーチャーリストが公開されました。
http://openjdk.java.net/projects/jdk7/
http://openjdk.java.net/projects/jdk7/features/
スケジュールは以下の通り。
原則として1週間に1ビルド、7ビルド毎に1マイルストーンマイルストーンとするのは従来通りで、最終的にはM8まで予定されています。M8はRCがリリースされるまで続けられるとのことですが、予定では大体4~8週間とのこと。それからRCを経て最終リリースとなるので、実際のリリースは2010年第二四半期くらいになるでしょうか。上記サイトで、各サイクルで実装される機能についても明らかにされています。
ちなみに、すっかり書くのを忘れていましたが先週b51がリリースされています。
SunがGlassFishをバンドルしたEclipseをリリースしたそうです。GlassFish Plugin for Eclipseを利用したものです。
http://blogs.sun.com/ontherecord/entry/new_glassfish_tools_bundle_for
最初起動しようとしたらエラー吐くから何かと思ったら、eclipse.iniにセットされてる-Xmxの値(768m)が原因でした。試したのが貧弱なWindowsマシンだったので物理メモリが足りてなかったんですね。ちなみに日本語化はPleiadesを使えば可能です。
Q:「もしJavaに対して何でもできる魔法の杖を持っていたら何がしたい?」
A:「JWebPaneを通してWebKitをJavaプラットフォームに取り込みたいね」
JWebPaneは昨年構想が発表されたSwing(そしてJavaFX)のためのコンポーネントで、WebKitを利用してJavaアプリケーションにWebブラウザ機能を持たせることができるようにしようというものです。多くの人が待ち望んでいたであろう試みなのですが、残念ながら発表以来ほとんど情報が出てきておらず、どこまで開発が進んでいるのかいまいちよくわかりません。
JWebPaneのアーキテクチャについては、プロジェクトリードであるAlexey Ushakov氏のブログで少しだけ言及されています(これももう数ヶ月前のことですが)。
JWebPane project, a browser plugin for Swing and soon FX | Java.net
要するにWebKitで提供されるレンダリング、ネットワーキング、タイマー、イベントの各APIに対して、JNIを利用してJavaプログラムとの橋渡しをする実装を用意するということです。これ自体はごく自然な発想ですね。まずはそれをベースとし、JavaScriptやDOMアクセスなどについては後から追加するとのことです。
James Strachan氏も指摘しているように、完成度にこだわらずとにかく早く最初のリリースをして欲しいというのが開発者の本音でしょう。ベースになるものが公開されればコミュニティが開発を手助けできるので、完全な実装である必要はないわけですね。Alexey Ushakov氏のコメントによると、具体的なスケジュールはまだ示せないものの、公開のためのライセンスに関する問題はすでに解決しており、マーケティング上の決定を待っている段階だとのことです。とりあえず開発の進捗くらいは知りたいところです。
JavaFXによるアイデアとコーディングを競う「JavaFX Coding Challenge」がスタートしました。締め切りは5月29日です。1位には25000ドル、2位には10000ドル、3位には5000ドルの賞金が贈られるそうです。
日本JavaFXユーザグループが発足しました。JavaFXに関する日本語での交流の場を提供するのが主な目的とのことです。Google Groupsを利用したMLが開設されているので、早速登録しました。現状では言うほどJavaFXは使ってませんけどね。
Japan JavaFX User Group » Blog Archive » 日本JavaFXユーザグループはじめました
Seam Frameworkの下で開発が進められているJSR 299: Web Beansの参照実装ですが、先週、初のベータ版が公開されました。
http://seamframework.org/WebBeans
本リリースについては開発者の一人であるPete Muir氏のブログが詳しいです。
ちなみにWeb BeansにはWeb Beans: Java Contexts and Dependency Injectionというリファレンスガイドが用意されているのですが、Muir氏によると現在は英語の他にドイツ語、韓国語、中国語(繁体字)、スペイン語、イタリア語に翻訳されているそうです。日本語も加わらないかなあ。
Seam Frameworkの下で開発が進められているJSR 299: Web Beansの参照実装ですが、先週、初のベータ版が公開されました。
http://seamframework.org/WebBeans
本リリースについては開発者の一人であるPete Muir氏のブログが詳しいです。
ちなみにWeb BeansにはWeb Beans: Java Contexts and Dependency Injectionというリファレンスガイドが用意されているのですが、Muir氏によると現在は英語の他にドイツ語、韓国語、中国語(繁体字)、スペイン語、イタリア語に翻訳されているそうです。日本語も加わらないかなあ。
Java SE 6 Update 14 Early Accessの3番目のマイルストーンであるb03が公開されました。ざっとみた感じそれほど大きな変更はないようですが、Very Highな修正が2つとHighが結構な数含まれてますね。
jdk6: Java SE 6 Updates Early Access
ちなみにJDK7は先週b50が公開されました。
教育用のJava開発環境である「BlueJ」と「Greenfoot」が、オープンソースで公開されたそうです。ライセンスはクラスパス例外付きのGPLv2で、Sunがサポートするとのこと。
教育用Java開発環境「BlueJ」と「Greenfoot」がオープンソースに - SourceForge.JP Magazine
BlueJは以前聞いたことはあったけれど、実際に使ってみたことはないです。英語という時点で生徒にとっては敷居が高いので自分の授業では使えないだろうけど、参考になる部分があるかもしれないので試してみようと思います。
Java SE 6チームが、現在Early Accessが公開されているJava SE 6 Update 14をIE8で動かした場合のフィードバックを募集しているそうです。もし何らかのバグを発見した場合には、フォーラムに投げるかバグレポートを報告して欲しいとのことです。
http://blogs.sun.com/SDNProgramNews/entry/try_6u14_ea_with_ie
FreeBSD(やLinuxなど)でJDKを使う場合、GUIの日本語が豆腐になってしまって表示できないことがよくあります。特にNetBeansを使おうとしてこの問題にハマった人は多いと思います。Gihyo.jpのFreeBSD Dayly Topicsでその解決策が紹介されています。
Diablo-JDK16やJDK16の場合、これ以外にも次のようにfallbackのリンクを作る方法で回避できる場合もあります(OpenJDK6ではfallbackが有効でないためこの方法は使えません)。本質的な解決にはなっていませんが。
> ln -s /usr/local/lib/X11/fonts/TrueType ${JAVA_HOME}/jre/lib/fonts/fallback
JavaSE 6 Update 14の2つ目のEarly Accessであるbuild 02が公開されました。まだ細かくはチェックしていませんが、優先度がHighとVery-Highのバグ修正が結構含まれているようです。
https://jdk6.dev.java.net/6uNea.html
JDK 7のbuild b49がリリースされました。でもChengeLogが空っぽです。
Java Platform, Standard Edition 7 Binary Snapshot Releases
Apache MINAをベースにしてPure Javaで書かれたFtpServerだそうです。組込み用途などに良さそう。
Apache FtpServer 1.0.0 released - Apache MINA FtpServer - Apache Software Foundation
興味深いのはFtpletと呼ばれるAPIで、これを使えばFTPのコマンドに対応した独自の処理を追加するというようなことができるようです。例えばファイルがアップロードされた際に、その中身をチェックして何らかの処理を行ってから実際のディレクトリに配置するなんていう感じでしょうか。Apache FtpServerはFtpletのコンテナとして動作するので、開発者は独自のFtpletを作ってこれをFtpServer上にデプロイすることができます。いろいろ面白いことができそうな予感がしますね。