java - How get value from property file to input in springConfig.xml -
i want property value in email.properties file input in springconfig.xml. there error occur.
here code below
springconfig.xml
<bean class="org.springframework.mail.javamail.javamailsenderimpl" id="mailsender"> <property name="host" value="${email.host}" /> <property name="protocol" value="${email.protocol}" /> <property name="port" value="${email.port}" /> <property name="username" value="${email.username}"/> <property name="password" value="${email.password}" /> <property name="javamailproperties"> <props> <prop key="mail.smtp.auth">true</prop> <prop key="mail.smtp.starttls.enable">true</prop> <prop key="mail.smtp.ssl.trust">smtp.gmail.com</prop> </props> </property> </bean>
here property file
email.host=stmp.gmail.com email.port=465 email.protocol=smtp email.username=xxx@gmail.com email.password=xxxxxxxx
here error trace
jun 15, 2015 10:46:17 org.apache.catalina.core.standardcontext listenerstart severe: exception sending context initialized event listener instance of class org.springframework.web.context.contextloaderlistener org.springframework.beans.factory.beancreationexception: error creating bean name 'mailsender' defined in class path resource [springconfig.xml]: initialization of bean failed; nested exception org.springframework.beans.typemismatchexception: failed convert property value of type 'java.lang.string' required type 'int' property 'port'; nested exception java.lang.numberformatexception: input string: "${email.port}" @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.docreatebean(abstractautowirecapablebeanfactory.java:547) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.createbean(abstractautowirecapablebeanfactory.java:475) @ org.springframework.beans.factory.support.abstractbeanfactory$1.getobject(abstractbeanfactory.java:304) @ org.springframework.beans.factory.support.defaultsingletonbeanregistry.getsingleton(defaultsingletonbeanregistry.java:228) @ org.springframework.beans.factory.support.abstractbeanfactory.dogetbean(abstractbeanfactory.java:300) @ org.springframework.beans.factory.support.abstractbeanfactory.getbean(abstractbeanfactory.java:195) @ org.springframework.beans.factory.support.defaultlistablebeanfactory.preinstantiatesingletons(defaultlistablebeanfactory.java:700) @ org.springframework.context.support.abstractapplicationcontext.finishbeanfactoryinitialization(abstractapplicationcontext.java:760) @ org.springframework.context.support.abstractapplicationcontext.refresh(abstractapplicationcontext.java:482) @ org.springframework.web.context.contextloader.configureandrefreshwebapplicationcontext(contextloader.java:403) @ org.springframework.web.context.contextloader.initwebapplicationcontext(contextloader.java:306) @ org.springframework.web.context.contextloaderlistener.contextinitialized(contextloaderlistener.java:106) @ org.apache.catalina.core.standardcontext.listenerstart(standardcontext.java:4751) @ org.apache.catalina.core.standardcontext.startinternal(standardcontext.java:5175) @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:150) @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1408) @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1398) @ java.util.concurrent.futuretask.run(futuretask.java:266) @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1142) @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:617) @ java.lang.thread.run(thread.java:745) caused by: org.springframework.beans.typemismatchexception: failed convert property value of type 'java.lang.string' required type 'int' property 'port'; nested exception java.lang.numberformatexception: input string: "${email.port}" @ org.springframework.beans.beanwrapperimpl.convertifnecessary(beanwrapperimpl.java:479) @ org.springframework.beans.beanwrapperimpl.convertforproperty(beanwrapperimpl.java:511) @ org.springframework.beans.beanwrapperimpl.convertforproperty(beanwrapperimpl.java:505) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.convertforproperty(abstractautowirecapablebeanfactory.java:1502) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.applypropertyvalues(abstractautowirecapablebeanfactory.java:1461) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.populatebean(abstractautowirecapablebeanfactory.java:1197) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.docreatebean(abstractautowirecapablebeanfactory.java:537) ... 20 more caused by: java.lang.numberformatexception: input string: "${email.port}" @ java.lang.numberformatexception.forinputstring(numberformatexception.java:65) @ java.lang.integer.parseint(integer.java:569) @ java.lang.integer.valueof(integer.java:766) @ org.springframework.util.numberutils.parsenumber(numberutils.java:155) @ org.springframework.beans.propertyeditors.customnumbereditor.setastext(customnumbereditor.java:113) @ org.springframework.beans.typeconverterdelegate.doconverttextvalue(typeconverterdelegate.java:430) @ org.springframework.beans.typeconverterdelegate.doconvertvalue(typeconverterdelegate.java:403) @ org.springframework.beans.typeconverterdelegate.convertifnecessary(typeconverterdelegate.java:181) @ org.springframework.beans.beanwrapperimpl.convertifnecessary(beanwrapperimpl.java:459) ... 26 more jun 15, 2015 10:46:17 org.apache.catalina.core.standardcontext listenerstart severe: exception sending context initialized event listener instance of class kh.com.gfam.rsos.listener.initializeapplicationlistner org.springframework.beans.factory.beancreationexception: error creating bean name 'mailsender' defined in class path resource [springconfig.xml]: initialization of bean failed; nested exception org.springframework.beans.typemismatchexception: failed convert property value of type 'java.lang.string' required type 'int' property 'port'; nested exception java.lang.numberformatexception: input string: "${email.port}" @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.docreatebean(abstractautowirecapablebeanfactory.java:547) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.createbean(abstractautowirecapablebeanfactory.java:475) @ org.springframework.beans.factory.support.abstractbeanfactory$1.getobject(abstractbeanfactory.java:304) @ org.springframework.beans.factory.support.defaultsingletonbeanregistry.getsingleton(defaultsingletonbeanregistry.java:228) @ org.springframework.beans.factory.support.abstractbeanfactory.dogetbean(abstractbeanfactory.java:300) @ org.springframework.beans.factory.support.abstractbeanfactory.getbean(abstractbeanfactory.java:195) @ org.springframework.beans.factory.support.defaultlistablebeanfactory.preinstantiatesingletons(defaultlistablebeanfactory.java:700) @ org.springframework.context.support.abstractapplicationcontext.finishbeanfactoryinitialization(abstractapplicationcontext.java:760) @ org.springframework.context.support.abstractapplicationcontext.refresh(abstractapplicationcontext.java:482) @ org.springframework.web.context.contextloader.configureandrefreshwebapplicationcontext(contextloader.java:403) @ org.springframework.web.context.contextloader.initwebapplicationcontext(contextloader.java:306) @ org.springframework.web.context.contextloaderlistener.contextinitialized(contextloaderlistener.java:106) @ org.apache.catalina.core.standardcontext.listenerstart(standardcontext.java:4751) @ org.apache.catalina.core.standardcontext.startinternal(standardcontext.java:5175) @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:150) @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1408) @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1398) @ java.util.concurrent.futuretask.run(futuretask.java:266) @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1142) @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:617) @ java.lang.thread.run(thread.java:745) caused by: org.springframework.beans.typemismatchexception: failed convert property value of type 'java.lang.string' required type 'int' property 'port'; nested exception java.lang.numberformatexception: input string: "${email.port}" @ org.springframework.beans.beanwrapperimpl.convertifnecessary(beanwrapperimpl.java:479) @ org.springframework.beans.beanwrapperimpl.convertforproperty(beanwrapperimpl.java:511) @ org.springframework.beans.beanwrapperimpl.convertforproperty(beanwrapperimpl.java:505) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.convertforproperty(abstractautowirecapablebeanfactory.java:1502) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.applypropertyvalues(abstractautowirecapablebeanfactory.java:1461) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.populatebean(abstractautowirecapablebeanfactory.java:1197) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.docreatebean(abstractautowirecapablebeanfactory.java:537) ... 20 more caused by: java.lang.numberformatexception: input string: "${email.port}" @ java.lang.numberformatexception.forinputstring(numberformatexception.java:65) @ java.lang.integer.parseint(integer.java:569) @ java.lang.integer.valueof(integer.java:766) @ org.springframework.util.numberutils.parsenumber(numberutils.java:155) @ org.springframework.beans.propertyeditors.customnumbereditor.setastext(customnumbereditor.java:113) @ org.springframework.beans.typeconverterdelegate.doconverttextvalue(typeconverterdelegate.java:430) @ org.springframework.beans.typeconverterdelegate.doconvertvalue(typeconverterdelegate.java:403) @ org.springframework.beans.typeconverterdelegate.convertifnecessary(typeconverterdelegate.java:181) @ org.springframework.beans.beanwrapperimpl.convertifnecessary(beanwrapperimpl.java:459) ... 26 more jun 15, 2015 10:46:17 org.apache.catalina.core.applicationcontext log info: set web app root system property: 'webapp.root' = [d:\sample project 2 (rsos)\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\rsos] jun 15, 2015 10:46:17 org.apache.catalina.core.applicationcontext log info: initializing log4j [d:\sample project 2 (rsos)\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\rsos\web-inf\resources\log4j.xml] log4j:error not parse url [file:/d:/sample%20project%202%20(rsos)/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/rsos/web-inf/resources/log4j.xml]. java.io.filenotfoundexception: d:\sample project 2 (rsos)\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\rsos\web-inf\resources\log4j.xml (the system cannot find path specified) @ java.io.fileinputstream.open(native method) @ java.io.fileinputstream.<init>(fileinputstream.java:131) @ java.io.fileinputstream.<init>(fileinputstream.java:87) @ sun.net.www.protocol.file.fileurlconnection.connect(fileurlconnection.java:90) @ sun.net.www.protocol.file.fileurlconnection.getinputstream(fileurlconnection.java:188) @ org.apache.log4j.xml.domconfigurator$2.parse(domconfigurator.java:765) @ org.apache.log4j.xml.domconfigurator.doconfigure(domconfigurator.java:871) @ org.apache.log4j.xml.domconfigurator.doconfigure(domconfigurator.java:778) @ org.apache.log4j.xml.domconfigurator.configure(domconfigurator.java:906) @ org.springframework.util.log4jconfigurer.initlogging(log4jconfigurer.java:69) @ org.springframework.web.util.log4jwebconfigurer.initlogging(log4jwebconfigurer.java:152) @ org.springframework.web.util.log4jconfiglistener.contextinitialized(log4jconfiglistener.java:46) @ org.apache.catalina.core.standardcontext.listenerstart(standardcontext.java:4751) @ org.apache.catalina.core.standardcontext.startinternal(standardcontext.java:5175) @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:150) @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1408) @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1398) @ java.util.concurrent.futuretask.run(futuretask.java:266) @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1142) @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:617) @ java.lang.thread.run(thread.java:745)
look @ line of stack trace:
org.springframework.beans.factory.beancreationexception: error creating bean name 'mailsender' defined in class path resource [springconfig.xml]: initialization of bean failed; nested exception org.springframework.beans.typemismatchexception: failed convert property value of type 'java.lang.string' required type 'int' property 'port'; nested exception java.lang.numberformatexception: input string: "${email.port}"
it says variable port
have int
, trying store string
have put this:
<property name="port">${email.port}</property>
i expect helpful you!
Comments
Post a Comment