在泽西 JAX-RS 中:
有没有办法从静态上下文访问 ResourceContext 的实例?到目前为止,我空手而归,并尝试了许多未能达到我期望的方法。这是我想要实现的示例片段:
import com.sun.jersey.api.core.*;
import javax.annotation.PostConstruct;
import javax.ws.rs.core.Context;
@Singleton
@Provider
public static class MyClass
{
private static MyClass singleton;
@Context
private ResourceContext context;
@PostConstruct
private void constructor ()
{
MyClass.singleton = this;
}
public static <T> T acquireResource(Class<T> clazz)
{
return MyClass.singleton.context.getResource(clazz);
}
}
但不幸的是,这不能正常工作,因为我认为提供程序是延迟加载的。我什至不确定“@Singleton”注解有什么作用。
我也尝试过扩展作为 Application 实例的 WebAppResourceConfig,但这破坏了我的应用程序,我不完全理解为什么。