我在WEB-INF/classes
目录创建了一个应用程序Context.xml。
我在xml中添加了<!DOCTYPE>
。我收到以下错误:
未注册URI(设置|语言和框架|架构和DTD)
您可以在下面看到快照:
xml如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> // -> there comes the issue
<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.xsd">
</beans>
答案 0 :(得分:31)
您可以通过以下方式轻松解决:获取外部资源。
点击灯(你是红色) - &gt;获取外部资源。
答案 1 :(得分:7)
我假设这是在IntelliJ IDEA或其他一些JetBrains工具中。如果将光标放在URL上(或选择它),您应该会在窗口的左边缘看到一个红色灯泡。点击该红色灯泡将为您提供一些纠正任何错误的选项。其中一个选项应该是下载DTD(获取外部资源)。这样做,错误应该消失。
答案 2 :(得分:6)
这完成了工作:
Alt + Enter ->获取外部资源
答案 3 :(得分:2)
对我来说构建&gt;清洁项目工作。
答案 4 :(得分:1)
时间在变化,Apache根本不再支持该1.xx版本的log4j。该XML确实不在该地址上。
log4j
已死。 log4j2
万岁!
看这里:
https://logging.apache.org/log4j/2.x/manual/migration.html。
新的配置语言更短,更方便:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
<Appenders>
<Console name="STDOUT" target="SYSTEM_OUT">
<PatternLayout pattern="%d %-5p [%t] %C{2} (%F:%L) - %m%n"/>
</Console>
</Appenders>
<Loggers>
<Logger name="org.apache.log4j.xml" level="info"/>
<Root level="debug">
<AppenderRef ref="STDOUT"/>
</Root>
</Loggers>
</Configuration>
如果您觉得必须使用旧版本,则应下载旧地址中保存的旧XML,将其放在服务器上并使用新地址。
答案 5 :(得分:0)
如果“获取”无济于事,则意味着您已将此XML文件创建为具有.xml扩展名的空文件并手动填充了配置。现在,将其删除,然后从模板中正确创建为“ Spring config”文件。
答案 6 :(得分:0)
就我而言,我是从 debug 构建变体中打开XML资源文件的,而我的Android Studio已选择了 beta 构建变体。
我切换到 debug 构建变体(XML文件所属的变体),瞧!错误消失了。
答案 7 :(得分:0)
如果选择并按 ALT + ENTER ,即xticks
,然后显示以下选项:
More Actions...
大多数情况下,您会选择选项号。 2或3摆脱这个错误。