我正在尝试按照此处的示例创建工厂以注入我的 HttpSession。不幸的是,无论我尝试什么,它都不起作用。不知道可能是什么问题。
我尝试只注入 HttpServletRequest 和提供程序。这是我使用提供程序的示例。尝试在提供方法中访问提供程序时,错误是空指针异常。如果我尝试注入 HttpServletRequest,则没有可用于注入的对象。我正在使用 JerseyTest 在 GrizzlyTestContainer 中运行它。为了绑定 HttpServletRequest,我需要添加一些东西到我的活页夹中吗?我似乎找不到一个例子。
public class HttpSessionFactory implements Factory<HttpSession> {
private final HttpServletRequest request;
@Inject
public HttpSessionFactory(Provider<HttpServletRequest> requestProvider) {
this.request = requestProvider.get();
}
@Override
public HttpSession provide() {
return request.getSession();
}
@Override
public void dispose(HttpSession t) {
}
}