struts-hibernate 从数据库中删除数据--初学

cnhuai 2008-10-13 09:35:10
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
DeleteForm deleteForm = (DeleteForm) form;// TODO Auto-generated method stub
int id=deleteForm.getId();
Session session=HibernateSessionFactory.getSession();
Transaction tr=session.beginTransaction();
User user=(User)session.get(User.class, new Integer(id));
session.delete(user);
tr.commit();
return mapping.findForward("success");
}

struts-config文件:
<action
attribute="deleteForm"
input="/delete.jsp"
name="deleteForm"
path="/delete"
scope="request"
type="com.sh.struts.DeleteAction">
<forward name="success" path="/success.jsp" />
</action>



delete.jsp文件:
<body>
<form action="/delete.do" method="get">
id : <input type="text" id="id" name="id"><br/>

<input type="submit" id="id" name="id" value="删除"><br/>
</form>
</body>
做删除操作:打开http://localhost:8080/struts_test/delete.jsp输入id=3

页面转到http://localhost:8080/delete.do?id=3&id=%C9%BE%B3%FD
提示:HTTP Status 400 - Invalid path /delete was requested
...全文
76 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
cnhuai 2008-10-13
  • 打赏
  • 举报
回复
应该是action提交时错误,把改成action="delete.do"就可以了

就是这个问题
我想知道为什么啊
嘿嘿

<form action="/delete.do" method="get"> 是MYECLIPSE自动生成的
tyk8899 2008-10-13
  • 打赏
  • 举报
回复
如果是普通的
form 表单 action="" 不可以出现 /delete.o ,要把"/去掉"

如果是 <html:form action="/delete.do"> 是可以提交到action 的
akunamotata 2008-10-13
  • 打赏
  • 举报
回复
struts-config文件:
<action
attribute="deleteForm"
input="/delete.jsp"
name="deleteForm"
path="/delete"
scope="request"
type="com.sh.struts.DeleteAction">
<forward name="success" path="/success.jsp" />
</action>

你的action命名是不是有问题?
ZHANGBINFLY 2008-10-13
  • 打赏
  • 举报
回复
应该是action提交时错误,把改成action="delete.do"就可以了

67,538

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧