访问servlet时候,可以用http://localhost:8080/testJSP/servlet/HelloWorld访问,但是加了包以后,这样访问为什么不行?http://localhos

zhkchi 2004-11-27 11:08:26
RT
谢谢
...全文
555 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhkchi 2004-11-29
  • 打赏
  • 举报
回复
谢谢帮助 问题解决了。揭帖
tom2005 2004-11-28
  • 打赏
  • 举报
回复
不加 包可以吗
joincsdn 2004-11-28
  • 打赏
  • 举报
回复
运行servelt是根据你在web.xml文件中配置的url来访问的,你在web.xml里边配置了吗????还是先找些资料看看吧
zhkchi 2004-11-28
  • 打赏
  • 举报
回复
楼上的不对哦
tom2005 2004-11-28
  • 打赏
  • 举报
回复
http://localhost:8080/testJSP/servlet/test/H
这样试一下
cgliang00 2004-11-28
  • 打赏
  • 举报
回复
希望下次有和我一样出现错误的人,看到了这样个例子,有点帮助吧。
***************************
/*HelloWorld.java*/
放到虚拟目录或别的目录下成这样的结构web-inf/classes/HelloWorld.java
然后编译了成了这样的结构web-inf/classes/Hello/HelloWorld.class

package Hello;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWorld extends HttpServlet
{
public void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException
{

response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html><head><title>");
out.println("This is my first Servlet");
out.println("</title></head><body>");
out.println("<h1>Hello,World!</h1>");
out.println("<h2>Hello,World!</h2>");
out.println("<h3>Hello,World!</h3>");
out.println("</body></html>");

}
}

********************************
/*web.xml*/修改后的web.xml,修改后记得重新启动Tomcat不然总是出错误的。说找不到。

<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>
<display-name>My Web Application</display-name>
<description>
A application for test.
</description>
<servlet>
<servlet-name>HelloWorld</servlet-name>
<servlet-class>Hello.HelloWorld</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>/servlet/HelloWorld</url-pattern>
</servlet-mapping>
</web-app>
****************************************

把它用Jcreator编译了的HelloWorld.class把打包的以Hello/HelloWorld.class这样的结构一起
copy到了web-inf里的classes底下。然后去把web-inf里的web.xml修改,加上以下几行:
<servlet-name>HelloWorld</servlet-name> /*注册一个servlet的别名,一般就用类的名字*/
<servlet-class>Hello.HelloWorld</servlet-class>/*指明它在web-inf的classes底下开始的位置*/
</servlet>
<servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>/servlet/HelloWorld</url-pattern>/*一般是用/servlet/*或用/servlet/servlet的名字*/
就好了。

<servlet-name>HelloWorld</servlet-name>
<servlet-class>Hello.HelloWorld</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>/servlet/*</url-pattern>
我一直从网上看到的都是这几句要点。一个要点是注册了servlet;一个要点是为这个servlet指定一个位置。
但是由于每次修改了web.xml后没有重新启动Tomcat。总是以为配置web.xml出错了。一直在修改一直在测试,却总是出来错误。就是在这个原因了。
如果在ROOT里放的servlet的话,用http://localhost:8080/servlet/HelloWorld访问
如果放到虚拟目录,比如我的是lanziman的话就用http://localhost:8080/lanziman/servlet/HelloWorld访问。
chenyongcsdn 2004-11-28
  • 打赏
  • 举报
回复
加包和这个有什么关系?搞不懂!!!!
eikoor 2004-11-27
  • 打赏
  • 举报
回复
我也是剛學jsp,幫妳頂。
不過為什么是.H結尾的文件啊
一班不是.asp或.htm的嘛?

81,117

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧