FORM の GET を使えないを考える

JSR 168 に準拠したポートレットを作成しようとすると、FORM の GET が使えない。しかし、実際問題としては、ブログの記事に対するリンクを使いたいなど、要求はあるのではなかろうか。と言うわけで、これに対する対策をいろいろと考える。はじめは、はじめにサーブレットにアクセスさせて、セッションなどのパラメータを入れて、リダイレクトと考えたけど、それだと、サーブレットからポートレットへセッションの受け渡しの方法がないので、無理と言うことが判明。ということで、次は、ポートレット上にJavaScriptを置いて、そこで、URLにパラメータがあれば、再読込することにした。というわけで、作成したコードは以下のような感じ。

<h:form id="redirectForm">
<h:inputHidden id="blogid"/>
</script>
</h:form>

上のコードはJSFを使ったポートレットの場合。実際のフォームのactionには、ActionURLが入っている。うーん、他にもっと良い方法があったら、教えて欲しいところです。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です