java

web.xmlのservlet-mappingの謎〜解決編〜

長かった…。↓のサイトのGetting StartedのPDFのP.19のおかげでやっとわかってきたぞー。 Core JavaServer Facesこういう具体例を交えた説明が日本語サイトには非常に少ないように思えるけど、みんな理解してるのかな?もしかして、FAQ? とにかく、わかった…

web.xmlのservlet-mappingの挙動

無限ループの原因は相変わらずよくわかってないけど、servlet-mappingの挙動はわかってきた。 たとえば、 <servlet-mapping> <servlet-name>FacesServlet</servlet-name> <url-pattern>/faces/*</url-pattern> </servlet-mapping>とかいて、 http://localhost:8080/test/faces/test.jspとアクセスする。(webappのルートURLは/test)このときにこのURLに対応…

ひがさんのBlogのまとめサイト(4)

画面遷移 2004-08-28 - ひがやすを blog 画面のモックを使って早い段階から顧客に具体的なイメージを抱かせて、意識違いをできるだけ減らそうと。 画面モック→画面遷移図と落とし込んで、イメージしやすい画面遷移図を作るとともに、画面モック自体で実際の…

ひがさんのBlogのまとめサイト (3)

wikiroom.com 閉鎖 を読んで勉強するシリーズ第3弾。 設計 コントロール分析 2004-07-29 - ひがやすを blog くーすで、ロバストネス分析からコントロールクラスを抽出する方法。 以前よりちょっと手直しが入ってるそう。 ユーザ機能分析 2004-07-31 - ひがや…

ひがさんのBlogのまとめサイト (2)

(続き)AOP インターセプタは、自分自身の単体テストを行う。 アスペクトが組み込まれるクラスは、アスペクトを組み込まない状態で単体テストを行う。 結合テストでは、アスペクトがきちんと組み込まれていることを検証する。 インターセプタの細かいテストは…

ひがさんのBlogのまとめサイト

こんなすばらしいまとめサイトがいまだかつてあっただろうか。 という感動の渦の中、一気読み。wikiroom.com 閉鎖自分用に、感銘を受けたところ、疑問点などポイントをピックアップしてまとめておこうと。引用先の改行とかスタイルとかは適宜修正してます。…

Webアプリケーションの認証と承認について

自分の中での今のところのベストプラクティスを記述してみようと。 認証と承認 主体を特定する認証する処理と、その主体がある操作を実行してよいかどうかを承認する処理は分けて考える。 認証(Authentication) リクエスト内の主体のIDとパスワードを使用し…

無限ループのなぞ

MyFacesを使っていて、下のようにweb.xmlでマッピングをして、 web.xml <servlet-mapping> <servlet-name>FacesServlet</servlet-name> <url-pattern>/hoge.jsp</url-pattern> </servlet-mapping>アプリケーションルートに配置したhoge.jspに http://localhost:8080/hoge/hoge.jspとアクセスすると、 [ERROR] 2005-09-22 02:07:10 ApplicationContext#log(…

JSF+Tomcat5.x

散々既出だけど、また忘れてて軽くはまってしまったので、もう2度と忘れないようにメモ。 JSFをTomcat5.xで使う場合は、 jsp2.0.jar commons-el.jar の2つをWEB-INF/libにいれてはいけない。 入れた場合の症状は↓。 どんなにJSPを表示させようとがんばっても…

AccessAllow/Denyアノテーション

というものを作ってみた。 クラスやメソッドに @AccessDeny("") @AccessAllow("hoge.foo") public class Hoge() { //... } というアノテーションを書くと、public/protected/(無印)/privateよりももっと細かいレベルでアクセス制御ができる、というもの。 あ…

アノテーション

JSFがうまくいかないのでちょっとアノテーションで遊ぶことに。アノテーション+javassist+javaagentでちょっとクラスのアクセス制限みたいなことを試してみる。関係ないけど、java + assist かと思ったら違うんだな。aは1つでjavassist(ジャバシスト?)。で…

プラグインのダウンロード遅い

JSFプラグインを入れたのにどうしても動作しない。 ログを見たら、どうやらGEFが必要だったらしい。 というわけで、[ヘルプメニュー]あたりにあるインストール機能を使ってEMF,GEF,JEF,J2EEほげほげ、とかを色々入れてみたら、というか、入れようとしたら、…

本購入

どうにも納得のいかない動作をするJSF。 JSPファイルをサンプルとはちょっと変わった配置にしようとすると、とたんにパスの解決がうまくいかなくなる。というか、ルートディレクトリ直下しか見てくれない。 web.xmlとfaces-config.xmlの指定の方法が悪いんだ…

JSF環境設定の敷居高し

何でこんなに難しいのか。 簡単なサンプルを確認したいだけなのに。 Tomcat5.5とMyfaces1.0.9の相性問題→WEB-INF/libからcommons-el.jar, jsp2.0.jarを削除 web.xmlのurl-patternが間違えているらしくFacesServlet経由で無限ループする→未解決 これじゃ、JSF…

ThreadLocalを試す

↓のようにインスタンスメソッドでも、 public class RequestContextImpl implements RequestContext { private static ThreadLocal userThl = new ThreadLocal() { @Override protected User initialValue() { return new User(); } }; public User getUser(…

ThreadLocalの使い方

プレゼン層周りを独自フレームワークというか既存フレームワークの使い方というか、ある程度の機構を固めるとする。でも、ユーザの属性はアプリケーションごとに異なるだろう。 Map形式で拡張属性を持たせてもいいけど、キーの管理が必要になり、面倒。 それ…

ThreadLocal

ひょんなことからThreadLocalクラスを見つけた。 いや、だいぶ前にそういうクラスがあることを認識していたはずなんだけど、すっかり記憶から抜け落ちていた。 スレッドごとにコンテキスト情報を保持しておいて、メソッド引数とか関係なしにそのコンテキスト…

基本レイヤ構成

前提と言い訳:一応、くーすとかgoyaとかその辺の設計をベースにおいてるつもり。理解不足なところがあるかもしれないけど。Webアプリケーションにおける基本レイヤ構成を次のように考えてみる。 クライアント層 プレゼンテーション層 サービス層 ビジネスド…

S2Struts

の新バージョンがでたそうな。 かなり気になる。 けど、明日イトコの結婚式なので2〜3日実家に帰省することになり、しばらく試せない。試行錯誤で独自フレームワークを書いてると、いつの間にかStrutsに似てくる。 Strutsってやっぱり必然性のある構造なんだ…

Log4jの設定

FileAppendar系で相対パスでログファイルを指定しようとした場合、恐らく開始点はシステムプロパティのuser.dirになってるようだ。 初期化サーブレットでuser.dirをアプリケーションのルートディレクトリに設定してもそれより以前にログファイルパスの解釈を…

S2Tx

トランザクション周りを試してみた。 自分用に結果をメモしておく。 用意するもの HogeDAO (S2DAO用の適当なDAO) HogeDAOClient (HogeDAOをフィールドにDIしてもらいそれを使う) Main (HogeDAOClientをS2Containerから取得して実行する) (1)トランザクション…

hsqldbとS2DAO

S2DAOを使いたくて、DBを作ろうと思った。 自宅サーバにPostgreSQLやMySQLとかが入っているのでそれでも良かったけれど、Seasarとかにバンドルされてるhsqldbが気になって使ってみた。 まだちょっとなれないけど思ったよりも簡単だ。 JDBC接続も簡単にできる…

インタフェースを多用したときのクラス図

って、書きづらい。 インタフェース自体は実装を持たないけど、そのインタフェース実装どうしかどういう風に連絡しあうかっていう予想図というか予定はあって、でもそれはインタフェースではなくてその実装から発生する(はず)の依存性だから…、とクラス図が…

JavaPress No.43

立ち読みしてから買ったんだけど、この表紙どっかで見たような…。 もしかしてすでに持ってる? 月曜に会社にあるか確認してみよう。

Generics

色々使えそうだし、ダウンキャストを撲滅できそうなんだけど、その代わり多用しすぎるとパラメタ指定でうんざりしそうな機能。まだ勘所がつかめない。 ちょっとJava5.0本を買ってきて、一回みっちりと勉強してみよう。

自業自得

Eclipse実行中に致命的エラーが発生してリカバリできなくなると、ワークスペースの中身丸ごと道連れにお亡くなりになることがあります。っていうか今日なった。 ワークスペースにあったプロジェクトが全部消えてなくなる前に、定期的にバックアップをしよう…

オレ様フレームワークの是非

独自にフレームワークを設計したり実装したりって、楽しい作業だけど、いざそのフレームワークを実業務とかに展開していこうとしたとき、意外に使えなかったりする。設計が悪いとかじゃあなくて。 他のツールもそうだけど、特にフレームワーク系はその仕様や…

ToDoメモ

JTAとJNDI JSF

インタフェースとGenerics

いろんなタイプの実装を見込んでインタフェースを作ると、つい、引数や戻り値の型をObjectにしがちになる。 インタフェースでObjectにするにしても、Genericsでクライアントから型を指定できるようにしておくと結構便利。 クライアントクラスで、injection用…

サービス層フレームワーク

結構軽量で柔軟性の高い仕組みになってる気がする。もう少しつめてみる。ビュー周りって結局サービスの結果として何らかの「ビューID」を使って、画面制御するのが一般的なのかな? 素のServlet+JSP→結果JSPファイルパス Struts→struts-config.xmlに定義した…