Struts 1.x:表格未显示

时间:2009-06-28 23:29:47

标签: html jsp forms struts

我有一个这样的表单,在.jsp页面中(使用Struts + Tiles):

<%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html" %>
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

<html:xhtml/>

<div id="content">

    <html:form action="action_newPost" method="post">
        <table>

            <tr>
                <td>Titulo (150 Caracteres Máximo)</td>
            </tr>
            <tr>
                <td><html:text property="titulo" size="45"/><br/>
                <html:errors property="tituloError"/></td>
            </tr>
            <tr>
                <td>Post (1000 Caracteres Máximo)</td>
            </tr>
            <tr>
                <td><html:textarea property="contenido" cols="80" rows="7"/><br/>
                <html:errors property="cuerpoError"/></td>
            </tr>
        </table>

        <input type="submit" value="Publicar"/>
    </html:form>

</div>

问题是表单没有显示,除非我将操作更改为另一个(称为action_EnviarMsg)。为什么会发生这种情况?如果你需要剩下的代码(struts-config,tiles-defs或者什么)告诉我把它放在这里...

谢谢!

1 个答案:

答案 0 :(得分:2)

我认为你所说的行动前进可能存在问题,你应该确保行动的前进指向你的行动定义,就像这样。

的struts-config.xml

<action path="/somepath" type="yourpackage.YourAction"><br/>
    <forward name="YourForward" path="tiledefinition" /><br/>
</action>

瓦片-def.xml

<definition name="tiledefinition" ><br/>
    <put name="body" value="/jsp/your-form.jsp" /><br/>
</definition>

希望这有帮助