2011-03-25 1 views
0

Peut-être que le titre est un peu obscur, mais laissez-moi vous expliquer ... Dans un servlet, pour connaître la racine webapp, vous allez faire:Comment définir une propriété avec la racine webapp dans Spring?

String path = getServletContext.getRealPath("/"); 

le problème est que vous devez être en servlet. Maintenant, je voudrais passer ce chemin à un bean générique, qui est câblé dans mon servlet-context.xml. Comment faire ça?

Répondre

1

bean peut demander à injecter avec le ServletContext actuel, que ce soit en mettant en œuvre l'interface ServletContextAware, ou bien en utilisant autowiring, à savoir

private @Autowired ServletContext servletContext; 

Utilisez celui des deux correspond à votre code & config mieux.

Vous pouvez également envisager d'utiliser la classe ServletContextResource de Spring pour exécuter l'accès au système de fichiers par rapport au ServletContext, par ex. en utilisant ServletContextResource.getFile().

Questions connexes