Holen Sie sich das Servlet Anfrage Objekt in eine POJO-Klasse
Ich brauche, um die aktuelle Seite URL in einem POJO, das aufgerufen wird, von einem Acegi-Klasse (müssen hinzufügen einige benutzerdefinierte Logik für die app an der ich arbeite) und benötigen zum abrufen der HttpServletRequest, so dass ich die subdomain der URL (auf die die Logik beruht).
Habe ich versucht, hinzuzufügen:
@Autowired
private HttpServletRequest request;
...
public void setRequest(HttpServletRequest request) {
this.request = request;
}
public HttpServletRequest getRequest() {
return request;
}
Aber wenn ich versuche, verwenden Sie das Anfrage-Objekt in meinem code, es ist null.
Irgendeine Idee was mache ich falsch oder wie kann ich besser gehen über das tun dies?
InformationsquelleAutor der Frage NRaf | 2011-06-10
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn die Bohne request-scoped können Sie autowire die HttpServletRequest wie Sie tun.
Ansonsten bekommen Sie die aktuelle Anfrage wie folgt:
Nutzt dieser thread-lokalen unter der Decke.
Wenn Sie sind mit Spring MVC, das ist alles, was Sie brauchen. Wenn Sie nicht mit Spring MVC, dann müssen Sie zum registrieren eines RequestContextListener oder RequestContextFilter in Ihrem
web.xml
.InformationsquelleAutor der Antwort sourcedelica