问题标签 [spring-dm]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
spring - 使用来自不同捆绑包的资源
我在 Virgo 上的 SpringDM 中加载文件时遇到问题。原因当然是我,我做错了什么。
情况是这样的:bundleA 包含一个类来执行一些通用初始化(用通用配置文件中的数据填充表)。
bundleB 包含来自 bundleA 的初始化类的更具体版本(扩展)(在 spring 文件中,我还指定来自 bundleA 的类是 bundleB 中更专门的类的父类)
bundleC 是一个 web 包,调用 bundleB(依次调用 bundleA)
但是,bundleB/bundleA 似乎找不到配置文件。我得到 java.io.FileNotFound 异常(文件不存在)。
我将 bundleA 中的配置文件定义为类路径资源:
bean 被创建并注入到带有 Autowired 注释的初始化类中。但是,一旦我尝试使用该文件,就会出现异常。
我的方法有任何“一般”缺陷吗?我应该使用其他资源加载器吗?还有其他建议吗?
如果部分问题不清楚,请告诉我,我会尽力澄清......
谢谢!
eclipse - spring dm依赖问题 - apache commons logging
我是spring dm的新手,所以请原谅我的简单问题。我下载了带有依赖项的 spring-osgi 包 - 1.2.1。当我从 /lib 文件夹导入所需的插件时,插件没有经过验证,因为它们需要 org.apache.commons.logging。
我有日志库,但无法弄清楚将其放入何处以便解决此问题,我可以开始开发实际项目。
osgi - “Import-Bundle”和“Require-Bundle”有什么区别?
spring source dm server specific Import-Bundle和 OSGi 的Require-Bundle有什么区别?
我很困惑是否在我的项目中使用 Import-Bundle 或 Require-Bundle。
spring - 无法在 glassfish 3.1 上使用 Spring DM 部署简单的 Web 包
我是 OSGI 和 Spring DM 的新手。我正在尝试将一个简单的 Hello World wen 应用程序部署为Glassfish 3.1上的战争, 但面临一些严重的问题。我有 3 个非网络 OSGI 包:
还有一个 web 包 helloworld-web.war。我正在使用 Glassfish asadmin "deploy --type=osgi .jar/war" 来部署我的 osgi 包。Delpoyment 成功完成,server.log 中没有错误,甚至所有四个应用程序都显示在基于 Web 的管理控制台中。但是我无法访问我的 Web 应用程序,我使用 http 和 8080 端口访问它,我得到 404,这意味着我的应用程序不可用。我使用标准方法为所有捆绑包定义 MANIFEST.MF,并在我的 web.xml 中定义了必需的元素。
有人可以帮我调查这个问题的根本原因。此外,如果有人可以提供在 Glassfish 上创建和部署 web 包的基本步骤,我们将不胜感激。我浏览了很多网页,但找不到一个结构性地定义所有必需步骤的地方。
file - 使用 Felix 文件安装示例
我一直在互联网上寻找使用 felix 文件安装的示例……特别是我想知道如何加载此捆绑包广告如何为其提供所需的配置文件。
我想借此机会向您询问其他信息,例如:Felix 文件安装如何与 spring DM 结合使用(有什么问题吗?)?由于我没有固定的目录列表来观看 Felix 文件安装...有没有办法告诉他观看从一开始就不知道的多个目录(例如目录及其所有子目录)?
非常感谢您的帮助,我希望我能够尽可能清楚地向您解释我的担忧
java - 使用 Spring-DM 扩展器
我需要等待一段时间才能关闭我的 OSGI 上下文。(给一些时间来完成当前正在运行的任务)。我遇到了beanshutdown.wait.time
中的属性。extenderProperties
谁能告诉我如何使用这个 OSGi 片段来实现我的目标?我想我可以将片段包附加到我现有的 OSGI 包中。
提前致谢。感谢你的帮助。
import - org.apache.felix:maven-bundle-plugin 和 Export-Package/Import-Package 的问题
我正在尝试通过指定通配符来配置maven-bundle-plugin如何导入/导出包。*
下面的配置导致没有包被导出或导入......
有人有任何线索吗?
编辑:我得到的确切信息是
因为捆绑包未激活。
编辑:当我启动捆绑包时,我得到了这个:
编辑:如果我只使用弹簧批处理核心,我会在启动时系统地收到此错误:
编辑:
osgi - 无法确定文件的工件身份
我收到了导入包异常,我使用 menifist 文件解决了这个问题。但是现在我得到了其他我不知道的例外情况,我能够部署简单的捆绑包,但是这个特定的捆绑包没有从拾取目录在处女座服务器上运行。
我附上了服务器日志和我遇到的错误。
期待着听到您的意见。
清单文件
osgi - 在 OSGi 捆绑激活期间打开文件
我已经定义了一个cluster_implementation
带有声明式服务 (DS) 组件定义的 OSGi 包 ( ),指定了一个导出的服务、一个激活方法和一个停用方法。
在 Activate 方法的主体中,我需要访问文件系统中不存在但捆绑在 OSGi 包本身中的一个文件。在激活方法期间,文件内容被检索为InputStream
using java.lang.ClassLoader:getResourceAsStream
。
这主要是有效的,但在一种情况下它不起作用。在我的应用程序中,由 导出的服务cluster_implementation
可以被其他捆绑包通过服务注册表或声明式服务或 spring-dm 引用。组件的激活策略是delayed
在第一次引用服务时激活它。
现在,如果激活是因为来自声明性服务组件的引用,则文件内容可以正常读取,如果激活是因为 spring-dm 组件需要该服务,那么InputStream
资源的NULL
! immediate="true"
现在我已经通过在组件属性中设置使组件立即激活来解决问题,但是我的要求是:
- 是否允许在 DS 组件激活期间以 Stream 的形式获取资源的内容?
- 如果这是合法的,为什么通过 spring-dm 激活会导致资源作为 Stream 不可访问?顺便说一句,资源在那里 - 如果我这样做,
Bundle.findEntries
我可以看到它!
我使用的 OSGi 框架是 Equinox 3.6。
java - 如何使用 Spring 通过 id 获取 osgi 服务?
春天菜鸟在这里。
我在我的一个包中定义了如下的 osgi 服务:
我知道我可以通过BundleContext
做getServiceReference
(向下传递IModelInterpreter.class.getName
)然后从另一个包访问它getService
。
有没有办法通过 id (myModelInterpreter) 而不是使用 Interface (传递IModelInterpreter.class.getName
给 to getServiceReference
) 来获取服务?
任何帮助表示赞赏。