【问题标题】:Mule 3.5 bug alternative without upgrading?Mule 3.5 bug 替代不升级?
【发布时间】:2016-07-08 11:28:45
【问题描述】:

我遇到了 mule-standalone 3.5 的问题。 据我在这里阅读How to read SQL queries from properties file in Mule 3.5 Database connector 和一些 mulesoft 官方论坛,这是 3.5 独立版的错误,但不幸的是,我不可能在应用程序将要运行的最终环境中将其升级到更高版本. (虽然在我的机器上使用独立的 3.8 它可以完美运行)

我的程序在调用存储在我的 Oracle 11g 数据库中的过程时失败,该过程的参数实际上是 mule 流入站属性:

<db:stored-procedure config-ref="DbCentralESB" doc:name="Store the IP">
<db:parameterized-query><![CDATA[{call IP_CONTROL(:ip) }]]></db:parameterized-query>
<db:in-param name="ip" value="#[message.inboundProperties.MULE_REMOTE_CLIENT_ADDRESS]"/>
</db:stored-procedure>

注意:设置组件的语法,我用How to call stored procedure from Mule 3.5 with new Database endpointQ&A

它抛出的错误如下:

消息:查询类型必须为“[STORE_PROCEDURE_CALL]”,但为“DDL” (java.lang.IllegalArgumentException)。消息有效负载的类型为: 字符串代码:MULE_ERROR--2

也就是说,谁能建议我一个不同的选项来执行上面的过程调用,但与 mule-standalone 3.5 版本不兼容?非常感谢。

提前致谢。

【问题讨论】:

    标签: sql oracle11g mule mule-component anypoint-studio


    【解决方案1】:

    在为此苦苦挣扎了很久之后,我发现只有一种方法可以在 Mule 3.5 中执行它:直接在数据库连接器中执行过程的所有语句,因此根本不需要过程。

    它远没有那么干净,但是我发现的唯一方法。

    【讨论】:

      【解决方案2】:

      根据example snippet,它应该在没有“CDATA”标签的情况下工作。请尝试删除“CDATA

      【讨论】:

      • 谢谢,但它也不起作用......我仍然得到同样的错误
      猜你喜欢
      • 1970-01-01
      • 2012-03-12
      • 1970-01-01
      • 2010-12-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-12
      • 2017-10-19
      相关资源
      最近更新 更多