我正在尝试根据属性文件配置数据库端口:
<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)
如何重写端口?
谢谢,
答案 0 :(得分:1)
您不能使用占位符作为端口。如果需要使用属性文件中定义的端口,则需要将数据源配置为常规Spring bean,而不是使用配置元素mysql-data-source。