私はSpringを初めて使用し、spring iocを小さな(テスト)Webアプリに接続したいと考えています。
私はそのようなサーブレットを持っています ProductServlet
:
public class ProductServlet extends HttpServlet{
private static final long serialVersionUID = 1L;
private RequestHelper requestHelper;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
processRequest(request);
}
private void processRequest(HttpServletRequest request){
requestHelper.process(request);
}
public RequestHelper getRequestHelper() {
return requestHelper;
}
public void setRequestHelper(RequestHelper requestHelper) {
this.requestHelper = requestHelper;
}
}
と私のweb.xml:
<servlet>
<servlet-name>ProductServlet</servlet-name>
<servlet-class>com.epam.productshop.controller.ProductShop</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ProductServlet</servlet-name>
<url-pattern>/ProductServlet</url-pattern>
</servlet-mapping>
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/spring-config.xml
</param-value>
</context-param>
また、私はそのような春の構成xmlを持っています:
<bean id="factory" class="com.epam.productshop.readerfactory.ReaderFactory">
<property name="file" value="/xml/products.xml" />
</bean>
<bean id="requestHelper" class="com.epam.productshop.requesthelper.RequestHelper" scope="singleton">
<property name="factory" ref="factory" />
</bean>
<bean name="ProductServlet" class="com.epam.productshop.controller.ProductServlet" scope="singleton">
<property name="requestHelper" ref="requestHelper"/>
</bean>
そして私はそのような問題を抱えています:
サーブレットのinit()中に、スプリングセットrequestHelperオブジェクトをサーブレットに組み込みたい。しかし、これの代わりに、それは私にnullpointerを与えます。
サーブレットを実装しようとしています。init()メソッドなど、インターネットで見られるものHttpRequestHandler
に書き込んSpringBeanAutowiringSupport.processInjectionBasedOnServletContext(this, getServletContext());
でいますが、これらすべてで問題が解決するわけではありません。
私を助けてください