Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 解析XML文档Spring配置_Java_Spring - Fatal编程技术网

Java 解析XML文档Spring配置

Java 解析XML文档Spring配置,java,spring,Java,Spring,我试图从Unix文件系统中读取spring配置xml,但它会引发此错误。如果在windows中运行,此代码工作正常,但在Unix中运行时不会加载xml 已验证该xml是否存在于unix文件系统中,以及是否存在于指定的路径中: private static final String URL_UNIX="/test/SCRIPTS/config/contextConfig.xml"; String locate = "";

我试图从Unix文件系统中读取spring配置xml,但它会引发此错误。如果在windows中运行,此代码工作正常,但在Unix中运行时不会加载xml

已验证该xml是否存在于unix文件系统中,以及是否存在于指定的路径中:

         private static final String URL_UNIX="/test/SCRIPTS/config/contextConfig.xml";


                String locate = "";
                locate= new File ("").getAbsolutePath ();
                String urlFinal= locate+URL_UNIX;               

                    System.out.println("*****" +"Loading Config Context from File Sistem :UNIX *****");

                    File fichero = new File(urlFinal);


                        //Validate that configuration file exists
                    if (fichero.exists()){
                        System.out.println("*****" +"if exis  file: True *****");

                        // value urlFinal= /home/wasbin/test/SCRIPTS/config/contextConfig.xml
                  ctx = new FileSystemXmlApplicationContext(urlFinal);

                    }else{

                        logger.error("*****" +"ERROR: " + urlFinal +" NO Existe  *****");                       
                        exitCode = -1;
                        throw new Exception("*****" +"ERROR: " + urlFinal +" NO Existe  *****");

                    }
堆栈跟踪:

org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from file [/home/wasbin/test/SCRIPTS/config/contextConfig.xml]; nested exception is java.io.FileNotFoundException: home/wasbin/test/SCRIPTS/config/contextConfig.xml (No such file or directory)
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:341)
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:174)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:209)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:180)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:243)
    at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:127)
    at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:93)
    at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:130)
    at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:537)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:451)
    at org.springframework.context.support.FileSystemXmlApplicationContext.<init>(FileSystemXmlApplicationContext.java:140)
    at org.springframework.context.support.FileSystemXmlApplicationContext.<init>(FileSystemXmlApplicationContext.java:84)
    at fi.banamex.s440.business.reports.ReportRunner.main(ReportRunner.java:96)
    at fi.banamex.s440.business.reports.BatchDispatcher.main(BatchDispatcher.java:107)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
    at java.lang.reflect.Method.invoke(Method.java:611)
    at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:58)
Caused by: java.io.FileNotFoundException: home/wasbin/test/SCRIPTS/config/contextConfig.xml (No such file or directory)
    at java.io.FileInputStream.<init>(FileInputStream.java:137)
    at org.springframework.core.io.FileSystemResource.getInputStream(FileSystemResource.java:113)
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:328)
    ... 19 more
org.springframework.beans.factory.BeanDefinitionStoreException:IOException解析文件[/home/wasbin/test/SCRIPTS/config/contextConfig.XML]中的XML文档;嵌套异常是java.io.FileNotFoundException:home/wasbin/test/SCRIPTS/config/contextConfig.xml(没有这样的文件或目录)
位于org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:341)
位于org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302)
位于org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:174)
位于org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:209)
位于org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:180)
位于org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:243)
位于org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:127)
位于org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:93)
位于org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:130)
位于org.springframework.context.support.AbstractApplicationContext.AcquitainFreshBeanFactory(AbstractApplicationContext.java:537)
位于org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:451)
位于org.springframework.context.support.FileSystemXmlApplicationContext。(FileSystemXmlApplicationContext.java:140)
位于org.springframework.context.support.FileSystemXmlApplicationContext。(FileSystemXmlApplicationContext.java:84)
位于fi.banamex.s440.business.reports.ReportRunner.main(ReportRunner.java:96)
位于fi.banamex.s440.business.reports.BatchDispatcher.main(BatchDispatcher.java:107)
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
位于sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)中
位于java.lang.reflect.Method.invoke(Method.java:611)
位于org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:58)
原因:java.io.FileNotFoundException:home/wasbin/test/SCRIPTS/config/contextConfig.xml(无此类文件或目录)
位于java.io.FileInputStream。(FileInputStream.java:137)
位于org.springframework.core.io.FileSystemResource.getInputStream(FileSystemResource.java:113)
位于org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:328)
... 还有19个

我使用的是:SpringFramework3.2和JDK1.6

我通过在绝对路径“file中添加前缀解决了这个问题


加载成功

我希望在home/wasbin/之前有一个初始的斜杠。。。。。。作为/home/wasbin/…我认为您缺少/in-home/wasbin/test/SCRIPTS/config/contextConfig.XML谢谢,如果urlFinal包含解析文件[/home/wasbin/test/SCRIPTS/config/contextConfig.XML]中XML文档的斜杠IOException,我会看到它的值;
 // value urlFinal= "file:/home/wasbin/test/SCRIPTS/config/contextConfig.xml";

        ctx = new FileSystemXmlApplicationContext(urlFinal);