我用的是eclipse3.4+tomcat插件+tomcat5.0新建一个tomcat project后,默认生成的目录结构让我有点晕,搜了半天也没找到一篇描述这个的帖子所以来问更直接吧默认生成WEB-INF/src、bin、src、WEB-INF这几个目录
问题:1、WEB-INF/src和src这两个,用哪个放java文件,比如servlet之类呢?2、bin目录是干嘛的?3、我现在想测试一下,项目根目录下新建的index.jsp,用input送个name变量进去,然后用servlet回显,index.jsp如下:
<?xml version="1.0" encoding="GB18030" ?>
<%@ page language="java" contentType="text/html; charset=GB18030"
    pageEncoding="GB18030"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030" />
<title>Insert title here</title>
</head>
<body>
<form method="post" action="./servletTestProj">
<p>姓名:<input type="text" name="name" /></p>
<p><input type="submit"/></p>
</form>
</body>
</html>WEB-INF下新建web.xml如下:<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN" "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
<web-app>
<servlet>
<servlet-name>ServletTestProj</servlet-name>
<servlet-class>test.ServletTestProj</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ServletTestProj</servlet-name>
<url-pattern>/ServletTestProj</url-pattern>
</servlet-mapping>
</web-app>servlet代码不贴了,已经测过没问题
然后启动tomcat后,输入姓名,然后返回404错误,请问下是xml文件写的有问题吗?怎么解决?

解决方案 »

  1.   

    动态web工程建的就能运行,但tomcat工程就不行了,这个挺奇怪的
      

  2.   

    应该是servlet路径的问题。自己找找试试
      

  3.   

    jsp文件应该是和web-inf在同一目录下的。tomcat的目录结构是这样的webapps/application/WEB-INF,image,jsp等目录/web.xml,classes,lib.其中classes为类文件,lib为所需要的jar包。应用符合这样的结构,在地址栏的地址书写正确的情况不会报404错误的。因为404的原因是文件的路径不正确。有个简单的方法就是把tomcat集成到myeclipse中,然后建立一个webproject。这样一般是不会发生404错误的。
      

  4.   

    恩,是web.xml路径大小写错了,谢谢楼上两位,现在项目原因不能用myEclipse,以前用过那个,确实方便,但不用就反而不会了。。还是搞清楚原理的好另外我发现项目根目录下的src和bin好像是eclipse自己默认生成的,在属性,build path里面可以设定。对于tomcat project建的工程是不是就没用了?