问题标签 [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.

0 投票
1 回答
1346 浏览

shared-libraries - 如何使用 jbi-maven-plugin 集成 servicemix 共享库?

我使用 ServiceMix 3.5 我有多个 ServiceAssemblies,每个用于一个 ServiceUnit。服务单元有许多共同的库,所以我在 maven pom 中将它们标记为“提供”范围。共享库包含我希望服务单元共享的所有库。我是按照下面的maven pom.xml的搭建的,但是效果是一个简单的例外:

java.lang.ClassNotFoundException:类加载器 org.apache.xbean.spring.context.FileSystemXmlApplicationContext 中的 org.apache.commons.dbcp.BasicDataSource

为了让我的服务单元使用共享库中的 jar,我可以做什么(也许使用 jbi-maven-plugin)?

共享库服务单元 pom:

共享库服务单元 pom:

需要使用共享库的服务单元的pom:

服务单元的服务组件的pom

0 投票
0 回答
223 浏览

java - 通过 CXF 发送帖子

我正在构建基于 CXF 的网络服务,现在我通过代码将变量发送到某个 URL:

但我想知道是否有一些更简单的方法可以用 CXF 做到这一点?

我的意思是,也许 CXF 有内置的东西?

我认为这段代码可能需要很长时间才能发送并从其他 servlet 获得响应......这个 CXF 网络服务将放在 servicemix 上,所以我需要一些非常快速的东西来发送变量

0 投票
0 回答
516 浏览

soap - 从 servicemix 4.3.1 迁移到 4.4.1 时“无法为 SOAP 创建消息工厂”

我有一个很好的工作包:一些 cxf 端点和一些骆驼路线。我在 servicemix 4.3.1 上工作得很好下面是一个典型的 cxf:endpoint:

但是当我尝试将 bundle 部署到 servicemix 4.3.1 时,我得到了下一个异常:

麻烦的根源:提供安全性的拦截器。如果端点部署没有标签<cxf:inInterceptors>- 一切正常。
在 4.4.1 中使用输入/输出拦截器是否已更改?
有人有同样的烦恼吗?

0 投票
1 回答
1583 浏览

exception - Apache Camel 和 Mina (Karaf) 的简单示例抛出 CamelExchangeException:无法写入正文

我从 ServiceMix 4.4.0 中获取了简单的 activemq-camel-blueprint 示例,并添加到 Mina TCP 套接字中以从 ASCII 行中读取。

我在 Karaf 中运行示例。NMEAString 所做的只是将对象打印到 STDOUT。

我运行一个小程序将 ASCII 文件推送到套接字连接。它在几毫秒内推入整个文件(〜40)行。

我在 Karaf 中看到一个 STDOUT 打印输出,行间间隔大约 30 秒。我的 servicemix.log 文件中出现以下异常:

有谁知道这个异常是什么意思以及为什么用这样一个简单的例子抛出它?

org.apache.camel.CamelException:org.apache.camel.CamelExchangeException:无法写入正文。Exchange[消息:[Body is null]] 在 org.apache.camel.component.mina.MinaConsumer$ReceiveHandler.exceptionCaught(MinaConsumer.java:91)[186:org.apache.camel.camel-mina:2.8.3]在 org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.exceptionCaught(AbstractIoFilterChain.java:564)[187:org.apache.servicemix.bundles.mina:1.1.7.5] 在 org.apache.mina.common.support .AbstractIoFilterChain.callNextExceptionCaught(AbstractIoFilterChain.java:345)[187:org.apache.servicemix.bundles.mina:1.1.7.5] 在 org.apache.mina.common.support.AbstractIoFilterChain.access$1000(AbstractIoFilterChain.java:53) [187:org.apache.servicemix.bundles.mina:1.1.7.5] 在 org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1。exceptionCaught(AbstractIoFilterChain.java:643)[187:org.apache.servicemix.bundles.mina:1.1.7.5] 在 org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:224)[187:org .apache.servicemix.bundles.mina:1.1.7.5] 在 org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)[187:org.apache.servicemix.bundles.mina:1.1 .7.5] 在 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)[:1.6.0_29] 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)[:1.6 .0_29] at java.lang.Thread.run(Thread.java:662)[:1.6.0_29] 原因:org.apache.camel.CamelExchangeException:无法写入正文。在 org.apache.camel.component.mina.MinaHelper.writeBody(MinaHelper.java:55)[186:org.apache.

0 投票
1 回答
76 浏览

osgi - 取决于与 servicemix 上可用的版本不同的库(commons-pool 1.6)

我有一个项目(camel osgi bundle),我在该项目上使用 commons-pool 1.6(支持泛型),而 servicemix 的版本为 1.5.4

我需要做什么才能解决这种依赖关系?

0 投票
1 回答
939 浏览

maven - Servicemix 导入所有依赖项

我正在为 Servicemix 4.4.0 创建新项目。我的项目将包含几个模块和一个父 pom.xml,这是一个示例:

每个模块都包含引用父 pom 的元素。

我正在考虑在父 pom.xml 中声明所有 Servicemix 依赖项。这样,我将摆脱子模块中的版本。

所以我的问题是,如何在我的父 pom.xml 中包含所有 Servicemix 依赖项而不直接一一键入它们?也许有一种方法可以导入一些 Servicemix 父 pom 或类似的东西?

0 投票
2 回答
1315 浏览

singleton - OSGI CXF 单例类加载问题

这个问题现在要交给赏金了!解决此问题的第一个答案获胜。

所以我最近发现 OSGI 中的包不是 100% 相互隔离的,尤其是当你的包共享一个包含单例的公共包时,这可能导致两个不相关的包覆盖单例。这个问题已经在 CXF 库中体现出来了。让我举一个详细的例子来说明正在发生的事情:

我们在 FuseESB ServiceMix(一个 osgi 平台)中有包 A、B 和共享包 CXF。CXF 的 Bus 类是一个单例,因为 OSGI 每个包都有一个类加载器,它会与使用 CXF 的所有其他包共享这个单例。所以我似乎无法为包 A 和包 B 创建不同的总线,这很重要,因为包 A 应该使用 SSL,而包 B 不应该使用 SSL。这更令人沮丧,因为 bundle A 和 bundle B 除了必须一起部署在同一个 ServiceMix 上之外,彼此没有任何关系。

现在我已经解决这个问题一段时间了(1-2 个月),我已经阅读了很多不同的解决方案。然而问题是很多解决方案都要求我完全控制源代码,而在这种情况下我不需要。我正在创建的 Bundle A 使用了一些专有的第三方非 osgi 库,称为 Xenara,它使用 CXF。出于我无法控制的商业原因,我必须使用这个第三方库。幸运的是,我确实可以访问该库使用的 CXF spring bean 文件。

我对解决这个问题的猜测是,我需要一些方法,以便包 A 可以使用它自己的个人 CXF 实例,或者至少让它实例化不与其他包共享的 CXF 总线。以下是我尝试或考虑过的方法:

  1. 我将 CXF 嵌入到包 A 中,但不幸的是,类加载器一直从包 A 外部获取 CXF,而不是查看类路径。从来没有想过如何强制它在包 A 之外搜索之前先在包 A 中搜索 CXF。

  2. 有人建议将捆绑包 A 变成一项服务。我认为存在一些误解,人们认为单例在 A 中而不是在 CXF 中。无论如何我尝试了它并没有解决问题。CXF 总线仍然在包 A 和 B 之间共享。

  3. 覆盖类加载,以便包 A 使用不同的类加载器来加载 CXF 类。我不完全理解这其中的逻辑,但我确信这将是非常棘手的,因为使用了一个 spring bean 来创建 CXF 总线和 http-conduit。请参阅下面的 (4) 以获得更好的想法。

  4. 在 CXF 中,有一种方法可以为给定的线程上下文设置 CXF 总线和 http-conduit。我真的很想使用这个解决方案,但我不知道如何将 CXF bean 文件转换为等效的 java 代码。下面提供了 CXF spring bean 文件。请注意,我无权使用此 http-conduit 访问源代码,这就是为什么我没有使用“使用 Java 代码”的此链接中显示的示例,因为我无权访问 SOAPService、wsdl , ETC...

    /li>
0 投票
1 回答
3845 浏览

apache - 在 Fuse ESB 中安装骆驼码头功能时出错

我正在尝试在我的 Windows 7 机器上配置 Fuse ESB。这是配置。

配置

  1. JRE 1.6.0_30
  2. MS VC++ 可再发行组件 - x86 9.0.30729.17
  3. JAVA_HOME 设置为“C:\Program Files\Java\jre6”
  4. Apache ServiceMix 4.4.1-fuse-02-02

启动 ServiceMix 控制台后,我尝试使用以下命令安装 camel-jetty。

特点:安装骆驼码头

失败并显示以下消息。

执行命令时出错:无法解析 URL [mvn:org.apache.camel/camel-http/2.8.0-fuse-02-02]。

完整的日志消息如下。

有人可以帮我吗?

org.ops4j.opx.url.mvn.cfg文件内容如下

0 投票
2 回答
2816 浏览

spring - OSGI Bundle 中缺少需求包

我正在尝试使用 OSGI 包中的 org.springframework.jdbc.core.JdbcTemplate 连接 oracle 数据库。在 servicemix 中部署 bundle 时,它​​显示错误

org.osgi.framework.BundleException:捆绑我的第二个服务 [376] 中未解决的约束:无法解析 376.0:缺少要求 [376.0] 包;(包=org.springframework.jdbc.core)

这是我的 pom 文件

0 投票
1 回答
5696 浏览

ibm-mq - 将 Apache ServiceMix 连接到 Websphere MQ

我正在尝试从部署为 Apache Service Mix 上的 OSGI 包的骆驼路由连接到 websphere MQ 队列管理器。

我已经部署了 Websphere MQ 附带的 IBM OSGI 捆绑包,并按照以下方式配置了 Spring 配置:-

在运行时我收到此错误 => java.lang.ClassNotFoundException: javax.net.ssl.HandshakeCompletedListener not found by com.ibm.msg.client.osgi.wmq

IBM 捆绑包都没有导入 javax.net.ssl,我真的不能重新捆绑它们吗?

有没有人设法从 servicemix/fuse - 4 连接到 WMQ?

任何帮助深表感谢。

非常感谢,汤姆