日期:2014-05-18  浏览次数:20711 次

Web应用中的XML解析
我在Eclipse下写了个.xml文件,又写了个Servlet来解析,看书上说应该在web.xml中配置这个Servlet使加载Web应用时就加载这个Servlet,这个web.xml应该怎么写啊,怎么我写的总是报错呢?

------解决方案--------------------
<web-app>
<servlet>
<servlet-name>servletname</servlet-name> <!--任意名-->
<servlet-class>TestServlet</servlet-class> <!--TestServlet是已编译的.class文件-->
</servlet>
<servlet-mapping>
<servlet-name>servletname</servlet-name> <!--与'任意名'要对应-->
<url-pattern>/first</url-pattern> <!--使first映射到刚刚的Servlet--> 
</servlet-mapping>
</web-app>
<!--这样只要在浏览器中输入http://127.0.0.1/RootName/first就会访问到Servlet-->
<!--RootName是你自己的根目录-->
------解决方案--------------------
如果要建立一个虚拟目录/MyWeb,通过访问http://localhost:8080/MyWeb可以看D:\Test(物理

地址)中的内容。那么就要做如下的配置(Tomcat 6.0)
在Tomcat的安装目录的conf/server.xml里找到 
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
在上句的下面加上:
<Context path="/MyWeb" docBase="D:\Test" reloadable="true" debug="0"></Context > 
在conf下的web.xml文件中找到: 
<init-param > 
<param-name >listings </param-name > 
<param-value >false </param-value > 
</init-param > 
把这个false设成true就行了;

还有就是D:\Test中应该有WEB-INF(全部大写)文件,WEB-INF下要有classes文件,classes中放的

的就是你的.class文件,web.xml放在WEB-INF目录下,就可以了;

------解决方案--------------------
建立虚拟目录并配置连接池.

在%tomcat%\conf\Catalina\localhost\目录下建立一个与工程同名的xml文件.这里工程叫webframe,所以建立webframe.xml文件,打开文件添加如下内容.

<Context path="/webframe" docBase="D:\myapp\Apache Software Foundation\Tomcat 5.5\webapps\webframe" 
reloadable="true" crossContext="true" debug="0" >

<Resource name="jdbc/mytest" auth="Container" type="javax.sql.DataSource" 
maxActive="100" maxIdle="30" maxWait="10000" 
username="root" password="root" 
driverClassName="com.mysql.jdbc.Driver" 
url="jdbc:mysql://localhost:3306/mytest?useUnicode=true&amp;characterEncoding=gbk&amp;autoReconnect=true"/>
</Context>


上面,需要更改path为"/<工程名>",docBase为"<该工程路径>",username为数据库用户名,password为数据库密码,url为"jdbc:mysql://<数据库服务器ip>:端口号/<数据库名>?useUnicode=true&amp;characterEncoding=编码方式".

------解决方案--------------------
如现500错误是WEB服务器问题,最大的可能是你的WEB。XML文件不干净,可能有不一样编码的字符。