application
ist der JSP definierte ServletContext.
Wenn Sie eine Bean abrufen und JSTL verwenden möchten, können Sie Folgendes tun:
%Vor%Aber, nur weil Sie können, bedeutet nicht, dass Sie sollten. Wenn Sie mehr tun, als eine Bean-Eigenschaft anzuzeigen, möchten Sie diese wahrscheinlich in ein Servlet oder einen anderen Controller einfügen.
Außerdem möchten Sie nicht den ApplicationContext verwenden, um Beans zwischen Ihren Controllern und Sichten zu übergeben.
Der Quellstamm-Webanwendungskontext ist im Servlet-Kontextattribut " org.springframework.web.context.WebApplicationContext.ROOT
:
Habe es nicht versucht, sollte aber über JSTL erreichbar sein. Aber was willst du erreichen? Ist JSP wirklich ein guter Ort, um Beans manuell zu holen und einige Geschäftsvorgänge durchzuführen? Sollten Sie nicht die ganze Arbeit in Servlet / Controller machen und JSP nur die Ansicht machen lassen, wie es beabsichtigt war?
BEARBEITEN: Ich habe gearbeitet, es funktioniert nicht. Wie auch immer, Sie könnten auf alle Beans nach Namen zugreifen, ohne dass ApplicationContext benötigt wird, je nachdem, was Sie tun müssen.
.
Wenn Sie die Eigenschaft exposeContextBeansAsAttributes von InternalResourceViewResolver auf true setzen, können Sie von JSP aus über EL: $ {applicationContext} zugreifen. Abhängig von dem, was Sie versuchen, kann dies mehr oder weniger geeignet sein.
BEARBEITEN : Ihr View Resolver für JSP muss etwas ähnlich wie:
sein %Vor%Das Beste ist, dass Sie die gewünschte Bohne mit ihrem Namen erhalten können. Wahrscheinlich brauchen Sie ApplicationContext also nicht.
Tags und Links spring