问题标签 [apache-servicemix]
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.
java - 如果我离开 karaf 控制台,为什么 FUSE ESB (ServiceMix) 4.3 会在 linux 上关闭?
我在本地 Windows 机器上使用 ServiceMix 4.2 进行开发。
现在我在 Linux 环境中安装了 FUSE ESB 4.3,并在 linux 机器上通过 SSH 启动它。离开 karaf 控制台后,容器总是关闭。如何让 karaf 控制台运行 ServiceMix?
(可能只是配置,但我无法通过 Google 或 FUSE 文档找到它)
spring - apache-servicemix-4.3.0-fuse-00-00 中的 ClasspathXMLApplicationContext 问题
我遵循了《行动中的骆驼》这本书第 14 章中的示例。我希望通过业务逻辑隐藏中间件。使用“camel:run:”进行开发时,一切似乎都运行良好。配置文件如下:
然后出现了在 servicemix 中部署它的要求。我遵循了保险丝指南并了解了所需的步骤。我需要将 bean 模式更改为(我假设)
<
最后,为了在客户端使用代理,我这样做:
我收到以下错误,我似乎无法修复。我不认为我在这里做错了什么,请帮助。我已经用尽了我的搜索,似乎没有人能够回答这个问题。感谢这里的任何帮助。我的 karaf.framework=equinox 和正确的包已经安装。
maven - pom.xml 第三方导入问题
我正在使用 ServiceMix 4,并且正在尝试修改 cxf-jaxrs 演示。以下是我的 pom.xml
http://maven.apache.org/maven-v4_0_0.xsd">
Maven 构建成功,但是当我尝试在 servicemix 上部署它时,我得到:
引起:java.lang.ClassNotFoundException:org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:814) 的 org.apache.felix.framework.ModuleImpl 的 com.google.gdata.data.calendar.CalendarEntry。访问 $100(ModuleImpl.java:61) at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1733) at java.lang.ClassLoader.loadClass(ClassLoader.java:248) ... 42 更多
我错过了一步吗?任何见解都值得赞赏。
osgi - ServiceMix 4.2 - 使用背书库
我想知道 SMX 4.2 是否有一个概念endorsed libraries
?
我的用例如下:
有一组类需要对框架/SMX 运行时中执行的所有 Java 类可见。您可能会建议简单地从类中创建一个包并导出相关包。但是,在我的 SMX 运行时中,甚至可以部署 WAR 文件。我不认为安装在 SMX 框架中的 WAR 也可以利用 Import/Export-Package 功能。所以我基本上需要以类似于java.util.List
可用的方式让所有其他类都可以使用这组类。
在 Tomcat 中,这可以通过将 JAR 放在 lib/endorsed 目录中来完成。但是,我相信 SMX 没有声明任何认可的目录。所以我在文件夹中创建了一个认可的目录%JAVA_HOME%\jre\lib\
。但是我的课程没有得到解决。
非常感谢任何帮助。
非常感谢!
java - 在 Apache Servicemix 4 中的 OSGi 包之间共享配置文件?
有没有人能够在 SMX4 中的两个或多个捆绑包之间成功共享配置?我正在寻找的是这个:
- 有一个文件
$SMX_HOME/etc/myconfiguration.cfg
- 让这个配置“可用”以通过 OSGi 配置管理使用 Spring dm 注入到我的包中,即
然后,我可以将这样的东西注入到我的 bean 中:
对于单个捆绑包,所有这些都只是桃子。我正在寻找一种方法来定义它一次,然后能够重用相同的配置文件作为一组包的属性。现在,我有多个包,每个包都有自己的配置实例(持久 id),因此,每个需要数据库连接、Java JMS 等的包都必须在每个文件中重复配置。
目前,我正在使用 Apache Servicemix 4,它使用 Apache Felix 作为 OSGi 容器。
apache-camel - 在使用 ActiveMQ/Apache Camel 使用另一个服务的 ServiceMix 4.3 启动时加载服务
在 SericeMix 启动期间,我们正在尝试使用 ServiceA 在加载捆绑包时立即调用 ServiceB。Service2 具有 activemq 端点,我们需要调用该特定服务的方法。我尝试了 bean 标记中的 spring init-method 属性,这有助于在我调用 serviceB 的方法中自动触发 ServiceA 中的方法。我得到了端点没有可用的异常之类的异常。我假设只要 Service1 启动,它就不会获得需要使用 @Produce 注释 activemq 端点初始化的 service2 的实例。相同的服务在其他正常情况下工作正常。
异常:由以下 原因引起:org.apache.camel.CamelExchangeException:端点上没有可用的消费者:端点 [direct://ServiceB]。Exchange [消息:BeanInvocation public java.lang.String java.lang.Object.toString() with null]] 在 org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:46) 在 org.apache。 camel.component.bean.CamelInvocationHandler.invoke(CamelInvocationHandler.java:64) ... 还有 35 个
我复制粘贴代码块供您参考。
或者如果我需要达到这个要求,他们还有其他方式吗?我可以在 servicemix 启动期间自动加载服务(使用其他服务)。
jax-rs - 使用 cxf-extension-osgi 重启 OSGi 包
我在 Fuse 4.2 中部署了一个简单的 CXF RS 捆绑包,在初始安装时可以正常工作。但是,当我更新或重新安装捆绑包时,REST 服务不再可用。
我尝试了各种配置,发现使用 cxf-extension-osgi 是问题......
由此...
对这个...
另外,我将地址更新为非相对的......以这个配置结束(在捆绑重新启动后工作,等等)
知道使用 cxf-extension-osgi 时导致此问题的原因是什么吗?另外,当使用 cxf-extendsion-http-jetty 代替(功能、性能等)时,有什么权衡?
谢谢
apache-camel - Apache Camel 应用程序的服务注册表
注册表是一个项目列表,带有指向哪里可以找到项目的指针,例如数据库表上的索引或图书馆的卡片目录。
如果我错了,请纠正我,根据这个定义,我对骆驼应用程序注册表的期望是客户端应用程序可以(取决于客户端协议)进行查找并基于元数据,选择特定服务并将其用作定义。
我想知道 Apache Camel 是否有任何与此相关的东西。我见过的大多数服务注册表文章/实现似乎只针对 SOAP 协议。
问候。
rest - 在 ServiceMix/FUSE 4.3 中部署多个 RESTful 服务包
我正在使用 apache-servicemix-4.3.0-fuse-03-00.tar.gz 附带的示例 cxf-jaxrs 来研究如何部署提供不同 RESTful 服务的多个包。我所做的是将 cxf-jaxrs 示例复制到 cxf-jaxrs-example-1 中,并修改了 pom.xml 和 beans.xml。修改是:
然后我做了两个包。一个是原始示例包 cxf-jaxrs-4.3.0-fuse-03-00.jar 另一个是修改后的一个 cxf-jaxrs-4.3.0-2-fuse-03-00.jar 我复制了它们进入“部署”目录。
servicemix 启动后,我看到两个包都处于活动状态并成功启动。
但是,我只能在一个捆绑包中访问 RESTful 服务。当我输入“http://localhost:8080/cxf/crm2/customerservice/customers/123”时,我得到“未找到服务”。错误。当我停止另一个示例包(原始包)时,我可以毫无问题地访问“http://localhost:8080/cxf/crm2/customerservice/customers/123”。
我做错了什么??它应该在上下文路径“/crm”和“/crm2”中提供 RESTful 服务。
osgi - OSGi feature uninstall works, but bundles are still installed
EDIT: updated this question with latest information...
I'm having issues running back-to-back "features:uninstall" commands for dependent features. OSGi responds back with "State change in progress...", but by accepting other requests, we run into issues.
Strangely, this results in successful feature uninstalls, but unsuccessful bundle uninstalls. We are addressing this by trying to order uninstall requests appropriately and adding a delay between steps, but I'm hoping for a more robust solution.
As suggested, I also tried adding "osgi:refresh" in between steps...same behavior. Is there another way to detect that "Refresh Packages" is still running to delay subsequent requests, etc?
Here are the details...