-2

我收到此错误。我正在关注一个在线示例。在我添加 Spring.xml 以从 xml 文件中获取 jdbc 登录值之前,它运行良好。

我的 XML 文件在 src 文件夹下

主要代码:

ApplicationContext ctx = new ClassPathXmlApplicationContext("spring.xml");, 
JdbcImpl daoImpl = ctx.getBean("jdbcImpl", JdbcImpl.class);, 
IdpTpgInputFile idpInputFile = daoImpl.getInputFile(1);, 
System.out.println(idpInputFile.getFileName());

错误:

Apr 16, 2013 5:24:36 PM org.springframework.context.support.AbstractApplicationContext prepareRefresh
INFO: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@b61d36b:
    startup date [Tue Apr 16 17:24:36 PDT 2013];
    root of context hierarchy
Apr 16, 2013 5:24:36 PM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
INFO: Loading XML bean definitions from class path resource [spring.xml]
    Exception in thread "main" org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: 
    Line 18 in XML document from class path resource [spring.xml] is invalid;
    nested exception is org.xml.sax.SAXParseException:
        Open quote is expected for attribute "{1}" associated with an  element type  "name".
        at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:396),
        at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:334),
        at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302),
        at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:143),
        at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:178),
        at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:149),
        at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:212)
        ,at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:126),
        at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:92),
        at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:130),
        at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:467),
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:397),
        at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139),
        at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83),
        at com.amar.jdbc.JdbcMain.main(JdbcMain.java:21)
4

2 回答 2

2

看起来您错过了 ApplicationContext.xml 文件中的以下语句。检查一次。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
于 2013-08-04T05:50:23.733 回答
0

原因是在 spring.xml 的第 18 行缺少元素类型“名称”的开放引号。请检查。祝你好运:)

于 2013-04-17T01:19:26.333 回答