干吗要写一个jsp来调用servlet呢?直接调用servlet就可以了,在web.xml中加入下面配置
<servlet>
        <servlet-name>testservlet</servlet-name>
        <servlet-class>testservlet</servlet-class>
    </servlet>        <servlet-mapping>
        <servlet-name>testservlet</servlet-name>
        <url-pattern>/servlet/test</url-pattern>
    </servlet-mapping>然后用浏览器访问 http://localhost:8080/servlet/test 即可。http://www.javayou.com

解决方案 »

  1.   

    楼上的说的对,不过你要使用JSP对servlet进行调用
    也要做,相应的配置,配置和楼上的朋友的完全相同,在
    jsp中form对应的action等于上面配置文件中的
    <servlet-mapping>中的
    url-pattern,这就完成了
    即:action="/servlet/test"
    这就实现了jsp中调用servlet
      

  2.   

    <servlet-class>testservlet</servlet-class> 是带包的类地址<url-pattern>/servlet/test</url-pattern>是在地址栏里输入的url<servlet-name>testservlet</servlet-name>是把上面两个关联起来的name
      

  3.   

    我把我的类和包(类存放的目录)全部改为servlettest,然后http://localhost:8080/servlet/test还是不行啊,兄弟们怎么回事啊,我的web.xml文件如下:
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!DOCTYPE web-app
        PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
        "http://java.sun.com/dtd/web-app_2_3.dtd">
    <web-app>
    <servlet>
            <servlet-name>servlettest</servlet-name>
            <servlet-class>servlettest</servlet-class>
        </servlet>    
       <servlet-mapping>
            <servlet-name>servlettest</servlet-name>
            <url-pattern>servlet/test</url-pattern>
        </servlet-mapping>
    </web-app>
    老大们帮帮小弟啊,急死了!
      

  4.   

    这是错误提示:
    Apache Tomcat/4.0.4 - HTTP Status 404 - /servlet/test1--------------------------------------------------------------------------------type Status reportmessage /servlet/test1description The requested resource (/servlet/test1) is not available.--------------------------------------------------------------------------------
      

  5.   


      TOMCAT安装好以后,首先应进行设置。TOMCAT默认是不支持私有SERVLET的,需
    要修改conf下的web.xml,将以下2部分的注释去掉,使其生效。    <servlet>
            <servlet-name>invoker</servlet-name>
            <servlet-class>
              org.apache.catalina.servlets.InvokerServlet
            </servlet-class>
        </servlet>---------------------------
        <servlet-mapping>
            <servlet-name>invoker</servlet-name>
            <url-pattern>/servlet/*</url-pattern>
        </servlet-mapping>
    ----------------------------------    servlet应放在WEB-INF/CLASSES中。Servlet打什么包啊,谁教你的??
    Servlet不要打包。映射虚拟路径是另一码事。    设置好后直接访问 http://localhost:8080/servlet/类名
      

  6.   

    package servlettest;的话
    你应该写成
    <servlet-class>servlettest.servlettest</servlet-class>
    servlettest.class放到WEB-INF/CLASSES/servlettest下面
      

  7.   

    在jbuider x中建servlet时命名首字母大写,则在自动生成的xml中如:
    <servlet>
        <servlet-name>LoginServlet</servlet-name>
        <servlet-class>manager.LoginServlet</servlet-class>
      </servlet>
    在jsp 中调用时servlet名必须与此处的<servlet-name>中的一致
      

  8.   

    还是不行啊,烦死了,把代码全搞上,老大们看看:
     SERVLET:
    package servlettest;
    import java.io.*;
    import java.util.*;
    import java.lang.*;
    import javax.servlet.*;
    import javax.servlet.http.*;public class servlettest extends HttpServlet{

    public void doGet(HttpServletRequest request,HttpServletResponse response) throws IOException{
    response.setContentType("text/html");
    PrintWriter out=response.getWriter();
    out.println("<html>");
    out.println("<head>");
    out.println("<title>"+"servlet"+"</title>");
    out.println("</head>");
    out.println("</body>");
    out.println("<div align=center>");
    out.println("<p>");
    out.println("<p>");
    out.println("hello ");
    out.println("</div>");
    out.println("</body>");
    out.println("</html>");
    }
    }
    已编译通过,servlettest.class放在E:\Program Files\Apache Tomcat 4.0\webapps\ROOT\WEB-INF\classes\servlettest下.
    E:\Program Files\Apache Tomcat 4.0\webapps\ROOT\WEB-INF下的web.xml如下:
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!DOCTYPE web-app
        PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
        "http://java.sun.com/dtd/web-app_2_3.dtd">
    <web-app>
    <servlet>
            <servlet-name>servlettest</servlet-name>
            <servlet-class>servlettest.servlettest</servlet-class>
        </servlet>    
       <servlet-mapping>
            <servlet-name>servlettest</servlet-name>
            <url-pattern>servlet/test</url-pattern>
        </servlet-mapping>
    </web-app>
    现通过http://localhost:8080/servlet/test浏览,出错提示:
    Apache Tomcat/4.0.4 - HTTP Status 404 - /servlet/test--------------------------------------------------------------------------------type Status reportmessage /servlet/testdescription The requested resource (/servlet/test) is not available.--------------------------------------------------------------------------------
    老大们帮小弟搞定一下啊,我是初学
      

  9.   

    巨晕,提示web.xml是只读文件,无法更改!
      

  10.   

    你自jsp中调servlet的名字是什么?
      

  11.   

    把<url-pattern>servlet/test</url-pattern>
    改为<url-pattern>test</url-pattern>
      

  12.   

    访问的时候http://localhost:8080/root/servlet/test试试?
      

  13.   

    <url-pattern>servlet/test</url-pattern>--><url-pattern>/servlet/test</url-pattern>
        
      

  14.   

    看样子,这个是搞不定了啊,那小弟求JSP+SERVLET例子代码,还有WEB.XML配置。
      

  15.   

    保证解决
    1、代码如楼主所供
    2、web.xml部分
    <servlet>
         <servlet-name>servlettest</servlet-name>
         <servlet-class>servlettest.servlettest</servlet-class>
    </servlet>    
    <servlet-mapping>
         <servlet-name>servlettest</servlet-name>
         <url-pattern>/servlet</url-pattern>
    </servlet-mapping>
    3、编译后的class文件所在目录...\WEB-INF\classes\servlettest下
    4、访问
    http://localhost:8080/[ROOT]/servlet
    再不行,谁也帮不了你:)
      

  16.   

    shaopin(shaopin)说得没有错
    肯定能解决
    试一试
      

  17.   

    你不是放在ROOT目录下吗?当然访问
    http://localhost:8080/ROOT/servlet/test
    才能找到了
      

  18.   

    我现在被烦死了,搞了几天没搞成,你们所指的WEB.XML是E:\Program Files\Apache Tomcat 4.0\webapps\ROOT\WEB-INF下的吗?
      

  19.   

    是你自己应用下的web-inf\web.xml,改一下OK :)
      

  20.   

    首先你的TOMCAT有没有配置成功,
    然后在看你的代码。
      

  21.   

    用jsp调用也可以,如下:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <BODY>
    <center>
    <form action="/servlet/test" method="post">
    <input type="submit" value="Go" />
    </form>
    </center>
    </BODY>
    </HTML>
    其中的action就是<url-pattern>,也就是一楼liusoft(凤梨罐头)的/servlet/test
      

  22.   

    tomcat环境肯定可以啊,我写了好多JSP了,都可以看到结果,就搞这个SERVLET不行,哎
      

  23.   

    你装的是tomcat4话,如果是4.1.12版之前的话本身默认的调用器就是打开的,直接运行在浏览器上用,http://localhost:8080/servlet/servlettest.testservlet,如果是以后的版本调用器是关的,你要在conf/web.xml修改一下,把以下语句前面的注释符支掉
    <servlet>
            <servlet-name>invoker</servlet-name>
            <servlet-class>
              org.apache.catalina.servlets.InvokerServlet
            </servlet-class>
        </servlet>---------------------------
        <servlet-mapping>
            <servlet-name>invoker</servlet-name>
            <url-pattern>/servlet/*</url-pattern>
        </servlet-mapping>
    当然前提是你servlet的放在root/Web-inf/classes/servlettest
    jsp调用时用<form action="/servlet/servlettest.testservletst" method="post">