如何使用 OSGI 模块创建简单的 WAR 文件
我是 Web java 编程新手。我想创建一个简单的 JSF 模块化应用程序。我找到了一个简单的教程 链接
但不幸的是我还有一些如何使用 OSGI 的问题:
- 我可以创建一个简单的 OGI 包并在其中放置一些 JSF 页面吗?如果不是,Web 应用程序的开发频率如何。
- 您能给我链接示例如何调用函数并将参数从 WAR 文件传递到 OSGI 模块吗?
问候
I'm new to Web java programming. I want to create a simple JSF modular application. I found a simple tutorial link
but unfortunately I still have some questions how to use OSGI:
- Can I create a simple OGI bundle and place in it some JSF pages? If not how usually web applications are developed.
- Can you give me link with example how I can call functions and pass arguments form a WAR file to OSGI module.
Regards
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不是专门针对 JSF 的答案(此可能是),但对于一般的 OSGi Web 应用程序,请查看 Pax-Web 如果您使用 行家。
开始使用 Pax-Web 的最简单方法可能是使用Karaf 然后运行命令
features:install war
一旦 WAR(或 WAB - 网页应用程序Bundle)已部署,您将能够使用
Servlet 初始化中的 osgi-bundlecontext 属性,例如:
使用该属性您可以在 OSGi 注册表中查找服务。
您需要注意捆绑包的 MANIFEST.MF 条目,特别是两个:
或者在符合 OSGi 的 WebApp 容器中,您需要添加:
规范,请参阅 v4.2
编辑:要在 JBoss 中部署,您很可能需要要使用 WAB 支持,请参阅企业 4.2 规范的第 128 节。这也可能有帮助:http://community.jboss.org/message/619443
有趣的是,JBoss AS7 使用 pax-web,因此相关文档也应该在很大程度上适用。
Not an answer specifically for JSF (this might be), but for OSGi web-apps in general take a look at Pax-Web if you're using maven.
The easiest way to get started with Pax-Web is probably to use Karaf and then run the command
features:install war
Once a WAR (or WAB - Web App Bundle) is deployed you'll be able to use the
osgi-bundlecontext attribute in Servlet initialization, eg:
Using this you can look up services in the OSGi registry.
You'll need to pay attention to the bundle's MANIFEST.MF entries, two in particular:
Or in an OSGi compliant WebApp container you'll need to add:
There's more info in the specifications, see the enterprise or compendium PDFs for v4.2
EDIT: For deploying in JBoss you'll most likely want to use the WAB support, see section 128 of the enterprise 4.2 spec. Also this may help: http://community.jboss.org/message/619443
Interestingly JBoss AS7 is using pax-web, so the documentation for this should largely apply too.