And*_*ndy 12 servlets jersey grizzly
我正在尝试使用Grizzly创建一个服务器来运行我使用Jersey开发的REST服务.我使用以下方法创建Grizzly服务器:
final String baseUri = "http://localhost:9998/";
final Map<String, String> initParams = new HashMap<String, String>();
initParams.put("com.sun.jersey.config.property.packages", "me.my.rest.package");
SelectorThread threadSelector =
GrizzlyWebContainerFactory.create(baseUri, initParams);
Run Code Online (Sandbox Code Playgroud)
正如我发现的所有例子似乎都暗示的那样.这很好,服务器启动并能够将传入的请求转发到我的资源类.
但是,服务实现要求它使用servlet过滤器.似乎Grizzly通过ServletAdapter
类支持过滤器的定义和其他类似的servlet相关配置选项.我的问题是,在使用com.sun.jersey.api.container.grizzly.GrizzlyWebContainerFactory
提供Jersey集成的时,我无法弄清楚如何定义过滤器.
有任何想法吗?
我想我可能会有一些东西给你......
GrizzlyWebServer ws = new GrizzlyWebServer(9999);
ServletAdapter jerseyServletAdapter = new ServletAdapter();
jerseyServletAdapter.setServletInstance(new ServletContainer());
jerseyServletAdapter.addInitParameter(
"com.sun.jersey.config.property.packages", "me.my.rest.package");
jerseyServletAdapter.setServletPath("/api");
// HERE IS HOW YOU ADD A FILTER
jerseyServletAdapter.addFilter(new MyFilter(), "HibernateSessionFilter", null);
ws.addGrizzlyAdapter(jerseyServletAdapter, null);
Run Code Online (Sandbox Code Playgroud)
......它为我工作,我希望它对你也有帮助.
归档时间: |
|
查看次数: |
5804 次 |
最近记录: |