【发布时间】:2015-02-15 16:14:12
【问题描述】:
我对春天很陌生。我有动态 Web 应用程序项目。在里面我有一个接收请求的servlet。该请求带有请求编号。基于否,我将为适当的请求类创建一个新对象并为请求提供服务。现在我需要与 spring 集成。我应用了以下配置,
WEB.XML(加载弹簧上下文)
<servlet>
<servlet-name>spring-dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/docspring.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>spring-dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
在小服务程序中
package com.receve;
@Controller
@WebServlet("/Recever")
public class Recever extends HttpServlet {
@Autowired
private ClassOne one;
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
//request parameters receved and
if(req==1){
one.print();
}
}
public ClassOne getOne() {
return One;
}
public void setOne(ClassOne one) {
this.one = one;
}
}
在 ClassOne 中
package com.operations;
@Component
public Class ClassOne{
public void print(){
//some statement;
}
}
在spring.xml中
<context:annotation-config />
<context:component-scan base-package="com" />
但是在运行应用程序时,我在调用 one.print() 方法时遇到了 NullPointerexception。获得这个的正确方法(配置)是什么?
谢谢。
【问题讨论】:
-
你想要什么。 servlet 或控制器。目前两者都是,并且您有该类的 2 个实例。我建议您删除
@WebServler注释和extends Servlet并使用@RequestMapping使其成为适当的控制器。
标签: java spring spring-mvc servlets