2009-01-29 14 views
10

Necesito una solución con esta asignación de URL en web.xml para crear URL con una letra, seguido de un "_" seguido de cualquier combinación de caracteres alfanuméricos.Patrón de URL para asignación de servlets en web.xml

que desea asignar un servlet a algo como esto:

/something_* 

En lugar de:

/something/* 

Utilizando diferentes "algo" para diferentes JSP. Ejemplo:

/search_Something-I-searched-for 

He intentado utilizar:

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

Pero esto no parece funcionar. This answer me dice que no puedo hacer esto en web.xml, así que tal vez haya alguna solución.

No sé si esta información es importante, pero estoy usando JBoss y Struts2 en mi proyecto.

Respuesta

5

Asigne un servlet al directorio que lo contiene. Dentro de ese servlet, desmonte la ruta URL y forward al named servlet correspondiente.

0

Por qué no probar Spring MVC Framework. Spring puede ofrecer ese mapeo de URL que desee.

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

Seguir este Spring MVC Framework Tutorial

Cuestiones relacionadas