我的CLASSPATH是这样设置的:
.;C:\j2sdk1.4.2_07\lib;C:\j2sdk1.4.2_07\lib\dt.jar;C:\j2sdk1.4.2_07\lib\tools.jar;C:\Tomcat\common\lib\servlet.jar;C:\Tomcat\common\lib\servlet-api.jar;C:\Tomcat\common\lib\struts.jar
好象servlet.jar,servlet-api.jar;struts.jar都加入近来了啊?

解决方案 »

  1.   

    你怎么编译的?用的直接手工javac,还是用了IDE工具?如果用了工具的话,一般需要手工把包添加进来。
      

  2.   

    所有错误全文如下:
    HelloForm.java:2: package javax.servlet.http does not exist
    import javax.servlet.http.*;
    HelloForm.java:3: package org.apache.struts.action does not exist
    import org.apache.struts.action.*;
    ^
    HelloForm.java:4: cannot resolve symbol
    symbol  : class ActionForm
    location: class hello.HelloForm
    public final class HelloForm extends ActionForm
                                         ^
    HelloForm.java:15: cannot resolve symbol
    symbol  : class ActionMapping
    location: class hello.HelloForm
            public void reset(ActionMapping mapping,HttpServletRequest request)
                              ^
    HelloForm.java:15: cannot resolve symbol
    symbol  : class HttpServletRequest
    location: class hello.HelloForm
            public void reset(ActionMapping mapping,HttpServletRequest request)
                                                    ^
    HelloForm.java:19: cannot resolve symbol
    symbol  : class ActionMapping
    location: class hello.HelloForm
            public ActionErrors validate(ActionMapping mapping,HttpServletRequest re
    quest)
                                         ^
    HelloForm.java:19: cannot resolve symbol
    symbol  : class HttpServletRequest
    location: class hello.HelloForm
            public ActionErrors validate(ActionMapping mapping,HttpServletRequest re
    quest)
                                                               ^
    HelloForm.java:19: cannot resolve symbol
    symbol  : class ActionErrors
    location: class hello.HelloForm
            public ActionErrors validate(ActionMapping mapping,HttpServletRequest re
    quest)
                   ^
    HelloForm.java:21: cannot resolve symbol
    symbol  : class ActionErrors
    location: class hello.HelloForm
                ActionErrors eroors = new ActionErrors();
                ^
    HelloForm.java:21: cannot resolve symbol
    symbol  : class ActionErrors
    location: class hello.HelloForm
                ActionErrors eroors = new ActionErrors();
                                          ^
    HelloForm.java:24: cannot resolve symbol
    symbol  : class ActionMessage
    location: class hello.HelloForm
                       errors.add("username",new ActionMessage("hello.no.username.er
    ror"));
                                                 ^
    HelloForm.java:24: cannot resolve symbol
    symbol  : variable errors
    location: class hello.HelloForm
                       errors.add("username",new ActionMessage("hello.no.username.er
    ror"));
                       ^
    HelloForm.java:26: cannot resolve symbol
    symbol  : variable errors
    location: class hello.HelloForm
                    return errors;
                           ^
    13 errors
    问题看起来很大,但是所有的代码我都是按照书上面说的写的一个例子啊
    怎么会这么多的错误,但是编译PersonBean.java没有任何问题,代码如下:
    package hello;
    public class PersonBean
    {
        private String userName = null;
    public String getUserName()
    {
        return (this.userName);
    }
    public void setUserName(String userName)
    {
       this.userName=userName;
    }
    public void saveToPersistentStore()
    {}
    }
    还有编译HelloAction.java也出现同样的问题,代码如下:
    package hello;
    import javax.servlet.*
    import javax.servlet.http.*;
    import org.apache.struts.action.*;
    import org.apache.struts.util.*;
    public final class HelloAction extends Action
    {
        public ActionForward execute(ActionMapping mapping,
                             ActionForm form,
                             HttpServletRequest request,
                             HttpServletResponse response)
    throws Exception
    {
         MessageResources messages = getResources(request);
     ActionMessages errors = new ActionMessages();
     String userName = (String)((HelloForm)form).getUserName();
     String badUserName = "Monster";
     if(userName.equalsIgnoreCase(badUserName))
    {
        errors.add("username",new ActionMessage("hello.dont.talk.to.monster",
                           badUserName));
    saveErrors(request,errors);
    return(new ActionForward(mapping.getInput()));
     }
     PersonBean pb = new PersonBean();
     pb.setUserName(userName);
     pb.saveToPersistentStore();
     request.setAttribute(Constants.PERSON_KEY,pb);
     return (mapping.findForward("SayHello"));
    }
    }
      

  3.   

    我是在doc下面用javac编译的,所有的代码我也是用文本编辑器editplus写的
      

  4.   

    我在论坛上看到别人这样说:
    问题::package javax.servlet.http does not exist
    编译器与WEB服务器的JDK版本不同。
    我的web服务器是tomcat5.0.28,编译器是指什么我就不知道了,请指教。