我需要在 web.xml 中使用此 URL 映射来解决此问题,以创建带有字母、后跟“_”、后跟字母数字字符的任意组合的 URL。

我想将 servlet 映射到如下所示:

/something_*

代替:

/something/*

对不同的 JSP 使用不同的“东西”。例子:

/search_Something-I-searched-for

我尝试使用:

  <servlet-mapping>
    <servlet-name>MyServlet</servlet-name>
    <url-pattern>/something_*</url-pattern>
  </servlet-mapping>

但这似乎不起作用。这个答案 告诉我不能在 web.xml 中执行此操作,所以也许有一些解决方法。

我不知道这些信息是否重要,但我在我的项目中使用 JBoss 和 Struts2。

有帮助吗?

解决方案

将 servlet 映射到包含目录。在该 servlet 内,分解 URL 路径并 向前 到适当的 命名servlet.

其他提示

为什么不尝试Spring MVC框架。 Spring可以提供你想要的URL映射。

@RequestMapping(value="/something_{name}", method=RequestMethod.GET)
public String demo(@PathVariable(value="name") String name, ModelMap map) {

String something = name;

// Do manipulation

return "something"; // Forward to something.jsp
}

关注此 Spring MVC框架教程

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top