jsp http 404 错误,尝试了N中方法
我弄这个已经好几天了,网上说的东西解决了很多问题,可是最后的问题,数据库还是连接不上。
我基本上已经把网上能提供的 有关我这个的 错 可能的原因 都尝试了,都不奏效,无奈只能 提问了。
我想把我各个配置的详细信息,列在下面,希望懂的朋友可以帮助我解决,非常感谢!
我用的是Myeclipse10 + tomcat6 + mysql
我想实现的功能很简单,就是想填写一张jsp的 注册页面。然后数据存储至数据库。就这么简单
静态的jsp页面是可以打开的,但是一旦我点击了提交之后,就会报http 404 不可利用的错误
这是tomcat6的启动情况
十一月 17, 2013 10:31:17 下午 org.apache.catalina.core.AprLifecycleListener init
INFO: Loaded APR based Apache Tomcat Native library 1.1.27.
十一月 17, 2013 10:31:17 下午 org.apache.catalina.core.AprLifecycleListener init
INFO: APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
十一月 17, 2013 10:31:18 下午 org.apache.coyote.http11.Http11AprProtocol init
INFO: Initializing Coyote HTTP/1.1 on http-8080
十一月 17, 2013 10:31:18 下午 org.apache.coyote.ajp.AjpAprProtocol init
INFO: Initializing Coyote AJP/1.3 on ajp-8009
十一月 17, 2013 10:31:18 下午 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 1486 ms
十一月 17, 2013 10:31:18 下午 org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
十一月 17, 2013 10:31:18 下午 org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.29
十一月 17, 2013 10:31:18 下午 org.apache.catalina.startup.HostConfig deployDescriptor
INFO: Deploying configuration descriptor host-manager.xml
十一月 17, 2013 10:31:18 下午 org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory docs
十一月 17, 2013 10:31:19 下午 org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory examples
十一月 17, 2013 10:31:19 下午 org.apache.catalina.core.ApplicationContext log
INFO: ContextListener: contextInitialized()
十一月 17, 2013 10:31:19 下午 org.apache.catalina.core.ApplicationContext log
INFO: SessionListener: contextInitialized()
十一月 17, 2013 10:31:19 下午 org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory kaoqintongji.myeclipse.bak
十一月 17, 2013 10:31:19 下午 org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory ROOT
十一月 17, 2013 10:31:19 下午 org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory test
十一月 17, 2013 10:31:19 下午 org.apache.coyote.http11.Http11AprProtocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
十一月 17, 2013 10:31:19 下午 org.apache.coyote.ajp.AjpAprProtocol start
INFO: Starting Coyote AJP/1.3 on ajp-8009
十一月 17, 2013 10:31:19 下午 org.apache.catalina.startup.Catalina start
INFO: Server startup in 830 ms
下面是我的jsp 页面
表头
<form method="get" name="formal" action="/WorkDiaryServlet.do">
下面是我的 xml 文件
<?xml version="1.0" encoding="UTF-8"?>
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
This is the description of my J2EE component
This is the display name of my J2EE component
WorkDiaryServlet
com.control.WorkDiaryServlet
WorkDiaryServlet
/WorkDiaryServlet.do
login.jsp
下面是我的 servlet 文件
package com.control;
import java.io.IOException;
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class WorkDiaryServlet extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String workId = request.getParameter("workId");
String name = request.getParameter("name");
String gender = request.getParameter("gender");
String position = request.getParameter("position");
String tel = request.getParameter("tel");
String mail = request.getParameter("mail");
String password = request.getParameter("password");
System.out.println(workId+" "+name);
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
try {
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/workdiary","root","123456");
Statement stmt = conn.createStatement();
String sql="INSERT INTO registerInf(workId,name,gender,position,tel,mail,password)VALUES('"+workId+"','"+name+"','"+gender+"','"+position+"','"+tel+"','"+mail+"','"+password+"')";
System.out.println(sql);
stmt.executeUpdate(sql);
request.getRequestDispatcher("/zhuce.jsp").forward(request, response);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
} tomcat? serv;et jsp web 数据库
[解决办法]
form表达提交method不应该是post吗
[解决办法]
估计是你tomcat下有几个应用,提交地址不要加斜杠 “/” 吧
<form method="get" name="formal" action="/WorkDiaryServlet.do">
改为
<form method="get" name="formal" action="WorkDiaryServlet.do">
[解决办法]
你这个问题其实真的很简单呀,说先aciton那里不要加/,你的配置没有错,主要是你的提交方式用的是get方式,然后提交给后台之后,因为你get里面没有任何的代码块,所以是空白的,所以说请求就没有完成呀,你在get代码块里面加上一句就可以了。
doPost(request,response);这样就ok了呀
给分哟,按照我这样一定可以解决