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



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

    <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的值。propertiesfile

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

我已经在物业占位符中配置了.properties文件的位置。该设置可用于其他参数。mule.env是一个具有"开发"为值的环境参数。

<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)

如何重写端口?

谢谢,

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

最新更新