例えば、GUIのUIなんかで、遷移先のリンクや、ボタンをクリックして、
次の画面に行くことが多いですが、そんな場合の処理。
次画面に単純に遷移する場合、hrefに対象遷移先を記載する。
sastrutsの場合、画面毎にディレクトリを分けて作成するので、
Jspは、<a href="../hogeHoge">というように書く場合が多い。
遷移元のJspがあるディレクトリから一つ上がって、遷移先のディレクトリを指定する、
これに対応するAction(※1)のIndexが呼ばれる。
遷移先のActionでメソッドを明示する場合は、<a href="../hogeHoge/hoge">とする。
遷移先を明示する場合に、検索キーになるような値を渡したい場合が多いかと思うが、そういった場合は、<a href="../hogeHoge/hoge?hogeid=${Form.hogeid}">
とか、
<a href="../hogeHoge/hoge?hogeid=${Form.hogeid}&piyoid=${Form.piyoid}">って書く。
値渡しについては、Actionで検索結果をFormに詰めたり、
画面から詰める場合は、<html:text>のproperty要素にForm変数名を入れる。
Jsp: <html:text property="hoge">
↓
html: <input type="text" name="hoge" value="">
この値をActionに渡す場合に、button等にsubmitを付与する。submitに対象Actionをセット。
jsp: <s:submit property="hoge"/>
で、このsubmitとtextをformタグで囲む。
<s:form>
<html:text property="hoge">
<s:submit property="hoge" value="登録"/>
</s:form>
まとめ:textボックスに入力された値が、登録ボタン(submit)でhogeメソッドに渡される。
※ここでは、jspに対応したActionのメソッドに渡されます※1参照
※1
WEB-INF/view/hogeHoge/hogeHoge.jspに対して、
action/HogeHogeAction.jspが対応する、これはsastrutsが自動でやってくれる。