请问,我配置好了jdk后,编写了一个serlvet后测试不能通过,请教哪里错了??import java.io.IOException;
  import java.io.PrintWriter;
  import javax.servlet.ServletException;
  import javax.servlet.http.HttpServlet;
  import javax.servlet.http.HttpServletRequest;
  import javax.servlet.http.HttpServletResponse;
  public class Test extends HttpServlet {
  protected void doGet(HttpServletRequest request, HttpServletResponse response)
  throws ServletException, IOException {
  PrintWriter out=response.getWriter();
  out.println("<html><body><h1>This is a servlet test.</h1></body></html>");
  out.flush();
  }
  }

解决方案 »

  1.   

    这个方法是正确的,可能是你的JDK配置不正确或是你访问的路径不对. public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException { response.setContentType("text/html");
    PrintWriter out = response.getWriter();


    out.println(" <html> <body> <h1>This is a servlet test. </h1> </body> </html>"); 
    out.flush();

    }
    页面输出结果啊This is a servlet test. 
      

  2.   


      <servlet>
        <servlet-name>DownloadServlet</servlet-name>
        <servlet-class>com.zoushi.servlet.DownloadServlet</servlet-class>
      </servlet><servlet-mapping>
        <servlet-name>DownloadServlet</servlet-name>
        <url-pattern>/downloadServlet</url-pattern>
      </servlet-mapping>其中两个servlet-name要一致。url-pattern指的是你在地址栏里面要输入的地址。例如你的工程名为abc,tomcat端口为8080,那么你要访问这个servlet,就要输入http://localhost:8080/abc/downloadServlet 。最后的servlet-class表示的是你的这个servlet的路径。中间用实心点“.”连接。
      

  3.   

    请问高手,你上面的代码是在jdk里设置,还是在tomcat里设置???
      

  4.   

    也许我没有说清楚,我用jdk压根就不能编译servlet的程序,即javac  servlet.java程序不能成功编译,请问这是为什么??
      

  5.   

    如果你搭建的环境jdk是几系列的,最好让tomcat也是几系列的,譬如:jdk6.0, tomcat也要搭建tomcat6.0!
      

  6.   

    jdk1.5版本的,!tomcat5.5,按理说光配置好jdk后,跟编译servlet程序没有什么关系吧,你说的哪些都是在tomcat的配置问题,根本就不是什么编译问题!!
      

  7.   

    您将servlet这个类改名试试。因为我只通过MyEclipse自动编译,手动javac没有用过。
    在MyEclipse中如果您自己写的类名为servlet,那么他会与系统的重名。如果自己建一个叫Servlet.java的文件,那么通过网页防问他是会出错的。
    而且,调用servlet不能像调用其他类一样。javac的执行相当于在Eclipse当中的Java Application。首先要访问的是main方法。
    而servlet是一个封装的容器,它是客户端的web浏览器,http程序 和 服务器端的数据库,应用程序等之前的中间层,它的实例化和销毁是由容器来维护的。
    另外我写在上面的代码是在web.xml中配置的。
      

  8.   

    您可以查看一下这张帖子,我的一小部分言语是出自这里:
    http://topic.csdn.net/u/20090220/20/3cb75f27-858e-427c-b20c-f81d4b5103a5.html
      

  9.   

    那请问楼上的热心人,用jdk1.5版本和tomcat5.5版本配置jsp环境里用到servlet,怎么样配置?首先,我确定java及其javac命令能够使用,另外tomcat能够顺利运行local:8080的index.jsp,可是就是无法编译servlet的程序文件???另外,如何连接数据库mysqlserver???需要的驱动在哪里安装???谢谢,我在网上找了许多的安装步骤,可都不行,请教!
      

  10.   

    要在tomcat下运行servlet首先要找到web.xml文件。web.xml中就是之前我给您写出的那个配置:  <servlet>
        <servlet-name>DownloadServlet</servlet-name>
        <servlet-class>com.zoushi.servlet.DownloadServlet</servlet-class>
      </servlet><servlet-mapping>
        <servlet-name>DownloadServlet</servlet-name>
        <url-pattern>/downloadServlet</url-pattern>
      </servlet-mapping>而这个web.xml应该放在你工程目录下\WEB-INF目录中。下面我给您写出完整空白的web.xml的内容:<?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.4" 
    xmlns="http://java.sun.com/xml/ns/j2ee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    </web-app>以上是使用MyEclipse刚刚创建web工程时自动生成的web.xml文件。把我的代码加进去就是:<?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    <servlet>
    <servlet-name>DownloadServlet</servlet-name>
    <servlet-class>
    com.zoushi.servlet.DownloadServlet
    </servlet-class>
    </servlet> <servlet-mapping>
    <servlet-name>DownloadServlet</servlet-name>
    <url-pattern>/downloadServlet</url-pattern>
    </servlet-mapping>
    </web-app>我再给您复制一遍:
    其中两个servlet-name要一致,可以随意写,但为了方便记忆,要用一个具有实际意义的名称,当然,您也可以加上注释。
    url-pattern指的是你在地址栏里面要输入的地址。例如你的工程名为abc,tomcat端口为8080,那么你要访问这个servlet,就要输入http://localhost:8080/abc/downloadServlet 。
    最后的servlet-class表示的是你的这个servlet的路径。中间用实心点“.”连接。
    这样配置好了以后,tomcat就可以访问servlet了。如果还不能,请把错误代码发出来看看。
    至于您说的如何连接MySql数据库,您可以看看这个网页:http://blog.csdn.net/fdabobi/archive/2006/01/03/569304.aspx 里面讲得很详细。MySql的JDBC驱动包可以在这里下载:http://search.download.csdn.net/search/MySql%E9%A9%B1%E5%8A%A8
      

  11.   

    谢谢楼上的,我先试试吧,我估计不行,因为一般要把servlet程序配置到网页运行,先得把servlet程序编译成.class文件,可我现在最大得问题就是不能把它编译成.class文件,另外我用的是纯jdk配置tomcat环境,不是你用的(eclipse/netbeans)ide之类的,所以配置起来比较麻烦,运行jsp是没有问题的,但是就是运行servlet程序有问题,我想学的仔细点,请教阁下。
      

  12.   

    是的,确实存在您所说的问题,就是将.java编译成为.class的步骤。我都是用ide实现的,手动编译的步骤就省略了,在您的问题上自然也就忽视了。
    现在的问题是要把Test.java编译为Test.class。然后将Test.class放入您的 工程目录下\WEB-INF\classes\ 中就可以了。
    我给您手动编译试试
      

  13.   

    找个tomcat,在web.xml里面配置,然后访问就行
      

  14.   

    楼上的哥们,你下载个jdk然后编译上面的servlet的程序你试试???
      

  15.   

    http://topic.csdn.net/u/20070110/10/d6891e1c-9422-4ae8-9efc-8acc96a34234.html?1555619362
    这个可以帮您。
      

  16.   

    我的servlet-api.jar在tomcat6\lib下楼主试试
      

  17.   

    首先jdk中根本就没servlet-api.jar,当然不会把servlet.java编译成为.class文件啦。所以楼主还是用Myeclipse吧。搞这么复杂干嘛啊
      

  18.   

    虽然这是个很累的问题,但是我还是要把学会啊,如果一味使用ide编写程序不会配置j2ee环境,就算是学会开发j2ee,也只能说是学会个一半而已,我用过netbeans开发过j2ee,用过eclipse开发过移动设备的应用程序,但是,我现在被一个简单的问题给难倒了,你说我还是开发过j2ee吗??我现在都觉得可笑。我现在的问题是怎么样把servlet程序编译成.class程序。
      

  19.   


    没有用eclipse,手动编译servlet,除了设置classpath外,还要把 把COMMON/LIB下的SERVLET-API.JAR       拷贝到JDK/jre/lib/ext下,才能编译通过楼主您没有看这个吗?这样还是不行?
      

  20.   

    SERVLET-API.JAR 这个文件在哪个路径????怎么设置classpath????
      

  21.   

    servlet-api.jar的位置:F:\Tomcat 5.0\common\lib里面.
    F:\Tomcat 5.0为安装路径.
    一开始学就直接在Eclipse里建个Tomcat工程完事了.它会自动加上这个jar包的
      

  22.   

    我只是把tomcat和java的环境配置~!
      

  23.   

    不知道mysql数据库驱动安装到哪个路径???你上面的说的,我先试试吧!
      

  24.   

    我怎么也不能把servlet程序,编译成.class程序呀!提示出现非法字符,还有需要标识符。
      

  25.   

    如果你也是用tomcat6的话,你只需要在你的环境变量里classPath里配置好tomcat目录里的lib目录里的servlet-api.jar,要不你也可以把servlet-api.jar放在你安装的jdk目录jre\lib\ext里,那时候就能编译了
      

  26.   

    不知道,你们用netbeans是怎么配置servlet程序运行的??
      

  27.   

    楼主 注意:如果 你不是用的IDE 开发 要 先把servelt-api.jar 拷贝到jdk/jre/lib/ext目录下然后 测试 
    配置:
    <servlet>
    <sevlet-name>名字</servlet-name>
    <servelt-class> .java文件 </servlet-class>
    </servlet><servlet-mapping>
     <sevlet-name>名字</servlet-name>
     <url-partener>配置访问url 要以"/"开始<////
    </servlet-mapping>
      

  28.   

    楼上的难道你编写出来的.java的servlet程序不用编译成.class文件就直接部署到tomcat上????,你是不是没有认真看我的帖子???
      

  29.   

    现在的问题是怎么样编译servlet程序成为.class程序。