<Jetspeed>とりあえず、フォールバック問題については、新しいプロファイリングルールを作って、それをguestに適用しようと思う。そうすれば、影響は最小限に抑えられるだろう。ついでにモバイル用にテストユーザーを作っておこうかと思う。たぶん、これなら、みんなが妥協できる範囲であろう。次は、ログイン問題を解決しなくては・・・。これが一番問題のような気が・・・。
<MyFaces>進展はないが、Stan がTomahawkでHttServletRequestにキャストするとExceptionになると、バグをあげて通知をしていた。まぁ、ServletRequestだけではなく、ServletResponseやServletContextも取得して使うと、同様のことが起こるんだけどね・・・。ServletとPortletで共通のイターフェースを持てばそういうことも起こらないのかもしれないけど、そうではないので、どう実装するか悩ましいんだよね。多くの場合は、キャストできる場合が多いと思うが、できないポータルサーバーもあるしね。っで、どうすればいいかを考えてみると、
private static final Class ARGS = new Class {String.class};
Object context = FacesContext.getCurrentInstance().getExternalContext().getContext();
Method method = null;
try {
method = context.getClass().getMethod(“getAttribute”, ARGS);
} catch (NoSuchMethodException ex) {
throw new RuntimeException(ex);
}
try {
String hoge = method.invoke(context, new Object [] {“hoge”});
} catch (IllegalAccessException ex) {
throw new RuntimeException(ex);
} catch (InvocationTargetException ex) {
throw new RuntimeException(ex);
}
っていうコードを書けば、ServletもPortletにも依存しなくても済むわけだね。今後は、このコードを使うようにしよう。
<grub>FedoraとWindowsのデュアルブートにしていたのだけど、Windows XP を後から入れたため、既存のgrubが上書きされてしまった・・・。というわけで、grubをインストールせねばならない。
1.rescueモードで起動
2.chroot /mnt/sysimg
3.grub-install /dev/hda
で無事解決。
<Jetspeed>ログイン問題を考える。JSR 154 の SRV.12.5.3.1 なども確認して、何で LoginServlet にリダイレクトしているのかがわかった。要は、login/login にフォームベースの認証を書けているから、そこに行かないと認証が実行されないためやね。というわけで、どうするのがいいのかね・・・。今考えているのは、XHTML Basic では、ログインポートレットをやめて、LoginServlet へのリンクを表示するようにする。そんで、LoginServlet では、メディアタイプによってディスパッチする必要がある。つまり、LoginServlet は、仕組み的に変更が必要と言うことだ。問題は、メディアタイプをうまいこととれるか、ということだろうか。J2 のパイプラインからその部分だけを使い回せればよいのだけど。