我在这个主题上搜索了很多,但似乎没有问题/答案能提供我正在寻找的东西。如果答案漂浮在某个地方,我深表歉意。
我拥有的是我编写的一系列实用程序 JSP,我通过索引类型 JSP 访问它们,其中我有一个按钮表单可以转到相应的 JSP。每个看起来像这样:
<form method="POST" action="delete.jsp">
<input type="submit" value="Delete" name="B2">
</form>
在我的 delete.jsp 中,我有另一个表单,一旦按下按钮就会调用我的 servlet,如下所示:
<form method="post" action="ModelServlet">
Select file to delete: <input type="file" name="dataFile" id="fileChooser" /><br />
<br /> <input type="submit" name="DELETE" value="Delete" />
</form>
当我按下此“删除”按钮时,我收到“HTTP 状态 405 - 此 URL 不支持 HTTP 方法 POST”错误。这使我相信存在某种映射错误或其他什么,阻止实用程序 JSP 找到我的 servlet。对此有什么想法吗?我的servlet代码如下:
我正在调用的 servlet:
package com.model;
import java.io.File;
import java.io.IOException;
import java.util.Iterator;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import org.apache.commons.io.FileUtils;
public class ModelServlet extends HttpServlet {
protected void init(){}
protected void doPost(Model ourModel, HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//check for which case we have: upload, delete, move, or copy
if (ServletFileUpload.isMultipartContent(request)){
//do upload stuff
performUpload(request,response);
}
else if (request.getParameter("DELETE") != null){
//do delete stuff
performDelete(request,response);
}
else if (request.getParameter("MOVE") != null){
//do move stuff
performMove(request,response);
}
else if (request.getParameter("COPY")!= null){
//do copy stuff
performCopy(request,response);
}
}
为它下面的函数定义的方法。
干杯,乔