[HOME]: [Mac OS X]: [MacPython]: [Emacs]: [生存報告記]: [MacEmacs JP Project]: [NTEmacs JP Project]:

概要

Java WEBアプリケーション開発のためのFrameWork

URL

http://jakarta.apache.org/struts/

インストール

The Struts Framework Project - Installation (1.1)を参考にすれば良い。

The Struts Framework Project - Installation - Tomcat with Apache

Strutsインストール - JPUG新潟

めも

/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"/>

周辺ツール

Struts Validator

StrutsTestCase

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)

参考サイト

Struts翻訳

Struts Fan

入門Struts

dW : Open source : Eclipse用Easy Strutsを使用したStruts開発

Strutsメモ

StrutsによるWebアプリケーション開発

Struts Console


CategoryPrograming CategoryJava

紹介マニアMoinMoin: Struts (last edited 2007-04-19 21:04:43 by )