2017-09-01 6 views
1

J'ai cette configuration dans web.xml fileof mon application Web Java EE:Get-pattern URL de servlet nom

<servlet-mapping> 
    <servlet-name>ChangeLanguageServlet</servlet-name> 
    <url-pattern>/change</url-pattern> 
</servlet-mapping> 

Ce que je veux faire est d'obtenir la chaîne de "url-pattern" en utilisant le servlet-name, quelque chose comme ça (pseudocode):

// This would return "/change" 
String pattern = getPatternByServletName("ChangeLanguageServlet"); 

Je ne sais pas comment faire.

Une aide?

Merci!

Répondre

1

De l'ServletContext vous pouvez obtenir une Map calée par nom de servlet avec tous les servlets enregistrés dans l'application:

Map<String, ? extends ServletRegistration> registrations = 
     servletContext.getServletRegistrations(); 

Ensuite, utilisez l'API ServletRegistration pour extraire les métadonnées dont vous avez besoin, y compris:

+1

'ServletContext ServletContext = getServletContext()' Je pense que cela lui manquait –