Question

I need a workaround with this URL mapping in web.xml to create URLs with a letter, followed by a "_" followed by any combination of alphanumeric characters.

I want to map a servlet to something like this:

/something_*

Instead of:

/something/*

Using different "somethings" for different JSP's. Example:

/search_Something-I-searched-for

I tried using:

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

But this doesn't seem to work. This answer tells me I can't do this within web.xml, so maybe there's some workaround.

I don't know if this information is important, but I'm using JBoss and Struts2 in my project.

Was it helpful?

Solution

Map a servlet to the containing directory. Inside that servlet, take apart the URL path and forward to the appropriate named servlet.

OTHER TIPS

Why not try Spring MVC Framework. Spring can offer that url mapping you want.

@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
}

Watch this Spring MVC Framework Tutorial

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top