我有一个这种形式的JSP:
<s:form action="GestionPagos.action">
<s:hidden key="actividad.id" />
<s:submit type="image"
src="<s:url value ="/Internal Resources/imagenes/alta.png"/>">
</s:submit>
</s:form>
但是,当我尝试在浏览器中呈现它时,struts会抛出此错误:
org.apache.jasper.JasperException: /Private/GestionCalendarios/MenuCalendario.jsp (línea: 144, columna: 1) /Private/GestionCalendarios/ListadoActividadColaboradores.jsp (línea: 51, columna: 64) Tag <s:submit not ended
我很确定此标签之前有效,但在更新后,它不再起作用了。
我可以使用经典的HTML输入标记,或者将按钮分成两个步骤:将url标记与变量一起使用,然后在提交的src字段中使用。但是我想知道为什么不能一起工作以及标签的正确形式是什么。
答案 0 :(得分:1)
您无法嵌套Struts标记。
改为
<s:url var="myUrl" value="/Internal Resources/imagenes/alta.png" />
<s:submit type="image" src="%{#myUrl}" />
答案 1 :(得分:1)
您不能在tag属性中使用struts标记。您也不需要为s:form
标记的action属性提供操作扩展。像
<s:url var="imgUrl" value ="/Internal Resources/imagenes/alta.png"/>
<s:form action="GestionPagos">
<s:hidden name="actividad.id" />
<s:submit type="image" src="%{#imgUrl}"/>
</s:form>