一段时间以来,我一直在为 Tomcat 处理这个 web xml 文件。
<context-param>
<param-name>name</param-name>
<param-value>Bob</param-value>
</context-param>
<servlet>
<servlet-name>test</servlet-name>
<servlet-class>TestServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>test</servlet-name>
<url-pattern>/servlet/*</url-pattern>
</servlet-mapping>
我知道这个文件正在被读取,因为当我测试使用
public class TestServlet extends HttpServlet{
public void doGet(HttpServletRequest req, HttpServletResponse res){
res.setContentType("text/html");
String name = getServletContext().getInitParameter("name");
PrintWriter out = null;
try{
out = res.getWriter();
}catch(Exception e){}
out.println("<html><head></head><body><img src=\"/twitter.png\"><p>Hi my name is " + name + "</p></body></html>");
}
}
我能够读取我放入上下文参数的名称。我对你们的问题是如何创建一个 URL 映射,这样我就不必通过 /servlet/ 来访问我在 URL 中的 servlet?当我尝试制作一个 url 模式时,例如
/test/*,即使我说 website/test/TestServlet,我也无法访问 servlet。我从浏览器收到 404 Not Found 错误