In Spring web mvc
1) If we define DispatcherServlet
as below
<servlet>
<servlet-name>appServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
</servlet>
it looks for file named appServlet-servlet.xml
under WEB-INF
folder as mentioned in the spring reference.
My question is can we change this file name and location it looks for? (I think using context or init parameters we can do this,can any body tell me what exactly it should be?)
2) In every spring web mvc web.xml
,we will have the below line:
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
Here, My question is what context files it looks for? (is is this context loader listener which looks for dispatcherservlet-servlet.xml?)
3) Difference between dispatcherservlet-servlet.xml
and applicationcontext.xml
? (I saw some examples..where people are importing applicationcontext.xml
into dispatcherservlet-servlet.xml
?)
4) Please tell me how many contexts we can have for spring web and are there any naming conventions for this(like dispatcher servlet)?/
"The namespace can also be set explicitly via the namespace
servlet init-param." You can set whatever path you want there, relative to the context root
No, the ContextLoaderListener
looks for applicationContext.xml
(or for the file specified by the context-param contextConfigLocation
. Again the path is relative to the context-root. I usually place mine in /WEB-INF/classes/applicationContext.xml
, and set this as a value of the context-param).
The dispatcherServlet-servlet.xml
is a child context to the one defined by applicationContext.xml
. The child context can access beans from the parent context, but the opposite is not true. So imagine you have a "web" context, with all controllers and web-related stuff, and a "main" context with everything else
It is advisable to have as few contexts as possible (for the sake of simplicity). But you can define multiple dispatcher servlets, and hence have multiple "child" contexts.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With