首页 文章
  • 4 votes
     answers
     views

    如何从OSGi HttpService中注册的Servlet获取OSGi服务引用?

    在OSGi环境中运行的HttpServlet(即在OSGi HttpService中注册)想要调用一些OSGi服务来完成它的任务,这似乎很自然 . 问题是如何在servlet中获取对这些OSGi服务的引用 . 一种方法是将依赖项注入正在向OSGi HttpService注册的HttpServlet实例,如下所示: MyServlet servlet = new MyServlet(); servl...
  • 1 votes
     answers
     views

    蓝图服务是否作为OSGI捆绑服务实施?

    关于blueprint bundle如何使用OSGI容器执行依赖注入,我有点困惑和好奇 . 我知道普通的旧OSGI包含服务注册表和捆绑 Headers /接口,以允许对象作为服务暴露给其他捆绑包 . 蓝图仅仅是这种行为的延伸吗?即blueprint extender包是否执行底层的OSGI调用来注册/获取bundle的blueprint xml中声明的任何服务?
  • 4 votes
     answers
     views

    IPojo - @Reference不注入服务

    在一个包中有接口IService,由ServiceImpl类实现: public interface IService { void doSomething(); } @Component @Provides @Instantiate public class ServiceImpl implements IService { public void doSomething() ...
  • 1 votes
     answers
     views

    从OSGi片段包访问服务

    在我的项目中,有一个OSGi包,它将一个接口 com.xyx.EventProvider 暴露为一个充满效果的服务 . 还有另一个第三方包 org.eclipse.equinox.http.jetty ,我已经附加了一个片段包 com.xyz.jetty.customizer . 此片段包需要访问通过接口 com.xyx.EventProvider 公开的服务 . 问题是片段包没有Activat...
  • 0 votes
     answers
     views

    OSGI捆绑服务使用者是否需要创建服务接口的“存根”?

    我刚刚接触了OSGI技术并且我几乎没有基本的查询 . 这就是我所做的: 在名为“com.mypackage.osgi.bundle.service”的包中创建了一个HelloWorld接口 . 此接口将方法公开为:public String sayHello(String arg); 在名为“com.mypackage.osgi.bundle.service.impl”的包中创建了一个HelloW...
  • 0 votes
     answers
     views

    限制OSGI中安装的非iPOJO服务

    我目前正在尝试找到一种在OSGI中“过滤”捆绑包的方法,同时安装它们 . 我使用Karaf作为OSGI实现,使用iPOJO进行服务解析 . 有什么办法可以确保,只允许在OSGI中安装iPOJO提供的服务吗? 我已经在网上搜索了一些方法来查看特定服务是否输入了OSGI的东西(比如BundleContext等),但这似乎并不容易 . 谢谢 :)
  • 0 votes
     answers
     views

    在WSO2平台上运行OSGi应用程序

    我的组织正在逐渐远离传统的基于EAR / WAR的应用程序,并转向OSGi来构建我们的业务应用程序 . WSO2平台提供了许多我们希望在我们的应用程序中利用的支持服务(esb,治理,身份等) . 是否可以将我们的OSGi组件直接部署到WSO2应用程序服务器,还是仅仅部署到WSO2碳更有意义?这种方法我们应该考虑哪些问题?
  • 5 votes
     answers
     views

    OSGI声明服务(DS):使用服务组件实例的好方法是什么

    我刚刚开始使用Equinox和Eclipse PDE的OSGI和声明服务(DS) . 我有2个Bundle,A和B. Bundle A公开了Bundle B使用的组件 . 这两个bundle也将这个服务再次公开给OSGI Service注册表 . 到目前为止一切正常,Equinox将组件连接在一起,这意味着Bundle A和Bundle B由Equinox实现(通过调用默认构造函数),然后使用bi...
  • 6 votes
     answers
     views

    打印OSGI捆绑类路径?

    在普通的Java应用程序中,可以使用以下命令打印类路径的内容: String ss = System.getProperty("java.class.path"); System.out.println(ss); 但是如何打印使用eclipse PDE向导创建的OSGI包的类路径?在激活器中,可以获得当前的捆绑包: public void start(BundleContex...
  • 3 votes
     answers
     views

    OSGi服务 - 最佳实践

    我开始越来越喜欢OSGi服务,并希望将更多的组件作为服务来实现 . 现在我正在寻找最佳实践,尤其是UI组件 . 对于Listener-relations,我使用白板模式,恕我直言,这是最好的方法 . 但是,如果我想要的不仅仅是通知,我可以想到三种可能的解决方案 . 想象一下以下场景: interface IDatabaseService { EntityManager getEntityMan...
  • 2 votes
     answers
     views

    从文件系统动态加载OSGi包

    我有一个使用OSGi框架的模块化应用程序 . 这里我使用的是org.eclipse.equinox.common_3.4.0 OSGi容器 . 所以现在应用程序已经运行,所有的osgi软件包都已安装并处于活动状态,我在UI上显示所有活动的OSGi软件包,通过基于某些操作循环哈希映射 . 现在的要求是,当应用程序已经运行时,我想从文件系统安装一个新的OSGi包,方法是将这个新的包提供给应用程序的OS...
  • 2 votes
     answers
     views

    OSGI服务奇怪的行为

    我正在体验我认为Osgi服务及其跟踪的奇怪行为 . 我有两个捆绑包: Provider 和 Client . 提供商提供客户接收和使用的“通信服务” . 一开始,客户端通过OSGi TrackerService 检索服务,这要归功于 ClientActivator 类上的这个方法: private CommService retrieveCommService(BundleContext bc...
  • 0 votes
     answers
     views

    在跟踪OSGi服务时,扩展ServiceTracker类和实现ServiceTrackerCustomizer接口之间有区别吗?

    我正在创建一些OSGi包 . 他们注册服务,并获得(当然也使用)彼此的服务 . 我决定使用 ServiceTracker 而不是声明服务 . 在我搜索有关这方面的信息时,我找到了两种跟踪服务的方法 . 第一个是为每个服务创建一个自己的跟踪器类, extends ServiceTracker 类并覆盖需要重写的方法 . 然后在激活器类中创建此跟踪器类的新实例,为其提供捆绑上下文并打开它以进行跟踪...
  • 1 votes
     answers
     views

    嵌入式osgi框架,如何调用服务功能?

    我有一个简单的java项目,叫做server . 另外我有一个osgi api项目,它定义了一个接口BlockProvider . 接下来,我有一个osgi声明服务项目,其中包含一个实现BlockProvider的服务 . 在我的java项目'server'中,我有一个嵌入式osgi框架(在我的例子中是felix) . 我创建了一个bundleactivator,它安装了gogo osgi bun...
  • 3 votes
     answers
     views

    maven-shade-plugin和自定义包装类型

    我正在尝试使用内置的依赖项打包OSGi包 . 我正在使用maven-shade-plugin 2.3来包含一些依赖项,但它在打包阶段失败并出现以下错误: [ERROR] The project main artifact does not exist. This could have the following [ERROR] reasons: [ERROR] - You have invoked...
  • 7 votes
     answers
     views

    OSGI集成测试和代码覆盖

    我们在OSGI包中部署了桌面应用程序,并进行了集成测试,以测试在OSGI容器中加载的包 . 我正在寻找一种工具来计算OSGI包的集成测试的代码覆盖率 目前我们正在尝试使用适用于集成测试代码覆盖率的Jacoco和Sonar,但我们不确定它们是否足以处理OSGI集成测试代码覆盖率 还有任何其他可用于计算OSGI集成测试代码覆盖率的工具 .
  • 2 votes
     answers
     views

    Spring框架下载为OSGi捆绑包

    我正在使用Spring for OSGi,即Eclipse Gemini Blueprint . 我发现的每个教程或文档都提到将Spring提供的几个包添加到我的OSGi容器中(如 org.springframework.aop.jar ) . 很难找到当前Spring版本的下载,因为它似乎不再直接在他们的主页上提供(只有maven链接等,这不是当前项目的选项) . 特别是每个教程都提到,这些库也...
  • 1 votes
     answers
     views

    无法将jar添加到OSGi包中

    又一个愚蠢的问题 . 我确信这很容易,但是这已经花了我很多时间而且我没有让它工作;( 我写了一个工作原型来对服务器进行休息调用 . 为此,我使用“jersey-client-1.14.jar” . 通过将其添加到eclipse项目类路径,这非常有效 . 现在我试图在OSGi包中做同样的事情 . 这些是我做的步骤: 我在OSGi包项目中创建了一个/ lib文件夹 . 在该文件夹中添加了jer...
  • 2 votes
     answers
     views

    如何在复制之前获取页面的内容信息(DELETE)?

    在CQ5中,我需要从页面属性和子节点属性中收集一些信息,以便进行复制(删除) 如果我实现EventHandler: @Component(immediate = true) @Service @Property(name = EventConstants.EVENT_TOPIC, value = ReplicationAction.EVENT_TOPIC) public class RedisVi...
  • 3 votes
     answers
     views

    如何在不同的包中使用OSGI服务

    假设我有Bundle A,它有一个接口HelloWorld和函数helloWorld() 现在,在另一个捆绑B中,我正在实现如下 @Service(HelloWorld.class) @Component(immediate = true) public class Test1Impl implements HelloWorld { public String helloWorld() {...
  • 2 votes
     answers
     views

    OSGI中的Google Client API

    我无法在OSGI应用程序框架(AEM)中提供OAuth Client Library for Java所需的依赖项 . https://developers.google.com/api-client-library/java/google-oauth-java-client/setup 我不想手动将每个依赖项转换为OSGI包BND . 所以我使用maven-bundle-plugin将它们嵌入到...
  • 0 votes
     answers
     views

    AEM 6.3 Service Pack 1 com.adobe.cq.export.json无法解析com.fasterxml.jackson.annotation

    我正在运行最近升级的AEM 6.3实例 . 从6.1升级 安装AEM-6.3-Service-Pack-1后,com.adobe.cq.export.json包无法解析com.fasterxml.jackson.annotation包 com.adobe.cq.export.json 是版本0.0.12 com.fasterxml.jackson.annotation 是版本2.8.4 com....
  • 1 votes
     answers
     views

    在Apache Geronimo中安装Oracle jdbc驱动程序

    我试图将Apache JDBC驱动程序安装到Apache Geronimo但没有成功 . 我正在使用 ojdbc6.jar . 我将其复制到存储库文件夹并尝试使用Geronimo的管理控制台首先设置Oracle XA池,但没有成功 . 它抱怨OracleDataSource的ClassNotFoundException缺少驱动程序 . 然后我尝试设置一个常规的Jdbc驱动程序(oracle th...
  • 1 votes
     answers
     views

    有没有办法在Apache Felix中部署爆炸包?

    我们正在寻找重新构建我们的Web应用程序,并希望转向更模块化的解决方案,OSGi似乎满足了我们的许多需求 . 我遇到了Apache Felix项目并将其用于旋转 . 它看起来很稳定但我发现开发周期有点慢,因为它需要一个或多个束的maven构建才能使任何代码更改生效 . 相反,我希望能够在Eclipse编译类之后重新加载包,而无需任何额外的构建/打包 . 类似于Tomcat和其他servlet容器如...
  • 1 votes
     answers
     views

    我如何使用osgi捆绑中不可用作jar的jar?

    我正在将我的spring-java项目移动到osgi . 我有一些依赖项,在spring ebr repo或maven repo中不能作为bundle使用 . 处理它们的最佳方法是什么? 我能想到的选择是 创建一个本地maven repo,将jar转换为bundle并使用它们(这将变得困难,传递依赖和jar的更新) 将它们添加到捆绑类路径中(我的捆绑包变得庞大,升级后管理这些 jar 并不...
  • 2 votes
     answers
     views

    配置Zookeeper zoodiscovery集中和复制模式

    配置Zookeeper以集中和复制zoodiscovery模式时,我遇到了问题 . http://wiki.eclipse.org/Zookeeper_Based_ECF_Discovery的指南对此有点神秘 . 我正在研究Windows XP SP3,Java JDK 1.6,Eclipse STS 2.7.2,org.eclipse.osgi 3.7和代理网络 . 注意:使用独立配置模式没有...
  • 2 votes
     answers
     views

    从Eclipse部署OSGi框架的最简单方法?

    我正在使用Jetty(servlet容器)开发一个服务器 . 我使用osgi-framework运行配置在Eclipse中成功运行服务器 . 一切都很好 . 导出此运行配置的最佳方法是什么,以便我有一个有效的 config.ini 和所有插件(工作区捆绑包和来自我的目标平台的插件),并且能够在没有运行Eclipse IDE的情况下运行osgi-framework . 我试图制作一个产品来获取 co...
  • 0 votes
     answers
     views

    用于OSGI Framework的Eclipse Launch-Configutation在Mac上不起作用

    我尝试在Mac上使用Eclipse Kepler开始开发捆绑包(OS 10.8.4) . 我创建了一个最小的“Hello World”包,并创建了相应的OSGI-Framework启动配置 . 启动启动配置时,我总是遇到以下异常: osgi> !SESSION 2013-09-08 23:03:50.713 ------------------------------------------...
  • 2 votes
     answers
     views

    运行RCP应用程序的OSGi控制台(不是主机OSGi控制台)

    我需要检查我的RCP应用程序中启动时是否加载了某些bundle . 我知道有一个“主机OSGi控制台”,它显示了Eclipse IDE中所有插件的状态,但我对这些不感兴趣 . 我执行了以下步骤来获取应用程序自身的OSGi控制台: 添加了插件“org.eclipse.equinox.console” 创建了OSGi框架配置:运行配置 - > OSGi框架 - > MyNewCon...
  • 1 votes
     answers
     views

    在Eclipse中运行OSGI,通用方式?

    我正试图在eclipse中以调试模式启动一个OSGI框架堆栈,我想知道是否有一种常见的方法 . 首先,我知道我必须配置Eclipse Plugin Development -> Target Platform 才能找到我的软件包,并且能够使用 PDE 轻松开发 . 假设我想在 Geronimo 堆栈上尝试我的应用程序,我将手动创建一个新的 Target Platform ,并手动添加ger...

热门问题