Java

Eclipse3.1 - J2SE 5.0 をサポート

http://itpro.nikkeibp.co.jp/free/ITPro/NEWS/20050630/163731/ ようやくっ!ようやく、Eclipse が J2SE 5.0 をサポートしてくれましたっ。 これで、いよいよ J2SE 5.0 が普及しだすかな。個人的には、J2SE 5.0 で一番おさえておくのはジェネリクスでも、fo…

Annotation + Aspect

先日の JavaWorld でちょろっと出た話なのですが、アノテーションの効果的な使い方だとおもったのが、アスペクト差込対象をアノテーションによって指定するというものがあります。AspectJ を使用した開発が明らかにはやっていない原因の一つとして、AspectJ …

AspectJ Tips!!

AspectJ の Tips を発見! Pretty Ruin (http://www.ncfreak.com/asato/doc/) AspectJ って結構マイナな技術なので*1、AspectJ ならではの技とかが、あまり世に出ていない感があります。 そんな中で、このページはなかなかのものがあるとおもうのですが。た…

JSF + Ajax

ここ最近、人気の高まりを見せている JSF と Ajax ですが、JSF 上で Ajax を利用するためのライブラリがあったりします。 AjaxFaces 1.0 (http://pcweb.mycom.co.jp/news/2005/06/07/025.html) JSF を使用してシステムを作ると、まるで GUI アプリを作ってい…

Bugdel (via: 「ほその日記」様)

ソースコードを記述してためしに実行するときや、バグを探すとき等にデバッグプリントを記述することは良くあると思います。 しかし、デバッグプリントを記述するには、当たり前ですが元のソースコードを編集しなければなりません。AspectJ をやり始めのころ…

Maven + AspectJ + Clover

最近、仕事で Maven を触ることがあったのですが、AspectJ プラグインと Clover プラグインの両方を同時に使えませんでした。 原因は、AspectJ プラグインも Clover プラグインもソースファイルに対して独自のコンパイラ(Clover の場合はプリプロセッサのよ…

Xerces と DOCTYPE と日本語フォルダ

数日前、フォルダ名に日本語を使用したがために、Xercesで激しく嵌りました・・・XML では DOCTYPE 中のシステム識別子などを以下のようにプロトコル名を省いて記述することができます。 この場合、'hoge.dtd' は DOCTYPE が宣言されているXMLファイルから…

Maven

最近、ちょっとだけ Maven をかじる機会がありました。いままでは Maven って、なんかめんどくさそうで敬遠していたのですが、ためしに使ってみるとなかなかよさげですね。 おもったよりも導入のコストも高くないですし。これを機に、何か機会があったら Mav…

Spring Framework が JMX をサポート (via: ネバーバード日記)

http://static.springframework.org/spring/docs/1.2/reference/ch20.htmlSpring 上で JMX のビーンを管理できるということなのかな? ちゃんと読んでいないから確かなことはいえないけどね。 JMX のビーンに対しても DI できるってことなら結構いいかも。MB…

Easy Wizard

http://d.hatena.ne.jp/zwfk/20050426/1114449906 http://www.superinterface.com/easywizard.htmちょっと変わったWebアプリ用ウィザード*1作成フレームワークです。 Webアプリを作るためのウィザードではなく、ウェブアプリ上でウィザードを作るためのフレ…

オブジェクトやクラスは呼び出すものじゃない

http://blog.netbeans.jp/roller/page/kishida/20050423激しく同意。 最近、他人のJavadocコメントをチェックする機会があったのですが、結構「〜クラスを呼び出し・・・」とかあったりして、突っ込みたくなります。インスタンスメソッドだったりしても、「…

サーバサイドでのGroovy

Groovyでサーバー側に対応する - GroovletsとGSPを使った即時対応のサーバー側プログラミングキタ─wwヘ√レvv〜(゜∀゜)─wwヘ√レvv〜─ !! やはりGroovyはこれから来ますよっ! まだちゃんと読んでいませんが、JavaのServletやJSPの代わりにGroovyが使…

Eclipse プラグイン - ファイル移動時のリソース変更イベント

フォルダ間やプロジェクト間でファイルを移動した場合に特定の処理を行なう必要がある場合、リソース変更イベントのフラグ値を調べることで、移動を感知することができます。ファイル移動の場合、IResourceChangeEvent.ADDED と IResourceChangeEvent.REMOVE…

Eclipse プラグイン - リソース変更デルタのフラグ

リソース変更デルタには、その変更がどのようなものであるのかといった情報をもったフラグも保持されています。 たとえば以下のコードにより、リソースの内容そのものに変更があったのかどうかを調べることができます。 if (ResourceInfo.isSet(resourceDelt…

Eclipse プラグイン - リソースの変更に失敗する場合

プラグインによってリソースが変更されている最中は、そのリソースはロックされているため他のプラグインが変更することは出来ません。 ロックされているリソースに対して変更を行なおうとした場合、「リソース・ツリーは修正中のため、ロックされています。…

Struts ファイルアップロードの罠

他でそのような情報をあまり見かけないため、それほど問題になっていないのかもしれませんが、前に Struts でファイルアップロードを扱ったときに発生した問題があります。 Struts では "multipart/form-data" なデータ*1が送られてきた場合に、リクエストプ…

Eclipse プラグイン - デフォルトでJavaプロジェクトに特定のネイチャを追加する方法

上述している「起動直後からアクティブにする方法」とリソースリスナを組み合わせることで、新規の Java プロジェクトに対して、自作のネイチャを自動で追加させることが可能になります。方法はいたって簡単。 プラグインを org.eclipse.ui.startup 拡張ポイ…

Eclipse プラグイン - ビルダとリソースリスナ

特定のファイルの記述内容チェックを行なうために当初はビルダを使用してチェックのタイミングとしていたのですが、プラグインを Eclipse 起動直後からでもアクティブにできることが分かったため、リソースリスナでもタイミング的には問題が無いことが発覚。…

Eclipse プラグイン - 起動直後からアクティブにする方法

通常、プラグインは必要になるまでアクティブにされません。これは、Eclipse 起動時の負荷を軽減するために行なわれているのですが、場合によっては Eclipse 起動直後からアクティブになって欲しいこともあります。この方法が最初見つからなくて悩んでいたの…

Eclipseプラグイン開発3日目

なぜか Eclipse のプラグイン作ってます。仕事です。まさか Eclipse のプラグインを作る日がくるとは思っていなかったので、大急ぎで知識を詰め込み中です。 以下のサイトのおかげもあって、なんとかひぃひぃいいながらつくってまつ。メインで作ってるのは私…

Jester

http://www-6.ibm.com/jp/developerworks/java/050325/j_j-jester.html 結構面白そうです。カバレッジツールとは違った方法でテストの有効性を調べることが出来ます。 簡単にいうと、if文やなんかをJester君が書き換えてくれて、それでテストが正しく失敗す…

Groovyネタ

http://d.hatena.ne.jp/taedium/20050102 ほかにもいろいろ書いているので、時間をみつけてこの方のブログを読みます。ありがたやありがたや。 わたしもはやいところ Groovy 勉強してー。めざせGroover!!

WebFW メモ

Screen はインタフェース 画面表示部分は任意のものを利用可能に・・・(JSP, Velocity, etc...) 画面からの入力もあるていど自由な方法で実現?ただし、標準的なものは用意する。 上記標準的なものでは、入力項目のバリデーションはHTML等に記述。バリデーシ…

Web用FW

ふとおもった。こんな風にPR層でのロジックを書けたら楽しいかも。実現する方法もなんとなく考えついた。 public class PRLogic1 { private IService service; public void logic() { service.func(); Screen1 screen1 = new Screen1(); screen1.setField1("…

JUnit + EasyMock(6)

以下、まだ書きかけのまま放置中です。放置ぷれい(*´д`*)ハァハァ去年の12/14ぶりに JUnit+EasyMock についてです。 前回の終りに書いていた引数チェックについての方法を、最近実際に作る機会があったので以下に書いて見ます。EasyMock ではモックとなるク…

JSP と ViewHelper

DBから取得した内容等をJSPに表示する場合、一般的にはJSP上でEL等を使用して、プロパティ名によるアクセスを行なうと思います。このような場合にサービス層から取得されたモデルなどのJavaBeansを直接リクエストやセッションの属性に設定して利用するのでは…

Open session in view

Hibernate を使用する場合のテクニックとして Open Session in View というのがあります。 サーブレットのリクエストフィルタを利用して、Webアプリのリクエスト開始時から Hibernate のセッションを開始するというものです。最初、これを知ったときはありえ…

例外によるエラー処理の罠?

いつも読ませて頂いている Radium Software というブログに興味深い記事がありました。 http://www.radiumsoftware.com/0502.html#050207例外を利用したエラー処理と戻り値によりエラーを判別するエラー処理についての考察です。 Javaを利用している場合、ほ…

typedef

時々ふと思うのですが、Java にも typedef のようなものが欲しいです。クラスの各属性の内容を表すような論理型を実装時にも手軽に表現できればコンパイルによるチェックをさらに厳しくできるのではないかと思ったりします。 たとえば、ある「注文」クラスを…

taglib 宣言他を JSP ページから省略できる

@ITのJavaTipsを眺めていたら見つけました。 別のJSPページでJSTL宣言を省略する指定された URL パターンに合致する JSP ファイルに対して、特定の JSP ファイルをヘッダあるいはフッタとしてインクルードするようにする指定が可能なため、JSTLのTaglib宣言…