2014-05-11 62 views
0

我正在研究一个小的EJB应用程序..我有一个JSP页面,其中有一个表单,用户填写其详细信息,然后在按钮上单击它,将其发送到数据库的servlet页面要通过我的实体class.But加入当我点击JSP页面上的按钮,我收到以下错误HTTP状态404 - 请求的资源不可用

HTTP状态404 -

类型状态报告

消息

description请求的资源()不是vailable。

GlassFish应用服务器版3.1.2.2

我的servlet页面Contactservlet.java是

public class Contactservlet extends HttpServlet { 
@EJB 
private AbstractFacade cfl; 

protected void processRequest(HttpServletRequest request, HttpServletResponse response) 
     throws ServletException, IOException { 
    response.setContentType("text/html;charset=UTF-8"); 
    PrintWriter out = response.getWriter(); 
    try 
    { 
     String name=request.getParameter("name"); 
     String mail=request.getParameter("mail"); 
     String phn=request.getParameter("phn"); 
     String cmnt=request.getParameter("cmnt"); 
     Contact c=new Contact(); 
     c.setCmnt(cmnt); 
     c.setMail(mail); 
     c.setName(name); 
     c.setPhn(phn); 
     cfl.create(c); 

    } 
    catch(Exception ex) 
    { 
     out.println(ex); 
    } 
} 

我的web.xml文件:

<?xml version="1.0" encoding="UTF-8"?> 
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> 
<servlet> 
    <servlet-name>Contactserv</servlet-name> 
    <servlet-class>Contactservlet</servlet-class> 
</servlet> 
<servlet-mapping> 
    <servlet-name>Contactserv</servlet-name> 
    <url-pattern>/Contactserv</url-pattern> 
</servlet-mapping> 
<session-config> 
    <session-timeout> 
     30 
    </session-timeout> 
</session-config> 
<welcome-file-list> 
    <welcome-file>index.jsp</welcome-file> 
</welcome-file-list> 
</web-app> 

代码为我的JSP文件是

<form action="Contactservlet"> 
     Name <input type="text" name="name"/> 
     Mail <input type="text" name="mail"/> 
     Phone <input type="text" name="phn"/> 
     Comment <input type="text" name="cmnt"/> 
     <input type="submit" name="bt" value="Submit"/> 
</form> 
+0

你的JSP文件是错误的,如果你发布它的一部分“电话”这个servlet,然后有人会告诉你你如何错误地设置按钮的目标。 – Isaac

+0

这是我的Jsp文件

Name Mail Phone

+0

@Isaac我已经发布了我的JSP页面,以方便您使用。现在,您可以告诉我自己在哪里出错了。 –

回答

1

您的问题与表单的action属性的设置不正确有关。你需要动态设置它,在你的web应用的上下文根保:

action="${request.contextPath}/Contactserv" 

(顺便说一句:你目前的JSP有“/ Contactservlet”,在它的行动必须指定Servlet的servlet-mapping你会喜欢参考)

一个更好的办法是使用JSTL:

action="<c:url value="/Contactserv"/>" 
+0

我试过了,但结果仍然相同 –

相关问题