ログマニアックス

日々学んだこと、気づいたことをメモ代わりに残していければ。カバー範囲は割と広めです。

Strutsにおけるアクションチェイン転送

1343802_50621130.jpg

リダイレクトとアクセス解析は相性が悪いものです。

今までも何度か記事にしてきました。

アクセス解析におけるリライトとリダイレクト | ログマニアックス

広告分析、リダイレクトにはご用心 | ログマニアックス

アクセス解析間で数字をつなげる際にはご注意を | ログマニアックス

基本はPHPやHeader・JSでの転送が多いと思うのですが、

JavaフレームワークStrutsでもこういった転送を行う場合があります。

これをアクションチェインというそうです。

Strutsとは

Strutsとは - 意味/解説/説明/定義 : IT用語辞典

Jakartaプロジェクトが開発しているオープンソースのソフトウェアで、Java言語を用いてWebアプリケーションを開発する際の必要な基盤(フレームワーク)となるもの。

MVCというソフトウェア設計モデルに基づいており、JavaサーブレットJSPを組み合わせてアプリケーションを構築する際に必要となる諸機能を提供する。

とのことで、Railsなどと同様のMVCといった考え方に基づいた、

アプリケーション環境のフレームワークのようです。

アクションチェインとは

アクションチェイン

こちらや

Strutsリファレンス(アクションチェーン)

こちらに記載がありますが。

エラー分岐などの際に、

JSP内でのアクションを変更する処理を行うことを指しているようです。

ようはアクションの連なりを定義するということですが、

その際に、気を付けなければいけないのは、

明示的に行わない限り、URLは変更されないことです。

気をつけるポイント

例えば、登録フォームなどで

完了ページを成果ポイントとして定義したいとしましょう。

その場合、URLで成果ページの判定をしている場合、このアクションチェーンが原因で

正しい数字がとれないことがあります。

フォームのエラー処理などが発生した際に、

URL自体は完了ページのURLを指していても、

実際にはエラーページが表示されていることがあるのです。

これは実際の計測テストにおいてはエラー処理などまでは

チェックしないことが多いため、

計測が始まった際の落とし穴として注意が必要です。

しかもの場合、HTTP上では転送がかかっていないためデータだけ見てもわかりません