解决方案 »

  1.   

    怀疑你的ant打包脚本有问题,检查下你的war包中有没有web.xml,还有相关的配置文件都有没有。
    或者你直接通过MyEclipse的 export 导出功能,导出一个war包,丢到tomcat下面看能不能正常启动访问,如果可以,那就说明你的ant脚本写的有问题了。
      

  2.   

    怀疑你的ant打包脚本有问题,检查下你的war包中有没有web.xml,还有相关的配置文件都有没有。
    或者你直接通过MyEclipse的 export 导出功能,导出一个war包,丢到tomcat下面看能不能正常启动访问,如果可以,那就说明你的ant脚本写的有问题了。
    之前有个问题好像我处理错了
    原来我的工程web的lib下游javaee.jar,无论在myeclipse下还是直接用war文件运行tomcat都会报
    validateJarFile(D:\apache\Tomcat 6.0_Tomcat-6\webapps\mycircles\WEB-INF\lib\javaee.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
    这个错误。网页就会显示404
    然后我把javaee包从lib底下移除,在工程中用bulid path 加入到libraries中
    这样用myeclipse运行就没有错了,但是用war还是有错。
    刚才我用export导出了war文件,tomcat还是报validateJarFile的这个错。
    我觉得是javaee.jar这里出了问题,但是不知道怎么解决
      

  3.   

    Offending class: javax/servlet/Servlet.class servlet.class 这个类冲突了,有多个。
    javaee.jar 这个jar好像是MyEclipse自己添加进来的,将这个jar删除掉,也不要引用。
    直接将tomcat下面的lib里面的jar添加进来,应该就OK了。你试一下。
      

  4.   

    建议不要使用MyEclipse自带的那些jar包,jar包都自己手动添加,这样也方便jar的管理。不然直接使用MyEclipse添加的jar,这些jar都分别什么作用都不大清楚,出问题也不便跟踪。刚查了下MyEclipse的javaee.jar中主要就是 servlet-api.jar  和 jsp-api.jar 这两个jar包tomcat自己有,然后工程又加载了javaee.jar,导致系统不知道该用哪个了。
      

  5.   

    404错误是找不到资源,这错应该不难找吧。用MyEclipse导出war试试。
    很有可能是你ant打包后一些路劲不一致导致的
      

  6.   

    Offending class: javax/servlet/Servlet.class servlet.class 这个类冲突了,有多个。
    javaee.jar 这个jar好像是MyEclipse自己添加进来的,将这个jar删除掉,也不要引用。
    直接将tomcat下面的lib里面的jar添加进来,应该就OK了。你试一下。
    调了半天,又发现了一个奇怪无比的问题我把打包war文件放入tomcat的webapp下
    直接点击tomcat下的Tomcat-6.exe加载war包,用浏览器登陆网站,发现是:HTTP Status 404 - Servlet action is not available这个错误
    然后我把webapp下的war包生成的同名文件夹删除
    用myeclise启动tomcat(不是run as myeclipse server application)加载war包,用浏览器访问,发现正常运行。
    这是为什么呢..
      

  7.   

    额 没用过tomcat.exe 你先将tomcat的缓存全都删除,然后把webapps下面的东西清空,然后将war包丢下面,用bin/startup.bat来启动tomcat,试试看。
      

  8.   

    楼主,先保证这个war包是个完整的war,你用ant打出来的war我怀疑丢文件,你先把之前提到的javaee.jar删除,然后使用myeclipse的export 导出 war包,放到tomcat的webapps下面,然后使用startup.bat启动,访问。
      

  9.   

    楼主,先保证这个war包是个完整的war,你用ant打出来的war我怀疑丢文件,你先把之前提到的javaee.jar删除,然后使用myeclipse的export 导出 war包,放到tomcat的webapps下面,然后使用startup.bat启动,访问。
    嗯,下了个tomcat的免安装版的解决了