WebSphere Liberty - 如何从通过EAR文件部署的servlet访问OSGi捆绑服务?

时间:2016-06-16 18:47:42

标签: websphere-liberty

我有一个通过EAR文件部署到WebSphere Liberty配置文件的servlet。 server.xml中的应用程序条目如下所示:

<application id="MyApp" name="MyApp" type="ear" location="MyApp.ear" />

servlet需要访问OSGi包提供的服务。我按照提到的here示例进行了操作。 OSGi包导出Counter接口所在的包。添加&#34; Import-Package&#34;向EAR的清单声明(就像OSGi包那样)解析对Counter的引用会导致class-def异常。所以我把这个类直接添加到了EAR中。现在,InitialContext.lookup()确实返回了一个代理对象,但将其类型转换为Counter接口会导致转换异常。

我怀疑发生了转换异常,因为EAR有自己的Counter.class。还有其他方法我应该解决这个问题吗? EAR如何从另一个OSGi包中导入包?

0 个答案:

没有答案