【发布时间】:2020-05-21 12:31:40
【问题描述】:
我在我的实体包中又添加了一个类作为 UserDetails.java。我已将所有必要的 Controller 和 DAO 类添加到各自的包中。但是我为这两个实体使用了一个服务类。现在,当我为早期的实体类运行服务时,它工作正常。但是当我为后来添加的实体类运行服务时,我给出了错误消息。
2020 年 5 月 20 日 12:20:26 AM org.apache.catalina.core.StandardWrapperValve 调用
严重:servlet [dispatcher] 在路径 [/TwoFactor] 的上下文中的 Servlet.service() 引发异常 [请求处理失败;嵌套异常是 java.lang.NullPointerException] 的根本原因
java.lang.NullPointerException
在 com.firstapp129.twofactor.service.DistScannerServiceImpl.getUsers(DistScannerServiceImpl.java:39)
我正在使用以下服务类代码:
package com.firstapp129.twofactor.service;
import java.util.List;
import javax.transaction.Transactional;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.firstapp129.twofactor.dao.DistScannerDAO;
import com.firstapp129.twofactor.dao.UserDetailsDAO;
import com.firstapp129.twofactor.entity.DistScanner;
import com.firstapp129.twofactor.entity.UserDetails;
@Service
public class DistScannerServiceImpl implements DistScannerService {
@Autowired
private DistScannerDAO distScannerDAO;
private UserDetailsDAO userDetailsDAO;
@Override
@Transactional
public List<DistScanner> getCustomers() {
// TODO Auto-generated method stub
return distScannerDAO.getCustomers();
}
@Override
@Transactional
public void saveDistScanner(DistScanner theDistScanner) {
distScannerDAO.saveDistScanner(theDistScanner);
// TODO Auto-generated method stub
}
@Override
@Transactional
public List<UserDetails> getUsers() {
// TODO Auto-generated method stub
return userDetailsDAO.getUsers();
}
@Override
@Transactional
public void saveUserDetails(UserDetails theUserDetails) {
userDetailsDAO.saveUserDetails(theUserDetails);
// TODO Auto-generated method stub
}
}
【问题讨论】:
-
字段 userDetailsDAO 为空。原因是缺少@Autowired 注释。