- PR -

sturts1.2 (Actionの起動)

1
投稿者投稿内容
未記入
ベテラン
会議室デビュー日: 2004/08/18
投稿数: 81
投稿日時: 2006-03-15 11:11
いつもお世話になります。

今、sturts1.2で作成しています。
ここで、最初にAction(StartAction)で、初期設定データをsessionに格納した後、
画面(Test.jsp)の表示に行きたい。

分からないこところとして
1.StartActionに対する、struts-config.xmlの書き方が分からない。
  action-mappingは、ActionとJspとのマッピングだと思うので
  対応するJspがないAction(StartAction)は、どうすればいいのか
  分かりません。

2.最初に、Action(StartAction)の起動をする際、
  ブラウザのURLにどのように入力していいの分からない。
  Test.jspを表示する際は、http://localhost:8080/test/jsp/Test.jspとしていたので、
  http://localhost:8080/test/WEB-INF/classes/action/StartAction.class
  と考えましたが、うまくいきません。

皆様のご教授、宜しくお願いします。

■struts-config.xml

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"
"http://jakarta.apache.org/struts/dtds/struts-config_1_2.dtd">

<struts-config>

<form-beans>
<form-bean name="dynaStartForm" type="org.apache.struts.action.DynaActionForm">
<form-property name="startData" type="java.lang.String" initial="" />
</form-bean>

<form-bean name="dynaTestForm" type="org.apache.struts.action.DynaActionForm">
<form-property name="testText" type="java.lang.String" initial="" />
</form-bean>
</form-beans>

<action-mappings>
<action path ="????"
type ="action.StartAction"
name ="dynaStartForm"
scope ="session"
input ="????"
validate="????">
<forward name="testJsp" path="/jsp/Test.jsp"/>
</action>

<action path ="/test"
type ="action.TestAction"
name ="dynaTestForm"
scope ="request"
input ="/Test.jsp"
validate="false">
<forward name="testJsp" path="/jsp/Test.jsp"/>
</action>
</action-mappings>

<message-resources parameter="java.resources.application"/>

</struts-config>

■StartAction

public class StartAction extends Action
{
public ActionForward execute( ActionMapping mapping,
ActionForm form,
HttpServletRequest req,
HttpServletResponse res ) throws Exception
{
dynaStartForm.set("startData", "初期設定データ");
return(mapping.findForward("testJsp"));
}
}


■TestAction

public class TestAction extends Action
{
public ActionForward execute( ActionMapping mapping,
ActionForm form,
HttpServletRequest req,
HttpServletResponse res ) throws Exception
{
return(mapping.findForward("TestJsp"));
}
}

<%@ page language="java" pageEncoding="UTF-8" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/tags/struts-html" prefix="html" %>


■Test.jsp

<html:html>
<head><title>テスト画面</title></head>
<body><center>
<html:form method="post" action="/test">

<font size="+1"><B>【テスト画面】</B></font><br><hr><br>

<td>ユーザーID:</td>
<td><html:text property="testText"/></td>

<html:button property="bottonTestPro" value="テスト" onclick="bottonTestClick()"/> 

</html:form></center>
</body>
</html:html>


山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2006-03-15 11:57
Struts のサンプルはご覧になりましたか?
サンプルを一通り見れば、どういう URI でどのアクションが呼びだされるのか、アクションから JSP へどうやって繋がっていくのか理解できると思います。
1

スキルアップ/キャリアアップ(JOB@IT)