prog

CentOS に Jenkins と Maven

VirtualBox 上の CentOS 5.6 に、Jenkins と Maven を入れるメモ。WebDAV で共有リポジトリも作る。あちこちのサイトの切り貼り。

StatusNet の API を呼ぶ

メモ。

Qt は死んだ。Java ME も死んだ

Nokia が Windows Phone を採用することを発表した。あわせて、これまで Nokia の Symbian 携帯でアプリケーション開発フレームワークとして利用されてきた Qt は、Nokia 製の Windows Phone には載らないことが判明している。 Nokia to developers: no Qt f…

ポートレットの作り方 (Jetspeed 2 編)

Jetspeed 2 は、Java Portlet Specification 1.0 (JSR-168) および 2.0 (JSR-286) に対応したポートレットコンテナ。

なんでウィジェットには標準がないの

いまだに、新しいプログラミング言語とか OS ができるたびに、GUI 周りが再発明されるのはなんでなんだろう。再発明するほどオリジナリティがあるわけでもないのに。 どう見ても同じウィジェットなのに UpDown だったり Spinner だったりまた違う名前だった…

HTML 5 と Java 2 が似ている気がする

「HTML 5 ではいろんなウィジェットが追加されるんですよ。<canvas /> もあるから最悪自前で描画して新しいウィジェット作ったりもできるしね」 「HTML 5 ならスマートフォンでも動かせちゃうんだぜ」 「まぁ仕様がでっかくなり過ぎてる気もするけど、そこはほら、実際</canvas>…

Java: JDK 6u21 以降 + Eclipse 3.x で "OutOfMemoryError: PermGen space" が発生する場合の対処方法

先日リリースされた JDK 6u21 上で Eclipse を使うと、 java.lang.OutOfMemoryError: PermGen space というエラーが発生することがある。このメッセージはエラーダイアログに表示されたり、ワークスペース内のログファイルに出力されたりする。 というような…

Java: PermGen はヒープの外

今頃知った。PermGen も普通にヒープ内だと思ってました。

Java: 公式サイトが引越し中

Java の開発者向け公式サイトはこれまで http://java.sun.com という URL で運営されていたが、7 月中に Oracle のサイトへ引っ越すらしい。新しい URL は http://www.oracle.com/technetwork/java/index.html になる。すでにトップページは存在している。

Java: くらえ! 静的初期化子 (スタティック・イニシャライザ)ーーーッ!!!

久々に Java の文法で「あれ、これどうだっけ?」というのが出てきた。きっと SJC-P (今だと OJC-P?) 受けた人なんかには常識の範囲なのだろうけど。静的初期化子。static 初期化子とかスタティック・イニシャライザと表記されることもある。以下は、今日時点…

Safari 拡張機能を開発する用の証明書を作った

明日には忘れてそうなので、作ったことだけメモしておこう。どうせ実際作る前に飽きるし。 ドキュメント記載の手順にしたがって、キーチェーンアクセスから CSR を作った (メニューのキーチェーンアクセス→証明書アシスタント→認証局に証明書を要求) この時…

Java: Apache MINA と Spring の統合などに関するドキュメンテーションの日本語訳

短めのページを 3 つ翻訳完了。まぁ、完了っていっても見直しとか校正とかしてないんだけど。 Spring との統合 http://wiki.github.com/sardine/mina-ja/spring コーデック集 http://wiki.github.com/sardine/mina-ja/757140 パケット断片化のハンドリング h…

Java: Apache MINA の IoBuffer に関するドキュメンテーションの日本語訳

職場で若手の人と話していたら、「PC エンジンですか? すみません、ファミコンくらいならなんとか知ってるんですけど、それより古いのはちょっと……」とか言われた。PC エンジンの方が新しいということ自体知らなかったということだ。ショック。ジェネレーシ…

Java: Apache MINA で独自プロトコルを実装するチュートリアルの日本語訳

Apache MINA の ProtocolCodecFilter を使うと、任意のプロトコルをさくっと実装して、クライアント/サーバを作ることができる。チュートリアルと、関連するパッケージの API リファレンスは日本語に翻訳完了。 ProtocolCodecFilter チュートリアル (MINA 2.…

Java: Apache MINA 2.0 のドキュメンテーション日本語訳

Apache MINA は、ネットワークアプリケーションを開発するためのフレームワークで、サーバ/クライアントの両方をサポートしている。Apache Software Foundation が開発しているいくつかのソフトウェア (Apache Directory など) でも採用されているが、日本語…

.NET: はじめての MEF

Managed Extension Framework (MEF) は、いわゆる「プラグイン」とか「アドイン」とか呼ばれてる仕組みを .NET 上で簡単に実現するためのフレームワークで、.NET Framework 4 で新たに追加された。Visual Studio 2010 の「アドイン」は、この MEF を使用して…

C#: 環境変数 PATH や CLASSPATH の値をチェックするツールを書いてみる

すごく昔 (id:sardine:2006033) にやったことの C# 版。www.toyfish.blog短いコードでリハビリをするのだの巻。

Java: Eclipse 3.5.2 (Galileo SR2) はデフォルトのままで NTLM 認証をパスできるようになった

以前の記事で、Eclipse 3.5 (Galileo) で NTLM 認証の必要なプロキシを通過できない現象について説明した。 今月リリースされた Eclipse 3.5.2 (Galileo SR2) では、デフォルトでも NTLM 認証をパスできるようになったようだ。

Titanium Desktop でデスクトップアプリを作る

@IT で始まった下記連載で、Titanium という開発ツールが紹介されている。 Web技術でネイティブアプリを作れるTitanium http://www.atmarkit.co.jp/fwcr/design/index/index_titanium.html 連載のメインディッシュは Titanium Mobile を使った iPhone/Androi…

Java: currentTimeMillis() と nanoTime() は混ぜると危険

前回書いた、ScheduledThreadPoolExecutor だとズレが生じる現象についてだけど、どうやら時間の精度が問題だったらしい。 java.lang.System には、現在日時をミリ秒単位で取得する currentTimeMillis() と、ナノ秒単位で取得する nanoTime() があるけど、こ…

Java: scheduleAtFixedRate() の正確さ

Java で一定時間ごとに何かを行いたい場合、java.util.Timer か java.util.concurrent.ScheduledThreadPoolExecutor のいずれかで、scheduleAtFixedRate() メソッドを使う。 後者の方が新しい API で機能的に充実しているんだけど、ある環境で試したら「指定…

GAE/J: セッション破棄時の処理は行われない

全部ちゃんと検証したわけじゃないんだけど、Google App Engine for Java (GAE/J) では、 javax.servlet.http.HttpSessionListener がサポートされていない javax.servlet.http.HttpSessionに格納したデータは、削除されずにデータストアに残り続ける らしい…

GAE がサポートしているログイン情報の使い道がわからない

GAE の API に、Google のユーザ情報と連携する機能があるけど、あれって何に使えばいいんだろうか。 API の作りとしてはメールアドレスが ID の代わりになっていて、メールアドレスに対応しているユーザの情報を取得するとか、逆にユーザのメールアドレスを…

GAE/J はとっくに一般公開されている

Google App Engine (GAE) では、最初は Python しか使えなくて、Java は後から使えるにようになった。 日本語版の開発者向け情報ページを見ると、Java の実行については「現在のところ、先着 10,000 名のデベロッパーの登録に制限していますが、できるだけ早…

ba 作成の参考にしたページ

今日使ったページをメモ。

Mac OS X Java 6 で GWT 開発をする場合の注意点

以前の日記で、Mac 上の Java 6 環境で GWT 開発を行う場合に、Hosted Mode が使えないことを書いた。 が、バージョンアップで対応が行われたようだ。

ブラウザを JavaScript (+HTML) で拡張する話

ブラウザの機能を拡張する場合、ネイティブなプログラムを使うもの (ActiveX オブジェクト、NSAPI プラグイン) だったりそれを JavaScript で模倣したもの (XPCOM ベースの拡張) だったりと、これまではそれなりに面倒な開発が必要だった。けど、今の流行り…

僕「これ Java 5 で動かして」Mac「おっけー、Java 6 で動かすね」

ふと、Google Web Tookit (GWT) を使ってみる気になった。Eclipse 上で開発できるらしい。 が、Mac OS X 10.6 (Snow Leopard) だと、現時点ではそれは無理なようだ。

Fluid 系で HTML 系で UI 系

java.sun.com のトップに、JSR-290 についての screencast が出ていた。

Java: 画像をいじりたい

画像に対してエフェクトをかけるためのライブラリを探し中。 最終的にはアニメーションさせたりもしてみたい。