Java 灰熊&x2B;从@Context ServletContext获取Init或Context参数
我是新来的灰熊+泽西,目前它运作良好。但是我发现我无法从@Context ServletContext获取Init或Context参数。下面是我的代码Java 灰熊&x2B;从@Context ServletContext获取Init或Context参数,java,servlets,jersey,grizzly,Java,Servlets,Jersey,Grizzly,我是新来的灰熊+泽西,目前它运作良好。但是我发现我无法从@Context ServletContext获取Init或Context参数。下面是我的代码 public static void main( String[] args ) throws IOException { GrizzlyWebServer ws = new GrizzlyWebServer(9998); ServletAdapter jAdapter = new ServletAdap
public static void main( String[] args ) throws IOException
{
GrizzlyWebServer ws = new GrizzlyWebServer(9998);
ServletAdapter jAdapter = new ServletAdapter();
jAdapter.setContextPath("/api");
jAdapter.setServletInstance(new ServletContainer());
jAdapter.addInitParameter("com.sun.jersey.config.property.packages", "test.ui.controller");
jAdapter.addInitParameter("test1","test1");
jAdapter.addContextParameter("test2","test2");
ws.addGrizzlyAdapter(jAdapter, null);
ws.start();
System.out.println("Running... please press enter to stop the server.");
System.in.read();
ws.stop();
}
我试着从@Context获取参数,比如follow
@Path("/home")
public class LoginController {
@GET
@Produces("text/html")
public String getIt(@Context HttpServletRequest req,@Context ServletContext context) {
System.out.println(context.getAttribute("test1"));
System.out.println(context.getAttribute("test2"));
System.out.println(context.getInitParameter("test1"));
System.out.println(context.getInitParameter("test2"));
return "hello";
}
}
但我所有的尝试都失败了。输出为null,null,null,null。这是Jersey()中的一个已知问题;我猜你在用灰熊2,对吧?它应该适用于Grizzly 1.x。顺便说一句,它已经在Jersey 2.0中修复,所以您可以查看一下。。看见