我试图通过新的数据库连接器
在Mule中调用存储过程<spring:bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<spring:property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/>
<spring:property name="url" value="abc"/>
<spring:property name="username" value="def"/>
<spring:property name="password" value="ghi"/>
<spring:property name="removeAbandoned" value="true"/>
<spring:property name="initialSize" value="10"/>
<spring:property name="maxActive" value="50"/>
</spring:bean>
<db:generic-config name="Database_Configuration" dataSource-ref="dataSource"
doc:name="Generic Database Configuration"/>
在我的流程中
<db:stored-procedure config-ref="Database_Configuration" doc:name="Database">
<db:parameterized-query>{ CALL some_procedure(NULL, :resultSet1) }</db:parameterized-query>
<db:out-param name="resultSet1" type="CURSOR"/>
</db:stored-procedure>
当我尝试运行此流时,我得到以下异常。
Exception stack is:
Unable to find a mapping for type: CURSOR (org.mule.module.db.internal.domain.type.UnknownDbTypeException). (org.mule.api.MessagingException)
org.mule.module.db.internal.domain.type.CompositeDbTypeManager.lookup(CompositeDbTypeManager.java:87)
我正在使用Mule EE 3.8版。我的pom定义了mule-module-db工件。
<dependency>
<groupId>org.mule.modules</groupId>
<artifactId>mule-module-db</artifactId>
<version>3.8.0</version>
</dependency>
知道我做错了吗?
答案 0 :(得分:1)
请使用db:oracle-config而不是使用通用数据库配置;如果您使用&gt; 3.6 EE版本的mule,这将解决问题。