浏览器在那里找不到servlet

时间:2012-02-19 13:45:24

标签: java java-ee servlets netbeans glassfish

我正在尝试处理表单数据并将其放在netbeans附带的数据库 derbi 中。我使用的服务器是 Glassfish 。在单击提交数据按钮填写表单后,根据操作处理程序,请求应该跟随名为 FormHandler.do 的servlet,但是当我尝试联系到页面 FormHandler.do 这是浏览器显示的错误消息:

This webpage is not found
No webpage was found for the web address: 
file:///W:/UnderTest/WebApplication_GLASSFISH/src/java/FormHandler/FormHandler.do
Error 6 (net::ERR_FILE_NOT_FOUND): The file or directory could not be found.

但该文件与html文件(具有表单)位于同一目录中。这是我在表单标签中提供的网址类型:

<form method="post" action="FormHandler.do"> 
<b>Name:</b><input type="text" name="Name" /> <br /> <br />
<b>Email:</b><input type="email" name="Email" /> <br /> <br />
<b>Password:</b><input type="password" name="Password" /> <br /> <br />
<input type="submit" value="Register" />

这个问题可能是什么原因?

enter image description here

(请求进入servlet FormHandler.do 后,如果文本字段为空,则检查(根据逻辑)。如果它们为空,则转发请求显示错误的servlet,如果正确,则将该数据插入数据库并显示成功的servlet。)

1 个答案:

答案 0 :(得分:4)

  

找不到网址的网页:   文件:///宽:/UnderTest/WebApplication_GLASSFISH/src/java/FormHandler/FormHandler.do

您需要通过HTTP路径访问Web资源,而不是通过本地磁盘文件系统路径访问。像:as:

  

http://localhost:8080/WebApplication_GLASSFISH/FormHandler.do

/WebApplication_GLASSFISH部分是上下文路径。目前还不清楚你正在使用哪一个,但是这些信息会打印在服务器的启动日志中。像这样的东西:

INFO: WebApplication_GLASSFISH was successfully deployed in 3,770 milliseconds.

您需要确保浏览器地址栏中的网址与此匹配。

此外,HTML文件应该放在“网页”中,而不是“源包”中。将Registration.html移动到“网页”后,可以通过

打开它
  

http://localhost:8080/WebApplication_GLASSFISH/Registration.html

这样,表单将提交给正确的servlet URL,假设您已经

<form action="FormHandler.do">

这一切都是微不足道的。我建议再次通过一些不错的Servlet书/教程。将鼠标放在问题下方的标记上方,然后点击 info 链接以获得一个良好的起点。