サポート > Wagby Developer Network > 見栄えのカスタマイズ > ボディ部の構造(新規登録) (2/2)
リダイレクト処理
Wagby の新規登録処理では、データの登録後に redirectStaff.jsp を経由して詳細表示画面に遷移します。 同 JSP ファイルは次のようになっています。
<%@ page contentType="text/html; charset=Windows-31J"
errorPage="error.jsp" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<body>
<%
jp.jasminesoft.wagby.model.staff.Staff staff =
(jp.jasminesoft.wagby.model.staff.Staff)request.getAttribute(
"staff");
String jspenc = jp.jasminesoft.jfc.BaseAction.getJspEncoding();
String staff_userid = jp.jasminesoft.jfc.JFCUtils.encodePrimaryKey(
staff.getUserid());
staff_userid = jp.jasminesoft.util.WebStringEncodeUtilities.
encodeString(staff_userid, jspenc);
application.getRequestDispatcher("/showStaff.do?"+
jp.jasminesoft.util.WebStringEncodeUtilities.encodeString(
"userid", jspenc)
+"="+staff_userid+"&"+
jp.jasminesoft.util.WebStringEncodeUtilities.encodeString
("staff_p$002fuserid", jspenc)+"="+staff_userid).forward(
request, response);
%>
</body>
</html>
同ファイルにはスクリプトレット(Java のコード)が直接、記述されています。 staff オブジェクトの主キーを取り出し、詳細表示画面(showStaff)へ遷移させています。 このリダイレクト処理は、パンくずに記録を残すために行われます。
開発者は通常、このファイルを変更することはありません。
JavaScript
Wagby は積極的に JavaScript を用いています。 新規登録画面においては、insertStaff.js(拡張子は ".js")という JavaScript ファイルが生成されます。 この中には Ajax に関するコードも含まれます。
ここでは insertStaff.js がどのような関数を自動生成しているかを説明します。
| 関数名 | 説明 |
|---|---|
| expandDate(f) | コンボボックス表現された日付の展開 |
| doSubmit(f) | 登録時に行う処理。必須チェックなど。 |
| change_XXX(f) | 項目の値が変更された時の入力制限処理。 |
| clearHtmlValue(f, htmlkey, htmlinputkey) | HTML中の要素の値をクリアする。 |
| doClearXXX(f) | 選択肢のチェックをはずす。 |
| init(f) | フォームが読み込まれたときの初期化。 |
| updateContent(e, text) | Ajaxによる値の動的な更新処理。 |
| setBgcolor_id(htmlkey, htmlinputkey, color, footer) | Ajaxによる値の動的な更新処理(背景色を変更する。) |
| setResponseXmlContent_id(xml, xmlkey, htmlkey, htmlinputkey) | Ajaxによる値の動的な更新処理。実際の通信処理を行なう。 |
