Struts
目次
概要
Java WEBアプリケーション開発のためのFrameWork
URL
http://jakarta.apache.org/struts/
インストール
The Struts Framework Project - Installation(1.1)を参考にすれば良い。
The Struts Framework Project - Installation - Tomcat withApache
めも
/usr/local/apache2/conf/workers2.properties
[uri:/examples/*]
/usr/local/tomcat/conf/server.xml
<Context path="/examples" docBase="servlets-examples" debug="0" reloadable="true" crossContext="true"/>
周辺ツール
1.1の新機能の利用
org.apache.struts.action.DynaActionForm
汎用
ActionForm
。struts-configのみの設定で
ActionForm
が作成可能。
たとえば、Name、Pass、msgBodyのinputの場合は以下の記述をstruts-configにする。
<form-beans>
<form-bean
name="postForm"
type="org.apache.struts.action.DynaActionForm">
<form-property name="Name" type="java.lang.String"/>
<form-property name="Pass" type="java.lang.String"/>
<form-property name="msgBody" type="java.lang.String"/>
</form-bean>
</form-beans>
ただし、Actionには1.0から変更が必要。
String name = form.getName();
を
String name = form.get("Name");
のようにする。
org.apache.struts.validator.DynaValidatorForm
汎用
ValidatorForm
。struts-configのみの設定で
ValidatorForm
が作成可能。
<form-beans>
<form-bean
name="postForm"
type="org.apache.struts.validator.DynaValidatorForm">
<form-property name="Name" type="java.lang.String"/>
<form-property name="Pass" type="java.lang.String"/>
<form-property name="msgBody" type="java.lang.String"/>
</form-bean>
</form-beans>
<action-mappings>
<action
path="/postMessage"
type="javabbs.PostMessageAction"
name="postForm"
scope="request"
validate="true"
input="/postMessage.jsp">
<forward name="success" path="/showMessage.jsp"/>
</action>
</action-mappings>
この場合エラーが発生するとinputの画面にもどります。
<forward name="false" path="/err.jsp"/>
のようにすればエラー専用の画面にできます。
もどりのjspに
<html:messages id="error">
<bean:write name="error"/><br>
</html:messages>
を記述しておけばそこにメッセージが出ます。Propertyファイルを作成しておいてください。
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<logic:messagesPresent>
<bean:message key="errors.header"/>
<ul>
<html:messages id="error">
<li><bean:write name="error"/></li>
</html:messages>
</ul><hr>
</logic:messagesPresent>
でメッセージがある場合だけerrors.headerを表示という事ができる。
http://www.freeml.com/message/struts-user@freeml.com/0000900
http://kklab.spub.chitose.ac.jp/~sugiyama/struts/
エラー対処
Missing message for key
struts-blankをそのまま実行してしまうとMissing message for keyが出ると思います。
struts-config.xmlのmessage-resourcesタグ内を編集します。
<message-resources parameter="ApplicationResources"/>
書籍

STRUTS・イン・アクション(AA)

StrutsによるWebアプリケーションスーパーサンプル第2版:本: 高安 厚思(オープンストリーム勤務),西川 麗(電通国(AA)
参考サイト
dW : Open source : Eclipse用EasyStrutsを使用したStruts開発
