Java 名称为;上下文:注释配置";对于JDOM/XML来说是不合法的

Java 名称为;上下文:注释配置";对于JDOM/XML来说是不合法的,java,spring,jdom-2,Java,Spring,Jdom 2,我如何写这篇文章: <context:annotation-config/> <context:component-scan base-package="com.generator"/> 但我有一个错误: 名称“context:annotation-config”对JDOM/XML元素不合法:XML名称“context:annotation-config”不能包含字符“:” 创建一个 然后使用新的 显示您的名称空间声明context是XML名称空间的本地名称,可能在刚才

我如何写这篇文章:

<context:annotation-config/>
<context:component-scan base-package="com.generator"/>
但我有一个错误:

名称“context:annotation-config”对JDOM/XML元素不合法:XML名称“context:annotation-config”不能包含字符“:”

创建一个

然后使用新的


显示您的名称空间声明
context
是XML名称空间的本地名称,可能在刚才显示的部分上方声明。因此,您必须从文档中获取名称空间作为JDOM
名称空间
对象,并使用
元素(字符串,名称空间)
构造函数。类似于
newelement(“annotation config”,contextNamespace)
。参见javadoc中Eric的注释@Eric你应该加上这个作为答案。@EricJablow非常感谢,问题解决了
beans.addContent(new Element("context:annotation-config"));
beans.addContent(new Element("context:component-scan").setAttribute("base-package","com."+getProjectName()))
Namespace nsContext = Namespace.getNamespace("context", // prefix
       "http://www.springframework.org/schema/context"); // URI
beans.addContent(new Element("annotation-config", nsContext));