2013-07-15 4 views
5

Je cette erreur:printemps bonjour exemple monde erreur

INFO: Loading XML bean definitions from class path resource [Beans.xml] 
Exception in thread "main" org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 2 in XML document from class path resource [Beans.xml] is invalid; nested exception is org.xml.sax.SAXParseException; lineNumber: 2; columnNumber: 6; The processing instruction target matching "[xX][mM][lL]" is not allowed. 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:398) 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:335) 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:303) 
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:180) 
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:216) 
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:187) 
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:251) 
    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:551) 
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:465) 
    at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139) 
    at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83) 
    at com.tutorialspoint.MainApp.main(MainApp.java:10) 

Caused by: org.xml.sax.SAXParseException; lineNumber: 2; columnNumber: 6; The processing instruction target matching "[xX][mM][lL]" is not allowed. 
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source) 
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLScanner.scanPIData(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanPIData(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLScanner.scanPI(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(Unknown Source) 
    at org.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument(DefaultDocumentLoader.java:76) 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:389) 

J'ajouter ces bibliothèques:

  • commons-logging-1.1.3
  • printemps-aop 4.0.0. M1
  • printemps-aspects 4.0.0.M1
  • printemps-haricots-4.0.0.M1
  • printemps-conte xt-4.0.0.M1
  • ressort-cadre-support-4.0.0.M1
  • ressort-core-4.0.0.M1
  • antlr-runtime-3.0.1

My Code:

package com.tutorialspoint; 

public class HelloWorld { 
    private String message; 

    public void setMessage(String message){ 
     this.message = message; 
    } 

    public void getMessage(){ 
     System.out.println("Your Message : " + message); 
    } 
} 


package com.tutorialspoint; 

import org.springframework.context.ApplicationContext; 
import org.springframework.context.support.ClassPathXmlApplicationContext; 

public class MainApp { 
    @SuppressWarnings("resource") 
    public static void main(String[] args) { 
     ApplicationContext context = new ClassPathXmlApplicationContext("Beans.xml"); 

     HelloWorld obj = (HelloWorld) context.getBean("helloWorld"); 

     obj.getMessage(); 
    } 
} 

Configuration

<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.springframework.org/schema/beans 
http://www.springframework.org/schema/beans/spring-beans- 
3.0.xsd" 
> 
    <bean id="helloWorld" class="com.tutorialspoint.HelloWorld"> 
     <property name="message" value="Hello World!" /> 
    </bean> 
</beans> 
+0

Essayez d'ajouter l'emplacement du schéma par exemple – paary

+0

L'erreur similaire a été ici, je pense que cela devrait fonctionner http: //stackoverflow.com/a/23987300/1572347 –

Répondre

5

Essayez de ne pas diviser ces xml en plusieurs lignes:

xsi:schemaLocation="http://www.springframework.org/schema/beans 
http://www.springframework.org/schema/beans/spring-beans- 
3.0.xsd" 

Souvent les nouvelles lignes et les espaces dans les valeurs d'attribut XML sont traités comme littéraux. Utilisez ceci:

xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd" 
+1

merci à tous. où devrais-je commencer avec le printemps? Vous avez un livre ou un site Web pour débutant? désolé, mon anglais n'est pas si bien. – user2582163

+0

Je recommande http://www.amazon.com/books/dp/0764574833 parce qu'il est écrit par Rod Johnson et Juergen Hoeller (à la fois créateur/lead de Spring framework) – gerrytan

0

Il suffit d'ajouter jar spring-expression-3.x.x.RELEASE par chemin de compilation Java

+0

Cela n'a pas fonctionné, toujours obtenir Exception dans le fil "principal "org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: la ligne 1 du document XML provenant de la ressource de chemin de classe [applicationContext.xml] n'est pas valide; L'exception imbriquée est org.xml.sax.SAXParseException: la cible de l'instruction de traitement correspondant à "[xX] [mM] [lL]" n'est pas autorisée. – Surya

1

Je suis la même erreur, corrigée que la première ligne devrait beans.xml devrait commencer par (pas de ligne vide dans la première ligne)

1

J'ai eu le même problème. il ne devrait pas y avoir d'espace au début de la 1ère ligne -à-dire c'est la ligne

no space<?xml version="1.0" encoding="UTF-8"?>