冷面閻羅

          低調(diào)做人&&高調(diào)做事
          隨筆 - 208, 文章 - 3, 評(píng)論 - 593, 引用 - 0
          數(shù)據(jù)加載中……

          spring學(xué)習(xí)(一)


                 今天開始學(xué)習(xí)《Spring 開發(fā)指南》,按照上面的配置,運(yùn)行spring的第一程序,結(jié)果發(fā)現(xiàn)就出現(xiàn)錯(cuò)誤。主要有下面2個(gè)錯(cuò)誤,呵呵,建議有人修改一下《Spring 開發(fā)指南》,以免后人再犯同樣的錯(cuò)誤,而且找半天還找不到解決的辦法。
                其一:錯(cuò)誤現(xiàn)象如下:
                
          java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
              at org.springframework.util.ClassUtils.
          <clinit>(ClassUtils.java:73)
              at org.springframework.core.io.DefaultResourceLoader.
          <init>(DefaultResourceLoader.java:52)
              at org.springframework.context.support.AbstractApplicationContext.
          <init>(AbstractApplicationContext.java:198)
              at org.springframework.context.support.AbstractRefreshableApplicationContext.
          <init>

          (AbstractRefreshableApplicationContext.java:
          80)
              at org.springframework.context.support.AbstractXmlApplicationContext.
          <init>

          (AbstractXmlApplicationContext.java:
          58)
              at org.springframework.context.support.FileSystemXmlApplicationContext.
          <init>

          (FileSystemXmlApplicationContext.java:
          121)
              at org.springframework.context.support.FileSystemXmlApplicationContext.
          <init>

          (FileSystemXmlApplicationContext.java:
          68)
              at test.UpperActionTest.test_execte(UpperActionTest.java:
          15)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
          39)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
          25)
              at java.lang.reflect.Method.invoke(Method.java:
          597)
              at junit.framework.TestCase.runTest(TestCase.java:
          168)
              at junit.framework.TestCase.runBare(TestCase.java:
          134)
              at junit.framework.TestResult$
          1.protect(TestResult.java:110)
              at junit.framework.TestResult.runProtected(TestResult.java:
          128)
              at junit.framework.TestResult.run(TestResult.java:
          113)
              at junit.framework.TestCase.run(TestCase.java:
          124)
              at junit.framework.TestSuite.runTest(TestSuite.java:
          232)
              at junit.framework.TestSuite.run(TestSuite.java:
          227)
              at org.junit.internal.runners.OldTestClassRunner.run(OldTestClassRunner.java:
          76)
              at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:
          45)
              at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:
          38)
              at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:
          460)
              at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:
          673)
              at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:
          386)
              at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:
          196)
             這個(gè)錯(cuò)誤,其實(shí)不是書上的錯(cuò)誤,是因?yàn)槲覀兩僖胍粋€(gè)jar包:commons-logging.jar。

             其二,錯(cuò)誤現(xiàn)象如下:
          org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 1 in XML document from file [E:\eclipse-SDK-3.4\workspace\spring\bean.xml] is invalid; nested exception is org.xml.sax.SAXParseException: cvc-elt.1: Cannot find the declaration of element 'beans'.
              at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:
          369)
              at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:
          313)
              at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:
          290)
              at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:
          142)
              at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:
          158)
              at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:
          184)
              at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:
          112)
              at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:
          79)
              at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:
          97)
              at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:
          411)
              at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:
          338)
              at org.springframework.context.support.FileSystemXmlApplicationContext.
          <init>(FileSystemXmlApplicationContext.java:124)
              at org.springframework.context.support.FileSystemXmlApplicationContext.
          <init>(FileSystemXmlApplicationContext.java:68)
              at test.UpperActionTest.test_execte(UpperActionTest.java:
          15)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
          39)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
          25)
              at java.lang.reflect.Method.invoke(Method.java:
          597)
              at junit.framework.TestCase.runTest(TestCase.java:
          168)
              at junit.framework.TestCase.runBare(TestCase.java:
          134)
              at junit.framework.TestResult$
          1.protect(TestResult.java:110)
              at junit.framework.TestResult.runProtected(TestResult.java:
          128)
              at junit.framework.TestResult.run(TestResult.java:
          113)
              at junit.framework.TestCase.run(TestCase.java:
          124)
              at junit.framework.TestSuite.runTest(TestSuite.java:
          232)
              at junit.framework.TestSuite.run(TestSuite.java:
          227)
              at org.junit.internal.runners.OldTestClassRunner.run(OldTestClassRunner.java:
          76)
              at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:
          45)
              at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:
          38)
              at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:
          460)
              at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:
          673)
              at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:
          386)
              at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:
          196)
          Caused by: org.xml.sax.SAXParseException: cvc
          -elt.1: Cannot find the declaration of element 'beans'.
              at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:
          195)
              at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:
          131)
              at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:
          384)
              at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:
          318)
              at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.handleStartElement(XMLSchemaValidator.java:
          1887)
              at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.startElement(XMLSchemaValidator.java:
          685)
              at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:
          400)
              at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:
          626)
              at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:
          3084)
              at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:
          912)
              at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:
          645)
              at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:
          140)
              at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:
          508)
              at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:
          807)
              at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:
          737)
              at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:
          107)
              at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:
          225)
              at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:
          283)
              at org.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument(DefaultDocumentLoader.java:
          78)
              at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:
          361)
               
          32 more

               這個(gè)錯(cuò)誤就是書上的錯(cuò)誤了。問題是因?yàn)閎ean.xml寫的有問題,書上這樣
          <beans>
              
          <description>Spring Quick Start    </description>
              
          <bean id="TheAction" class="com.neusoft.wang_xj.actionImpl.UpperAction">
                  
          <property name="message">
                      
          <value>HeLLo</value>
                  
          </property>
              
          </bean>
          </beans>
             是不正確。修改成這樣:
          <?xml version="1.0" encoding="UTF-8"?>   
            
          <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
              xmlns:aop
          ="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"  
              xmlns:context
          ="http://www.springframework.org/schema/context"  
              xsi:schemaLocation
          ="   
                    http://www.springframework.org/schema/beans    
                    http://www.springframework.org/schema/beans/spring-beans-2.0.xsd   
                    http://www.springframework.org/schema/aop    
                    http://www.springframework.org/schema/aop/spring-aop-2.0.xsd   
                    http://www.springframework.org/schema/tx    
                    http://www.springframework.org/schema/tx/spring-tx-2.0.xsd   
                    http://www.springframework.org/schema/context   
                    http://www.springframework.org/schema/context/spring-context-2.5.xsd">   
          <bean id="TheAction" class="com.neusoft.wang_xj.actionImpl.UpperAction">   
          <property name="message">   
          <value>HeLLo</value>   
          </property>   
          </bean>    
          </beans>

               問題就解決了。

              不知道你按照我說的修改,問題解決了么?

          posted on 2008-09-25 20:38 冷面閻羅 閱讀(4601) 評(píng)論(1)  編輯  收藏 所屬分類: java

          評(píng)論

          # re: spring學(xué)習(xí)(一)  回復(fù)  更多評(píng)論   

          俺都學(xué)不過來了
          2008-09-26 09:56 |
          主站蜘蛛池模板: 文化| 东宁县| 九寨沟县| 扎囊县| 长海县| 安达市| 北海市| 安岳县| 尼勒克县| 原平市| 牡丹江市| 郴州市| 柘荣县| 西丰县| 荃湾区| 惠来县| 临颍县| 胶州市| 峨边| 齐齐哈尔市| 鹰潭市| 綦江县| 襄垣县| 兰考县| 岚皋县| 土默特左旗| 永福县| 贵阳市| 万山特区| 邯郸县| 新疆| 潞西市| 当涂县| 开江县| 银川市| 田东县| 铜梁县| 枣庄市| 城市| 湟中县| 小金县|