Mule 通用数据库 connection.DefaultDbConnection:99(空)

Mule generic database connection.DefaultDbConnection:99 (null)

流量:

<db:generic-config name="MS_SQL_DB" url="jdbc:jtds:sqlserver://host:1433/myCRM_0813;instance=MYINST;username=sa;password=sa" driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver" doc:name="Generic Database Configuration"/>    
<flow name="msconnFlow1" doc:name="msconnFlow1">
     <http:inbound-endpoint exchange-pattern="request-response" host="${hostname}" port="${sfdcport}" path="msconnect" doc:name="HTTP"/>
     <logger message="test---------" level="INFO" doc:name="Logger"/>
     <db:select config-ref="MS_SQL_DB" doc:name="Database">
         <db:parameterized-query><![CDATA[select * from Account]]></db:parameterized-query>
     </db:select>
     <logger message="==done===" level="INFO" doc:name="Logger"/>
</flow>

异常:

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ Started app 'test'                                       +
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
INFO  2015-06-03 11:59:31,664 [[test].connector.http.mule.default.receiver.02] org.mule.api.processor.LoggerMessageProcessor: test---------
ERROR 2015-06-03 11:59:31,728 [[test].connector.http.mule.default.receiver.02] org.mule.exception.DefaultMessagingExceptionStrategy: 
********************************************************************************
Message               : null (java.lang.NullPointerException). Message payload is of type: String
Code                  : MULE_ERROR--2
--------------------------------------------------------------------------------
Exception stack is:
1. null (java.lang.NullPointerException)
  org.mule.module.db.internal.domain.connection.DefaultDbConnection:99 (null)
2. null (java.lang.NullPointerException). Message payload is of type: String (org.mule.api.MessagingException)
  org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor:32 (http://www.mulesoft.org/docs/site/current3/apidocs/org/mule/api/MessagingException.html)
--------------------------------------------------------------------------------
Root Exception stack trace:
java.lang.NullPointerException
    at org.mule.module.db.internal.domain.connection.DefaultDbConnection.isClosed(DefaultDbConnection.java:99)
    at org.mule.module.db.internal.domain.connection.TransactionalDbConnectionFactory.releaseConnection(TransactionalDbConnectionFactory.java:150)
    at org.mule.module.db.internal.processor.AbstractDbMessageProcessor.process(AbstractDbMessageProcessor.java:87)
    + 3 more (set debug level logging or '-Dmule.verbose.exceptions=true' for everything)
********************************************************************************

注意:我能够 运行 与 jdbc 相同的查询,并且我通过工作室的测试连接显示连接成功。

使用下面的 driverClassName:

net.sourceforge.jtds.jdbc.Driver

数据库url:

jdbc:jtds:sqlserver://server:port/database

这就是我以前配置 MSSql 服务器的方式:-

 <db:generic-config name="Generic_Database_Configuration"
        url="jdbc:sqlserver://ANIRBAN-PC\SQLEXPRESS:1433;databaseName=MyDBName;user=sa;password=mypassword"
        driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver" doc:name="Generic Database Configuration" />

然后:-

<db:select config-ref="Generic_Database_Configuration" doc:name="Database">
    <db:parameterized-query><![CDATA[select * from table1]]></db:parameterized-query>
</db:select> 

并且它运行成功......

你能试试同样的吗

端口有问题,最终给出端口号

jdbc:sqlserver://host:49389;instance=MYINST;username=sa;password=sa.