本帖最后由 easttime 于 2010-03-18 17:20:15 编辑

解决方案 »

  1.   

    楼主404错误是,你请求的url是不存在的/servlet/LoginServlet这个你好像写错了,写成/LoginServlet我觉得可以
      

  2.   

    看起来没问题,<url-pattern>/servlet/LoginServlet</url-pattern>里servlet只是个路径,和大小写没关系,提交登陆请求时交由/servlet/LoginServlet处理,干脆写简单点,比如,<url-pattern>/login</url-pattern>。
      

  3.   

    你指的不是包名,是要过拦截的地址
    上面这个<servlet-class>Servlet.LoginServlet</servlet-class>才是包名
      

  4.   

    我不是手动写的 是建servlet时自动生成的 
      

  5.   

    那为什么我把<url-pattern></url-pattern>中的地址改为首字母大写就能够登陆呢 如果不改就是404错误 
      

  6.   

    lz说的是2件事情。
    1是servlet类的包名,理论上只要符合java规范什么名字都可以。
    (但必须有至少一层包)
    2是url pattern,这个东西是“匹配”浏览器里输入的url,也就是网站地址的
    配置成“<url-pattern>/servlet/LoginServlet</url-pattern>”
    就是说如果url里面出现了“/servlet/LoginServlet”,
    就把http里面的数据封装成request,然后交给叫做“LoginServlet”的servlet来处理,
    至于“LoginServlet”是哪位?就看<servlet-name>叫做“LoginServlet”的servlet里面定义的servlet-class是哪个类了。有点绕,简单的响应/响应的servlet类程序的流程是:
    url(浏览器) -> url-pattern(web.xml) -> servlet-mapping的servlet-name(web.xml) -> servlet的servlet-name(web.xml) -> servlet-class(web.xml)至于“自动生成”这件事,url-pattern估计是软件自动判断出来的,
    lz可以无视之把它修改成自己想要的patternbtw:lz可以查查字典,看看pattern是什么意思,大概也就明白了。good luck