HTTP Status 405 - HTTP method POST is not supported by this URL
次のコード(以下)を使用するとエラーが発生します...トラブルの原因となっている行は(明らかに)getServletContext().getRequestDispatcher("/EditObject?id="+objId).forward(request, response);
package web.objects;
import java.io.IOException;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import dao.ObjDetailsDao;
@SuppressWarnings("serial")
public class EditObjectText extends HttpServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
int objId = Integer.parseInt(request.getParameter("objId"));
String text = (String)request.getParameter("description");
ObjDetailsDao oddao = new ObjDetailsDao();
try {
oddao.modifyText(text, objId);
/////////////
getServletContext().getRequestDispatcher("/EditObject?id="+objId).forward(request, response);
////////////
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
編集:throws ServletException, IOException
提案どおりに追加しましたが、これはエラーを変更しませんでした。
編集: EditObject サーブレットは次のようになります
@SuppressWarnings("serial")
public class EditObject extends HttpServlet{
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
int objId = Integer.parseInt(request.getParameter("id"));
dispPage(objId, request, response);
}
private void dispPage(int objId, HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
// ... lots of code in here
getServletContext().getRequestDispatcher("/jsp/objectPageEdit.jsp").forward(request, response);
}
}
別の編集:基本的に、私は自分がしていることをすることができません。私が必要としているのはこれです。ユーザーは投稿リクエストを送信し、Post の代わりに Get メソッドを使用するサーブレットに戻します。エラーを発生させずにこの紹介を行うにはどうすればよいですか? 前もって感謝します。