【发布时间】:2014-02-23 06:21:32
【问题描述】:
我有一个 MVC Spring 控制器,在 Imp 文件中,我有:
import com.ish.system.dao.UserDAO;
public class CustomImpl implements CustomService {
UserDAO userDAO = null;
public UserDAO getUserDAO() {
return userDAO;
}
public void setUserDAO(UserDAO userDAO) {
this.userDAO = userDAO;
}
public String ServiceType(userId) {
User user = userDAO.findById(userId);
...
这是控制台中的错误:
SEVERE: Servlet.service() for servlet dispatcherServlet threw exception
java.lang.NullPointerException
at com.ish.smdb.service.impl.CustomImpl.ServiceType(CustomImpl.java:142)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
这里是控制器:
@RequestMapping(value="/ServiceType", method=RequestMethod.GET)
public @ResponseBody String ServiceType(
Locale locale,
Model model) {
String result = custom.ServiceType();
return result;
}
这是豆子:
<bean id="Custom" parent="baseTransactionProxy">
<property name="target">
<bean id="CustomImpl" class="com.is.sm.service.impl.CustomImpl">
<property name="userDAO" ref="UserDAO" />
</bean>
</property>
</bean>
确定 userDAO 为空。但我没有找到共鸣。我错了什么?
【问题讨论】:
-
你能发布你的完整堆栈跟踪吗?
-
你能告诉我那是什么吗?我只是通过输出打印来跟踪代码。
-
您能否发布您的控制器代码,您如何调用 ServiceType 以及如何初始化 userDAO?
-
上面说的,你肯定说 userDAO 是空的,那是你的错误。它是空的..你的类是如何初始化的?肯定 userDAO 必须设置在某处或注入。
-
我刚刚发布了我的控制器。你能告诉我如何初始化它吗?
标签: java spring-mvc