我正在尝试开发一种服务,在所有不同的堆栈中,例如持久性,安全性等,在OSGi容器中作为OSGi包运行。我使用JBoss AS 7.1.1作为我的OSGi容器。
我使用以下JBoss堆栈来设置我的项目。
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.jboss.bom</groupId>
<artifactId>jboss-javaee-6.0-with-osgi</artifactId>
<version>1.0.3.Final</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
然而,我认为Manifiest.MF
以及激活器类将会自动生成(并不是说我在这方面遇到了问题),但令我惊讶的是,没有任何反应,我对此感到不满。 / p>
此外,我无法弄清楚如何在Web应用程序中将不同OSGi捆绑包提供的服务连接在一起。
我看到的大多数示例都是针对Spring环境的。请问有人能指出我在Java EE 6的方向吗?
答案 0 :(得分:3)
接线的最佳选择可能是蓝图。 Blueprint还可以用热切的单例bean替换Activators。 Blueprint不能直接在Web包中使用来注册和使用服务,但是JNDI-Blueprint桥允许您使用带有'osgi:service'命名空间的JNDI查找。
如果你谷歌用于Apache Aries,你可以找到大量的Blueprint和Enterprise OSGi教程,你可能会发现Enterprise OSGi in Action很有用。第1章和第2章可在网上免费获得。