我正在开发一个使用org.osgi.service.http.HttpService
的基于OSGi的应用程序,它不支持使用Servlet过滤器。
在我意识到我无法使用Servlet过滤器之前,我计划应用几个现有的过滤器。这些过滤器将相应的HTTP标头设置为:
X-UA-Compatible
标题我有什么选择?自that technique is unreliable以来,我不想使用meta
元素来控制缓存。使用meta
元素设置X-UA-Compatible
标题可能是可以接受的,但我仍然对其他方法感兴趣。
答案 0 :(得分:2)
您可以使用dm Server将WAR文件直接部署到OSGi环境中。在dm Server中运行的WAR是完全WAR和完全捆绑。
正在进行的工作是标准化OSGi上的WAR意味着什么。此规范称为OSGi Web容器。工作进展非常顺利,我是一个很好的方法,以及它的参考实现。我将在4-5天内提供RI的alpha代码以及详细说明用法的博客文章。请关注blog.springsource.com上的SpringSource博客。
我很遗憾无法链接到dm Server,因为我是新用户:(
答案 1 :(得分:1)
此issue for adding servlet filter support提供了一些潜在的解决方法。
此外:
Pax Web [extends] OSGi Http Service 更好的servlet支持,过滤器, 侦听器,错误页面和JSP 其他一些人为了满足 最新版本的Servlet规范。
答案 2 :(得分:1)
从Eclipse 3.5开始,您可以使用org.eclipse.equinox.http.registry.filters
扩展点定义过滤器。
答案 3 :(得分:0)
关于Pax Web:
paxweb / Examples页面上的示例不起作用。
例如,我输入以下命令:
pax-run scan-file:jar:mvn:org.ops4j.pax.web.samples / provision!/sample-helloworld-wc.bundles
指向我的浏览器:
http://localhost:8080/helloworld/wc
结果:
错误404 NOT_FOUND
另外,从文档中我不清楚,如果Pax Web可以在非OSGI servlet引擎内部工作,例如WebLogic,WebSphere。
答案 4 :(得分:0)
Pax web尚未在非OSGI servlet引擎(桥接模式)内工作。 Apache Felix在http://felix.apache.org处有一个很好的解决方案。