我在这里尝试两件事:首先,运行一个正常的jsp,动作为helloWorld.do:
<html:form action="helloWorld.do" method="post">
和html中的相同:
<form action="helloWorld.do" method="post">
<input type="text" name="userName"> <!-- userName and password names do match the variables in form -->
<input type="password" name="password">
<input type="submit" value="Submit">
</form>
当我运行jsp时,jsp中的操作映射到正确的操作并正确呈现页面但是使用html它实际上调用了http://localhost/StrutsExample/helloworld.do
。在这里,helloWorld.do改为helloworld.do。所以,它呈现了一个空页面(这是我试图显示用户名的页面)所以,我试图在struts中添加一个新动作:
<action path="/helloworld"
type="com.org.common.action.HWdAction"
name="hWForm">
<forward name="success" path="/HW.jsp"/>
</action>
它仍然不起作用。表单不会填充在html中输入的名称。
答案 0 :(得分:0)
默认情况下,如果未指定,Struts 1.x的html:form
标记使用的方法为POST
。无需添加.do
,也无需添加初始对角线/
。
<html:form action="helloWorld">
但是,如果您使用HTML的简单form
标记,则需要添加它们。
<form action="/StrutsExample/helloWorld.do" method="post">