我正在尝试根据属性文件配置数据库端口:
<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。