org.xml.sax.SAXParseException; cvc-complex-type.2.4.c:匹配的通配符是严格的,但没有声明
问题描述:
我想在这里做的是让邮件发件人从我的工作Java代码。org.xml.sax.SAXParseException; cvc-complex-type.2.4.c:匹配的通配符是严格的,但没有声明
我看了一个类似的问题,并删除了这里建议的弹簧版本号cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'mvc:annotation-driven',但我仍然看到相同的错误。
Mar 21, 2017 9:04:53 PM org.apache.catalina.core.StandardContext listenerStart
SEVERE: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 10 in XML document from ServletContext resource [/WEB-INF/applicationcontext.xml] is invalid; nested exception is org.xml.sax.SAXParseException; lineNumber: 10; columnNumber: 86; cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'bean'.
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:399)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:336)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:304)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:181)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:217)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:188)
at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:125)
at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:94)
at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:129)
at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:604)
我的applicationContext如下:
<?xml version="1.0" encoding="UTF-8"?>
<beans:beans xmlns="http://www.springframework.org/schema/mvc"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:beans="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd
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
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.0.xsd">
<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="host" value="postman.mx.domain.com"/>
<property name="username" value="[email protected]"/>
<property name="javaMailProperties" >
<props>
<prop key="mail.smtp.auth" >false</prop>
</props>
</property>
</bean>
我也有我的pom.xml对邮件的javax条目如下:
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4.2</version>
</dependency>
答
添加适当的命名空间通过更改bean
元素,
<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
到
<bean xmlns="http://www.springframework.org/schema/beans"
id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
,你的错误会自行消失。
这消除了tomcat启动时的错误,就像一个魅力,但也使我所有其他工作的Web服务抛出一个HTTP 500:/ – p0tta
一次一个问题。请[**接受**](http://meta.*.com/q/5234/234215)这个答案,并为你的新问题提出一个新问题。谢谢。 – kjhughes
接受了答案。这里添加了新的问题。如果你有机会,请看看。 http://*.com/questions/42942032/beancreationexception-after-fixing-namespace-issues – p0tta