Mule数据库端口不是'整数'的有效值

时间:2014-01-21 07:20:43

标签: mule

我正在尝试根据属性文件配置数据库端口:

    <jdbc-ee:mysql-data-source name="MySQL_Data_Source" user="${DB.User}" password="${DB.Password}" transactionIsolation="UNSPECIFIED" host="${DB.Host}" port="${DB.Port}" database="${DB.Name}" doc:name="MySQL Data Source"/>

我将DB.User的值存储在development.properties文件

#Database Connection Properties
DB.Host=localhost
DB.Port = 3360
DB.Name=test
DB.User=root
DB.Password=test

我已在属性占位符中配置.properties文件的位置。该设置适用于其他参数。 mule.env是一个环境参数,其中'development'为值。

<context:property-placeholder location="classpath:/connections/${mule.env}.properties"/>

发生错误

    Caused by: org.mule.api.config.ConfigurationException: Line 16 in XML document from URL [file:/D:/icoe/mulews/.mule/apps/filetodb/filetodb.xml] is invalid; 
    nested exception is org.xml.sax.SAXParseException: cvc-datatype-valid.1.2.1: '${DB.Port}' is not a valid value for 'integer'. (org.mule.api.lifecycle.InitialisationException) (org.mule.api.config.ConfigurationException)

如何重写端口?

谢谢,

1 个答案:

答案 0 :(得分:1)

您不能使用占位符作为端口。如果需要使用属性文件中定义的端口,则需要将数据源配置为常规Spring bean,而不是使用配置元素mysql-data-source。