问题标签 [blueprint-osgi]

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 回答
699 浏览

jsf - 将蓝图 OSGi 服务注入 JSF/PrimeFaces bean

我有一个建立在顶级 OSGi 和 Karaf 服务器上的项目。对于依赖注入,我们使用 Aries Blueprint。该项目的主要部分是一个 Apache Camel 路由和集成的东西,但是现在我需要创建一些维护 web 界面。所以我尝试了 JSF - PrimeFaces 的实现。我能够创建一些演示,它可以在 Karaf 下的 OSGi 中运行,没关系。

现在我想知道是否可以在这里使用蓝图,引用我们拥有的一些已经存在的 OSGi 服务并将服务注入 JSF Bean,这样我们就可以从已经编写的代码中受益。

你能帮我吗?

0 投票
1 回答
478 浏览

geronimo - Geronimo-3.0.1 Aries 蓝图 java.lang.VerifyError

我正在使用 Gernomino 3.0.1 尝试使用 Aries/Blueprint 的 OSGI。由于以下异常而碰壁:

我的 JDK 版本是 Ubuntu 13.04 上的 1.7.0_25-b15。

这是我的蓝图配置的样子:

如果我注释掉该行: <tx:transaction method="*" value="Required" /> 我不再看到异常,但是服务不起作用,因为容器无法打开事务。已尝试使用 JDK 1.6,同样的问题。

感谢任何帮助,谢谢!

0 投票
2 回答
393 浏览

jpa - 使用 FUSE ESB 对 DAO 层进行单元测试

我们正在使用 Fuse ESB(Camel、OSGi、蓝图)来处理一些峰值以交付一些组件。我们的 EA 有一个强加的架构,即:REST 控制器使用路由来调用 CXF WS。这会将本地 java 类作为服务调用,例如,执行 CRUD 操作。这些使用启用 JPA 的 DAO/实体。一切似乎都在设计而不是现实世界中有点学术,但那是另一回事

问题是关于测试的。通常我实际上会使用 H2 来测试这个服务层来提供 DB,将 DAO、entityManager 等与 spring 连接在一起(我知道有些人不会这样做,但我会这样做,请耐心等待)。但我们将使用蓝图进行熔断。如何对这一层进行单元测试?让我的测试子类 CamelBlueprintTestSupport 不起作用,这需要一条路线。不能使用 SpringJUnit4ClassRunner (尽管目前确实可以使用它)因为它与弹簧连接,当在容器中运行时,我们将与蓝图连接。

那么我们如何对此进行单元测试呢?如何在基于蓝图的单元测试中实例化这组类?我们可以吗?

0 投票
1 回答
505 浏览

apache-camel - 取消骆驼收件人列表中的分隔符选项

我们有一个自定义的骆驼处理器,需要从传入的请求有效负载 xpath 中动态调用和参数化,但是处理器的 URI 包含“COMMA”,因为它在内部进行 SQL 查询

现在该方案仅在我们给出delimiter="%"时才有效,否则,它会失败并出现关于无法找到端点 col2 的错误。

有没有办法抑制 RECIPIENT LIST 中的分隔符?

问候,阿皮特。

0 投票
2 回答
2161 浏览

spring - Karaf works with spring camel routes but not with java DSL camel routes

I developed a project that uses camel smpp routes in karaf.
In the beginning I used spring to write my camel routes. That worked fine.
Later I tried to use java DSL to write the camel smpp routes but everything I have done, results to this.

I have even tried blueprint to call the bean that creates the java DSL camel routes but keep getting the above.

from karaf console:

What I am trying to call is this snippet from a bean either in spring or blueprint:

What should I do to make the java DSL smpp route work? Why does smpp route in spring works but java DSL smpp doesn't? What should I install or search for?

0 投票
1 回答
2077 浏览

debugging - Camel Blueprint XML DSL 路由调试

我在网上搜索,但找不到任何示例如何调试使用 XML DSL(蓝图)定义的骆驼路线。

任何示例/指针都会很棒。

问候,A。

0 投票
2 回答
6257 浏览

activemq - Camel HTTP authentication fails but call works with curl

I'm constructing a Camel route that will make calls to Twilio's SMS API to send SMSs. The API demands BASIC authentication but my calls are failing with a 401 authentication error. I've copied my config from this worked example and validated that my credentials are sound by curl-ing the call. However, I can't work out what I'm missing on the Camel side.

My Camel HTTP integration with APIs that don't enforce authentication all work fine and the URL for the Twilio call is being fed correctly (using the header *Exchange.HTTP_QUERY*).

Any help much appreciated. Thanks.

Here's my Blueprint-OSGi Camel route:-

Here's the exception (from karaf.log):-

And here's the working curl:-

0 投票
1 回答
566 浏览

java - Creating a blueprint bean from an inner class

In Spring I can create a bean from an inner class thus:

But in Blueprint this doesn't work, I get a SAXParseException:

Any ideas what I'm doing wrong / what syntax I should be using / if this is even possible?

If it helps / matters, I'm installing a bundle containing the above bean into JBoss Fuse 6.0.0.

Many thanks

0 投票
1 回答
434 浏览

osgi - 使用 Datanucleus JDO 和蓝图在 OSGi 环境中持久化

我正在尝试在具有尽可能多的模块化的 OSGi 环境(运行 Felix 的 Karaf)中进行持久性。我选择 JDO 是因为它的附加功能(主要是获取组)而不是 JPA。实现是 Datanucleus。我使用 Maven 来构建整个项目。

由于我之前没有任何使用 JDO 或 OSGi 的经验,因此要让它们中的任何一个工作起来都是一个相当大的挑战。我目前能够在 Java SE 环境中进行 JDO 持久性(单元测试工作没有问题),并且我知道如何使用蓝图容器在 OSGi 环境中提供服务。但我无法让这两件事一起工作。我遇到类加载问题。

我什至无法构建一个能够在 Karaf 上执行 JDO 持久性的简单应用程序(我尝试按照本教程进行操作,但它使用了 Spring DM,我无法将其重写为使用 OSGi 蓝图)。

我最困惑的是:

  • 我应该将datanucleus.primaryClassLoader属性设置为什么值?
  • 什么类加载器作为参数传递给JDOHelper.getPersistenceManagerFactory方法?
  • 使用maven-bundle-plugin显式导入哪些包?(看起来至少可能需要javax.jdoorg.datanucleus.api.jdoorg.osgi.framework )
  • 除了对PersistenceManagerFactory的引用之外,其他包还需要什么?

此外:

  • 是否可以将持久性信息与值类分开?如果我理解正确,那只有在使用运行时增强时才有可能,如果完全可行的话,这将非常复杂。
  • 是否可以在多个包中定义相互依赖的持久性类?比如在一个包中定义用户,在另一个包中定义他们的地址?

我将非常感谢一个简单的多捆绑项目示例,该项目仅使用 Datanucleus、JDO API 和 OSGi 蓝图来处理持久性。

谢谢

0 投票
2 回答
1141 浏览

java - OSGi 中的事务回滚

我有一个 OSGi 包,我在其中声明了一项服务,并在其中注入了一个带有蓝图的事务:

在此服务中,我有两种方法,每种方法都在数据库中写入数据,如下所示:

我的问题如下:

  1. 如果我在之间的 createParent 方法中抛出运行时异常em.persist(parent);并且createChild();事务回滚(如我所料)并且父级不会持久保存在数据库中。但是,如果在同一点我抛出 MyException (这是一个已检查的异常),则事务提交并且父级被持久化。我在Aries 邮件列表中看到,蓝图声明性事务中声明的(检查的)异常不会触发回滚。有没有办法配置此行为并指定我希望我的异常在抛出时回滚事务?
  2. 如果我在 createChild 方法(之后)中抛出运行时异常,则em.persist(child);子项不会持久保存在数据库中,但是父项会持久保存,就好像这两个方法在两个不同的事务中运行一样。这是为什么?createChild 不应该加入由 createParent 启动的事务吗?
  3. 如果我在调用 createChild 之后在 createParent 方法中抛出运行时异常,我会得到与第 2 点相同的行为(即,父对象被持久化,而子对象未被持久化),这让我更加困惑,因为即使我假设 createChild 启动了新事务,那么当在 createParent 中抛出异常时,这不应该回滚。
  4. 如果在上面的第 2 点和第 3 点中,这两种方法在不同的服务中,那么一切都按预期工作,即。任何方法中抛出的运行时异常都会回滚整个事务。

有人可以解释上述行为吗?