0

我们已经使用给定的应用程序上下文文件创建了一个 Spring mvc portlet:

<?xml version="1.0"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
                        http://www.springframework.org/schema/beans/spring-beans.xsd
                        http://www.springframework.org/schema/context
                        http://www.springframework.org/schema/context/spring-context.xsd">
    <bean id="viewResolver"
        class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="contentType" value="text/html;charset=UTF-8" />
        <property name="prefix" value="/WEB-INF/" />
        <property name="suffix" value=".jsp" />
        <property name="viewClass"
            value="org.springframework.web.servlet.view.JstlView" />
    </bean>
</beans>

在部署 portlet 时,会抛出以下错误消息:

引起:org.xml.sax.SAXParseException;行号:6;列号:64;cvc-elt.1:找不到元素“beans”的声明。在 com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:203) 在 com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:134)在 com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:396) 在 com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:327)在 com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:284)

原因:org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException:来自 PortletContext 资源 [/WEB-INF/spring/portletpreferences-portlet.xml] 的 XML 文档中的第 6 行无效;嵌套异常是 org.xml.sax.SAXParseException;行号:6;列号:64;cvc-elt.1:找不到元素“beans”的声明。

项目可以使用相应的 spring jar 作为依赖项,如下所示: 在此处输入图像描述

我已经将所有可用的类似问题都提到了这个问题,并尝试了以下方法:

  1. 添加文档类型标签
  2. 删除 xsd 版本
  3. 使用带有 beans 标签的空元素

上下文 xml 文件中的 xml 中是否还有任何缺失的依赖项或错误。

更新:我已将 spring bean 和 spring 上下文 jar 更新为相同的版本,并且还成功地使用 xsd 定义验证了 xml 文件,但在部署后仍然出现相同的错误。

4

0 回答 0