我正在尝试删除使用Hibernate和Struts的项目中的选定行。

<a href="DeletePublication?Id=<s:property value="Id"/>"><img
                    src="${pageContext.request.contextPath}/img/delete.png" width=20px
                    height=20px></a>


这是我要单击的链接!在struts.xml中,动作定义为:

    <action name="DeletePublication" class="de.nak.library.action.PublicationAction"
        method="delete">
        <result type="redirect">ShowPublicationList.action</result>
        <result type="chain" name="input">ShowPublicationList</result>
    </action>


Action类如下所示:

    public String delete() {
    publication = publicationService.loadPublication(publicationId);
    if (publication != null) {
        publicationService.deletePublication(publication);
    }
    return SUCCESS;


如果单击链接,则无任何反应!我试图在delete方法中设置一个断点,但发现它甚至没有被调用。请帮忙!

最佳答案

struts.xml中进行更改:

<constant name="struts.devMode" value="true" />


这将打开开发人员模式,您可以在该模式下在控制台上查看更多日志消息。您可能没有属性的getter和setter。属性中缺少"

<s:a namespace="onthepackage" action="DeletePublication"><s:param name="Id" value="%{Id}"/><img
     src="<s:url value='/img/delete.png'/>" width="20px"
     height="20px">
</s:a>

关于java - Struts2 CRUD删除不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26683598/

10-13 03:20