2013-07-15 45 views
5

ho questo errore:Primavera errore esempio ciao mondo

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) 

devo aggiungere queste librerie:

  • commons-logging-1.1.3
  • primavera-AOP-4.0.0. M1
  • molla-aspetti-4.0.0.M1
  • molla-fagioli-4.0.0.M1
  • molla conte xt-4.0.0.M1
  • molla context-supporto-4.0.0.M1
  • molla-core-4.0.0.M1
  • antlr-runtime-3.0.1

My codice:

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(); 
    } 
} 

configurazione

<?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

Prova ad aggiungere posizione dello schema per esempio – paary

+0

L'errore simile è stato qui, credo che questo dovrebbe funzionare http: //stackoverflow.com/a/23987300/1572347 –

risposta

5

Cercate di non dividere questi XML in più Linee:

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

Spesso a capo e spazi bianchi all'interno XML valori degli attributi vengono trattati come letterale. Usare questo invece:

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

grazie a tutti. dove dovrei iniziare con la primavera? avete un libro o un sito web per principianti? scusa, il mio inglese non è molto bello. – user2582163

+0

Raccomando http://www.amazon.com/books/dp/0764574833 perché è stato scritto da Rod Johnson e Juergen Hoeller (entrambi i creator/lead di Spring framework) – gerrytan

0

Basta aggiungere spring-expression-3.x.x.RELEASE vaso attraverso java percorso di generazione

+0

Questo non ha funzionato, ottenendo ancora l'eccezione nel thread "principale "org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: la riga 1 nel documento XML dalla risorsa del percorso classe [applicationContext.xml] non è valida; l'eccezione nidificata è org.xml.sax.SAXParseException: la destinazione dell'istruzione di elaborazione corrispondente a "[xX] [mM] [lL]" non è consentita. – Surya

1

ho ottenuto lo stesso errore, corretto che la prima linea dovrebbe beans.xml dovrebbe iniziare con (nessuna linea vuota nella prima riga)

1

ho avuto lo stesso problema. Non ci dovrebbe essere alcun spazio all'inizio della prima linea di cioè questa è la linea

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