2016-08-12 91 views
0

我试图使用表格通过JavaMail API发送邮件。我用我的servlet类创建了一个简单的jsp页面作为表单动作,一个java类作为Model。但是,每次运行Jsp页面进行测试时,它都会显示一个404页面,表示当单击表单上的“提交”按钮而不是重定向到servlet时,请求的资源不可用。Servlet页面显示404错误,没有出现

我认为这可能是一个servlet映射问题,所以我手动注册了一个web.xml我在NetBeans中创建的文件,但它仍然不起作用。

在servlet类的代码是:

<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" 
version="3.1"> 
<display-name>mailservlet</display-name> 
<description> 

</description> 

<servlet> 
    <servlet-name>mailservlet</servlet-name> 
    <servlet-class></servlet-class> 
</servlet> 

<servlet-mapping> 
    <servlet-name>mailservlet</servlet-name> 
    <url-pattern>/mailservlet</url-pattern> 
</servlet-mapping> 
<session-config> 
    <session-timeout> 
     30 
    </session-timeout> 
</session-config> 

mailservlet是servlet类的名称。

任何建议,还有什么可以做的,我们将不胜感激。

+0

在servlet标签,我想你忘了写servlet类的全名。 – zombie

回答

1

您需要将类名和包放入servlet-class中,否则它将不知道要使用哪个类。 e.g:

<servlet-class>mypackage.myclass</servlet-class> 
1

您需要添加servlet类的全名

<servlet-class>com.sample.domain.test.MailServlet</servlet-class> 

然后,你需要做一个post或get请求这个资源,例如

<form action="/contextroot/mailservlet" method="get"> 

在JSP页面