程序没问题,是你的配置不当。虽然你import了一些东西,但它们没有在你的classpath目录中。import java.servlet.*;
import javax.servlet.*;你import的这两个类,都是jswdk的,所以你要把它们加入你的classpath中。
至于最后的要求是你这个文件要用你的类名来做文件名才行,注意大小写。我不是用的jswdk而是用weblogic,所以我每次不是直接用javac来编译文件,我建了一个批处理,先把编译servlet所要的类库加入classpath中再调用javac来编译。我给出你这个 build.bat文件吧,我可以参考的修改一下让它支持你的 jswdk环境。
一般就是你看一下jswdk提供的几个jar文件,用winzip打开它们,看看你要的 java.servlet.*在什么文件中,把这个文件包含入classpath中即可,(宁多勿缺)。
@ECHO OFFset _CLASSPATH=%CLASSPATH%
set WL_HOME=D:\weblogic
set JAVA_HOME=d:\jdk1.3set CLASSPATH=%CLASSPATH%;%WL_HOME%\classes;
set CLASSPATH=%CLASSPATH%;%WL_HOME%\lib\weblogicaux.jar;
set CLASSPATH=%CLASSPATH%;.;..;../..javac %1 %2 %3set CLASSPATH=%_CLASSPATH%
set _CLASSPATH=

解决方案 »

  1.   

    问题1;
    不要import java.servlet.*;
    好象没有这个类(反正我一直没有用到)
    要引用import javax.servlet.http.*;
    问题2:
    你把存放helloworld.java目录加到环镜变量CLASSPATH=......
    你可以找一个java编辑器如FreeJava,jbuilder....来编辑*.java文件;
    下面程序是可以编译运行过的。package helloworld//相应的目录;import java.io.*;
    import javax.servlet.http.*;
    import javax.servlet.*;
    public class HelloWorld extends HttpServlet
    {
      private static final String CONTENT_TYPE = "text/html";
      /**Initialize global variables*/
      public void init(ServletConfig config) throws ServletException
      {
        super.init(config);
      }  public void doGet(HttpServletRequest request, HttpServletResponse response)
        throws IOException, ServletException
        {
            response.setContentType("text/html");
            PrintWriter out = response.getWriter();
            out.println("<html>");
            out.println("<body>");
            out.println("<head>");
            out.println("<title>Hello World!</title>");
            out.println("</head>");
            out.println("<body>");
            out.println("<h1>Hello World!</h1>");
            out.println("</body>");
            out.println("</html>");
        }
    }