Eu quero injetar um objeto no servlet usando Spring
Eu tenho dois servlets no meu aplicativo e quero que um objeto da classe A seja injetado nos dois servlets, e também gostaria do mesmo ApplicationContext em todo o aplicativo, ou seja, nos dois servlets mencionados na primeira resposta desta pergunta no SO:Injeção de mola no Servlet
Agora, passei por muitas perguntas como essas, mas não consegui encontrar algo exatamente que corresponda à minha pergunta. Para explicar melhor, escrevo aqui um código aproximado:
public class servletOne extends HttpServlet {
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
}
public class servletTwo extends HttpServlet {
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
}
Então, acima, estão os dois servidores agora no applicationContext.xml. Eu quero passar um objeto para esses dois servlets, de acordo com a convenção normal. Quero uma funcionalidade como esta:
<bean id="servletFirst" class="mypackage.servletOne">
<property name="message" ref="classObject" />
</bean>
<bean id="servletFirst" class="mypackage.servletTwo">
<property name="message" ref="classObject" />
</bean>
<bean id="classObject" class="mypackage.classA">
</bean>
Não sei se isso é possível ou não, sou novo na primavera e tenho apenas conhecimentos básicos de injeção de dependência.
Se alguém puder me ajudar com isso, eu realmente aprecio isso. Isso esclareceria muitas das minhas dúvidas e me ajudaria a avançar no processo de aprendizado da Primavera.
Este é o web.xml
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet>
<servlet-name>servletOne</servlet-name>
<servlet-class>mypackage.servletOne</servlet-class>
</servlet>
<servlet>
<servlet-name>servletTwo</servlet-name>
<servlet-class>mypackage.servletTwo</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>servletOne</servlet-name>
<url-pattern>/servletOne</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>servletTwo</servlet-name>
<url-pattern>/servletTwo</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
300
</session-timeout>
</session-config>
</web-app>