我是Spring框架的新手。我正在嘗試使用Spring @Async 批註的教程。我收到此錯誤來自class path資源[spring.xml]的XML文檔中的第9行無效;嵌套異常是org.xml.sax.SAXParseException; lineNumber:9; columnNumber:109;必須爲元素類型「beans」聲明屬性「xmlns」。必須爲元素類型「beans」聲明屬性「xmlns」
我想知道爲什麼發生這個錯誤,怎麼解決?
我spring.xml文件低於
**
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN" "http://www.springframework.org/dtd/spring-beans-2.0.dtd">
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context"
xmlns:task="http://www.springframework.org/schema/task"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.0.xsd">
<context:component-scan base-package="cs"/>
<bean id="regularService" class="cs.RegularService">
</bean>
<task:annotation-driven/>
</beans>
**
RegularService.java
package cs;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import cs.MailUtility;
@Service
public class RegularService {
@Autowired
private MailUtility mailUtility ;
public void registerUser(String userName){
System.out.println(" User registration for "+userName +" complete");
mailUtility.sendMail(userName);
System.out.println(" Registration Complete. Mail will be send after 5 seconds ");
}
}
MailUtility.java
package cs;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Component;
@Component
public class MailUtility {
@Async
public void sendMail(String name){
System.out.println(" I Will be formatting html mail and sending it ");
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println(" Asynchronous method call of send email — Complete ");
}
}
TestService.java
package cs;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import cs.RegularService;
public class TestService {
public static void main(String args[]){
ClassPathXmlApplicationContext appContext = new ClassPathXmlApplicationContext(new String[] {"spring.xml"});
RegularService regService = (RegularService) appContext.getBean("regularService");
regService.registerUser("Skill-Guru");
}
}
去除線除去上述error.Now此特定錯誤已重新出現** org.springframework.beans.factory.BeanCreationException:創建名爲'org.springframework.context.annotation.internalAsyncAnnotationProcessor'的Bean時出錯:init方法的調用失敗;嵌套的異常是java.lang.NoClassDefFoundError:org/aopalliance/aop/Advice ** – ayushman999 2013-03-08 10:26:17
您需要添加spring aop jar – 2013-03-08 10:27:24
並且您能告訴我爲什麼doctype必須被刪除嗎? – ayushman999 2013-03-08 10:27:37