seasar

AOPによる呼び出しキャッシュについて喋ってきた

2008年11月1日のわんくま勉強会@大阪にて『AOPによるキャッシュがいいよ』というお題目でスピーカーをしてきました。 (1600GET/s来るような携帯電話向けWebアプリケーションでも満足に使えているよ、というお題目ながら、いまだ満足できないところがあって …

S2Velocity 1.2.1 リリースしました

S2Velocity 1.2 にバグ(スレッドセーフではない)があり、MLでご指摘いただいて修正しました。 この修正のみとなりますが、 1.2.1 としてリリースいたしました。はじめにバグのご指摘を頂いたうえしんさんありがとうございます。S2Velocityそのものについての…

S2Velocity 1.2 リリースしました

VelocityテンプレートをWebアプリケーションのビューとして用いる場合に、S2Containerとのビューヘルパー(ツールボックス)インスタンスの管理をS2Containerと統合するためのコンポーネント、S2Velocity 1.2 をリリースしました!詳細はこちら: http://s2velo…

OutOfMemory

なんかよくわからないのだが、ランニングテストかけてたらOutOfMemoryErrorが出てしまう、というアプリがあって なにがクセモノなのか jhat とかかけて調べよう、という段階なのですが、どうもあやしいのがOGNL。 実際には、S2を使っていて、diconの中で hog…

nullをsetterでインジェクトして欲しい

S2.3.8では、コンポーネントの組み立て結果(おそらくOGNL式を与えたcomponent定義の場合のみ)がnullの場合NullPointerExceptionを吐く(もしくはClassUnmatchRuntimeExceptionで型チェック落ちする)。でも、nullを インジェクションしたい場合もあるんだー、…

InterTypeで嬉しいのは

InterTypeでsetter/getterが動的に追加されて嬉しいケースは色々ありそうです。ビュー層からattributeに格納されたbeanの内容を表示する場合などはsetter/getterをリフレクションでアクセスしますし、JSP中、ELベースでの参照や、Velocityなんかでも使いまく…

素朴な度忘れ、というか誤解

ToStringInterTypeじゃなくて、なぜToStringInterceptorなんだろう、と思ってたら、ああ、そりゃそうか!toString()はObjectで実装されているのでした。度忘れしていた。ということは hashCode, toString, equals 三種セットでデフォルト振る舞いを提供するM…

S2Velocity別バージョン

というわけでとりあえずたたき台をおいてみる another-s2velocity.zipをダウンロード web.xmlで、VelocityViewServletのかわりにS2VelocityViewServletを指定する。 (とりあえず)toolbox.diconという namespace="toolbox"なdiconを作る サンプルがついてます…

S2Velocity別バージョン

旧SandboxプロジェクトのS2Velocityは、S2.3RCとかでは動作しない。で、この際、ということで自分バージョンを作ってみた。VelocityTools標準のものとは違い、toolbox.xmlそのものを無くすことにして、toolbox.diconでそれを代用させるようにした。これでDI…

メソッドコールキャッシュの実装その2.0.1

ehCacheとOSCacheの違いを備忘録 キャッシュエントリのキーがehCacheではSerializableに対して OSCacheではString固定…に見える いずれにせよこの手のライブラリを使おうとしたらキーはシリアライズできないとダメだ、ということだな。もしくは…「使用すると…

メソッドコールキャッシュの実装その2

キャッシュマネージメントについては、自分で作るのもバカらしいので以下のものを候補に上げておき、実装レイヤを分離できるようにするのがよさげだ。 ehCache OScache とりあえずehCacheで作ってみよう。この手のキャッシュフレームワーク?ライブラリ?は設…

メソッドコールキャッシュの実装その1

CallCacheInterceptorというものを実装してみているところ。 これは、あるインスタンスのあるメソッドにある引数リストで呼び出したときに、その結果をキャッシュして次回以降は実際には呼び出さずにキャッシュした戻り値を返却する、というもの。二次キャッ…