【发布时间】:2015-09-21 13:01:08
【问题描述】:
我收到以下NullPointerException:
Caused by: java.lang.NullPointerException at FacadeBean.createRegistration(FacadeBean.java:389)
FacadeBean.java下:
private SessionContext context
public CreateRegistrationResponse createRegistration() {
try {
// snip
} catch (DataAccessException de){
context.setRollbackOnly(); //---------line 389
throw new ServiceException("Error");
}
}
测试类
@Test(expected = ServiceException.class)
public void testCreateRegistrationError() throws ServiceException {
doThrow(DataAccessException.class).when(mockRegistrationPeristenceImpl).create(any(Registration.class));
facadeBeanTest.createRegistration(RegistrationFacadeMock.getCreateRegistrationRequest());
}
谁能告诉我如何模拟下面的行,这样我就可以忽略这个context.setRollbackOnly();
public class FacadeBean {
public FacadeBean() {}
@Resource
private SessionContext context
}
【问题讨论】:
-
我尝试了抑制和模拟,不起作用,抑制(field(FacadeBean.class, "context"));
标签: java jakarta-ee junit mockito