10

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.

Community
  • 1
  • 1
Fernando Briano
  • 7,699
  • 13
  • 58
  • 75

2 Answers2

5

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

palacsint
  • 28,416
  • 10
  • 82
  • 109
Tom Hawtin - tackline
  • 145,806
  • 30
  • 211
  • 305
0

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