java - Read log4j.xml from within a jar in Spring app -


i trying read log4j.cml within jar. conf like

  <bean id="log4jinitialization"     class="org.springframework.beans.factory.config.methodinvokingfactorybean">     <property name="targetclass"       value="org.springframework.util.log4jconfigurer" />     <property name="targetmethod" value="initlogging" />     <property name="arguments">       <list>         <value>classpath*:conf/prod/log4j.xml</value>       </list>     </property>   </bean> 

it throws following exception:

log4j:error not parse url [file:/users/sgoyal/workspace/matchmaker-service/classpath*:conf/prod/log4j.xml]. java.io.filenotfoundexception: /users/sgoyal/workspace/matchmaker-service/classpath*:conf/prod/log4j.xml (no such file or directory)     @ java.io.fileinputstream.open(native method)     @ java.io.fileinputstream.<init>(fileinputstream.java:106)     @ java.io.fileinputstream.<init>(fileinputstream.java:66)     @ sun.net.www.protocol.file.fileurlconnection.connect(fileurlconnection.java:70)     @ sun.net.www.protocol.file.fileurlconnection.getinputstream(fileurlconnection.java:161)     @ java.net.url.openstream(url.java:1010)     @ org.apache.xerces.impl.xmlentitymanager.setupcurrententity(unknown source)     @ org.apache.xerces.impl.xmlversiondetector.determinedocversion(unknown source)     @ org.apache.xerces.parsers.xml11configuration.parse(unknown source)     @ org.apache.xerces.parsers.dtdconfiguration.parse(unknown source)     @ org.apache.xerces.parsers.xmlparser.parse(unknown source)     @ org.apache.xerces.parsers.domparser.parse(unknown source)     @ org.apache.xerces.jaxp.documentbuilderimpl.parse(unknown source)     @ javax.xml.parsers.documentbuilder.parse(documentbuilder.java:180)     @ org.apache.log4j.xml.domconfigurator$2.parse(domconfigurator.java:612)     @ org.apache.log4j.xml.domconfigurator.doconfigure(domconfigurator.java:711)     @ org.apache.log4j.xml.domconfigurator.doconfigure(domconfigurator.java:618)     @ org.apache.log4j.xml.domconfigurator.configure(domconfigurator.java:743)     @ org.springframework.util.log4jconfigurer.initlogging(log4jconfigurer.java:69)     @ sun.reflect.nativemethodaccessorimpl.invoke0(native method)     @ sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl.java:39)     @ sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:25)     @ java.lang.reflect.method.invoke(method.java:597)     @ org.springframework.util.methodinvoker.invoke(methodinvoker.java:273)     @ org.springframework.beans.factory.config.methodinvokingfactorybean.doinvoke(methodinvokingfactorybean.java:162)     @ org.springframework.beans.factory.config.methodinvokingfactorybean.afterpropertiesset(methodinvokingfactorybean.java:152)     @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.invokeinitmethods(abstractautowirecapablebeanfactory.java:1469)     @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.initializebean(abstractautowirecapablebeanfactory.java:1409)     @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.docreatebean(abstractautowirecapablebeanfactory.java:519)     @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.createbean(abstractautowirecapablebeanfactory.java:456)     @ org.springframework.beans.factory.support.abstractbeanfactory$1.getobject(abstractbeanfactory.java:291)     @ org.springframework.beans.factory.support.defaultsingletonbeanregistry.getsingleton(defaultsingletonbeanregistry.java:222)     @ org.springframework.beans.factory.support.abstractbeanfactory.dogetbean(abstractbeanfactory.java:288)     @ org.springframework.beans.factory.support.abstractbeanfactory.gettypeforfactorybean(abstractbeanfactory.java:1328)     @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.gettypeforfactorybean(abstractautowirecapablebeanfactory.java:678)     @ org.springframework.beans.factory.support.abstractbeanfactory.istypematch(abstractbeanfactory.java:500)     @ org.springframework.beans.factory.support.defaultlistablebeanfactory.getbeannamesfortype(defaultlistablebeanfactory.java:317)     @ org.springframework.beans.factory.beanfactoryutils.beannamesfortypeincludingancestors(beanfactoryutils.java:185)     @ org.springframework.beans.factory.support.defaultlistablebeanfactory.findautowirecandidates(defaultlistablebeanfactory.java:823)     @ org.springframework.beans.factory.support.defaultlistablebeanfactory.doresolvedependency(defaultlistablebeanfactory.java:780)     @ org.springframework.beans.factory.support.defaultlistablebeanfactory.resolvedependency(defaultlistablebeanfactory.java:697)     @ org.springframework.beans.factory.annotation.autowiredannotationbeanpostprocessor$autowiredfieldelement.inject(autowiredannotationbeanpostprocessor.java:478)     @ org.springframework.beans.factory.annotation.injectionmetadata.inject(injectionmetadata.java:84)     @ org.springframework.beans.factory.annotation.autowiredannotationbeanpostprocessor.postprocesspropertyvalues(autowiredannotationbeanpostprocessor.java:283)     @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.populatebean(abstractautowirecapablebeanfactory.java:1064)     @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.docreatebean(abstractautowirecapablebeanfactory.java:517)     @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.createbean(abstractautowirecapablebeanfactory.java:456)     @ org.springframework.beans.factory.support.abstractbeanfactory$1.getobject(abstractbeanfactory.java:291)     @ org.springframework.beans.factory.support.defaultsingletonbeanregistry.getsingleton(defaultsingletonbeanregistry.java:222)     @ org.springframework.beans.factory.support.abstractbeanfactory.dogetbean(abstractbeanfactory.java:288)     @ org.springframework.beans.factory.support.abstractbeanfactory.getbean(abstractbeanfactory.java:190)     @ org.springframework.beans.factory.support.defaultlistablebeanfactory.preinstantiatesingletons(defaultlistablebeanfactory.java:574)     @ org.springframework.context.support.abstractapplicationcontext.finishbeanfactoryinitialization(abstractapplicationcontext.java:895)     @ org.springframework.context.support.abstractapplicationcontext.refresh(abstractapplicationcontext.java:425)     @ org.springframework.web.context.contextloader.createwebapplicationcontext(contextloader.java:276)     @ org.springframework.web.context.contextloader.initwebapplicationcontext(contextloader.java:197)     @ org.springframework.web.context.contextloaderlistener.contextinitialized(contextloaderlistener.java:47)     @ org.mortbay.jetty.handler.contexthandler.startcontext(contexthandler.java:548)     @ org.mortbay.jetty.servlet.context.startcontext(context.java:136)     @ org.mortbay.jetty.webapp.webappcontext.startcontext(webappcontext.java:1250)     @ org.mortbay.jetty.handler.contexthandler.dostart(contexthandler.java:517)     @ org.mortbay.jetty.webapp.webappcontext.dostart(webappcontext.java:467)     @ org.mortbay.jetty.plugin.jetty6pluginwebappcontext.dostart(jetty6pluginwebappcontext.java:124)     @ org.mortbay.component.abstractlifecycle.start(abstractlifecycle.java:50)     @ org.mortbay.jetty.handler.handlercollection.dostart(handlercollection.java:152)     @ org.mortbay.jetty.handler.contexthandlercollection.dostart(contexthandlercollection.java:156)     @ org.mortbay.component.abstractlifecycle.start(abstractlifecycle.java:50)     @ org.mortbay.jetty.handler.handlercollection.dostart(handlercollection.java:152)     @ org.mortbay.component.abstractlifecycle.start(abstractlifecycle.java:50)     @ org.mortbay.jetty.handler.handlerwrapper.dostart(handlerwrapper.java:130)     @ org.mortbay.jetty.server.dostart(server.java:224)     @ org.mortbay.component.abstractlifecycle.start(abstractlifecycle.java:50)     @ org.mortbay.jetty.plugin.jetty6pluginserver.start(jetty6pluginserver.java:132)     @ org.mortbay.jetty.plugin.abstractjettymojo.startjetty(abstractjettymojo.java:441)     @ org.mortbay.jetty.plugin.abstractjettymojo.execute(abstractjettymojo.java:383)     @ org.mortbay.jetty.plugin.abstractjettyrunmojo.execute(abstractjettyrunmojo.java:210)     @ org.mortbay.jetty.plugin.jetty6runmojo.execute(jetty6runmojo.java:184)     @ org.apache.maven.plugin.defaultpluginmanager.executemojo(defaultpluginmanager.java:483)     @ org.apache.maven.lifecycle.defaultlifecycleexecutor.executegoals(defaultlifecycleexecutor.java:678)     @ org.apache.maven.lifecycle.defaultlifecycleexecutor.executestandalonegoal(defaultlifecycleexecutor.java:553)     @ org.apache.maven.lifecycle.defaultlifecycleexecutor.executegoal(defaultlifecycleexecutor.java:523)     @ org.apache.maven.lifecycle.defaultlifecycleexecutor.executegoalandhandlefailures(defaultlifecycleexecutor.java:371)     @ org.apache.maven.lifecycle.defaultlifecycleexecutor.executetasksegments(defaultlifecycleexecutor.java:332)     @ org.apache.maven.lifecycle.defaultlifecycleexecutor.execute(defaultlifecycleexecutor.java:181)     @ org.apache.maven.defaultmaven.doexecute(defaultmaven.java:356)     @ org.apache.maven.defaultmaven.execute(defaultmaven.java:137)     @ org.apache.maven.cli.mavencli.main(mavencli.java:362)     @ org.apache.maven.cli.compat.compatiblemain.main(compatiblemain.java:41)     @ sun.reflect.nativemethodaccessorimpl.invoke0(native method)     @ sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl.java:39)     @ sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:25)     @ java.lang.reflect.method.invoke(method.java:597)     @ org.codehaus.classworlds.launcher.launchenhanced(launcher.java:315)     @ org.codehaus.classworlds.launcher.launch(launcher.java:255)     @ org.codehaus.classworlds.launcher.mainwithexitcode(launcher.java:430)     @ org.codehaus.classworlds.launcher.main(launcher.java:375) 
  • i can see, not able find/read xml.
  • have verified file present
  • can read config property files in similar manner in same app.
  • any pointer? (have searched google et al.)

-- thanks!

found solution.. need not use * specify location of log4j.xml file. bad, guys. sorry wasting time. other fool me :(

  <bean id="log4jinitialization"     class="org.springframework.beans.factory.config.methodinvokingfactorybean">     <property name="targetclass"       value="org.springframework.util.log4jconfigurer" />     <property name="targetmethod" value="initlogging" />     <property name="arguments">            <value>classpath:conf/prod/log4j.xml</value>       </property>   </bean> 

Comments

Popular posts from this blog

apache - Add omitted ? to URLs -

redirect - bbPress Forum - rewrite to wwww.mysite prohibits login -

php - How can I stop spam on my custom forum/blog? -