提问人:jang 提问时间:10/27/2023 最后编辑:jang 更新时间:10/27/2023 访问量:33
不支持内容类型“text/xml”
Content type 'text/xml' not supported
问:
我正在使用springframework 并对此有疑问!
$.ajax({
type: "POST",
url: "/updateCell.do",
data: JSON.stringify(data),
contentType: "application/json; charset=UTF-8",
success: function(response) {
sweetAlert('success','It has been successfully edited.','');
},
error: function(xhr, status, error) {
sweetAlert('error','A problem has been detected.','');
}
});
当我尝试这个具有“application/json”内容类型的ajax时
org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'application/json;charset=UTF-8' not supported
这个错误发生了...... 所以我加上
<property name="messageConverters">
<list>
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"/>
</list>
</property>
这到“调度程序-servlet.xml” 它奏效了!
然后我尝试发送ajax,它具有“text/xml”内容类型
var wfsTransactionRequest =
'<wfs:Transaction ' +
'xmlns:wfs="http://www.opengis.net/wfs" ' +
'xmlns:gml="http://www.opengis.net/gml" ' +
'xmlns:ogc="http://www.opengis.net/ogc" ' +
'xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ' +
'xmlns:feature="http://vndan" ' +
'service="WFS" version="1.2.0" ' +
'xsi:schemaLocation="http://www.opengis.net/wfs ' +
'http://schemas.opengis.net/wfs/1.0.0/WFS-transaction.xsd">' +
'<wfs:Update typeName="vndan:' + tableName + '">' +
'<wfs:Property>' +
'<wfs:Name>geom</wfs:Name>' +
'<wfs:Value>' + geomXML + '</wfs:Value>' +
'</wfs:Property>' +
'<ogc:Filter>' +
'<ogc:FeatureId fid="' + fid + '"/>' +
'</ogc:Filter>' +
'</wfs:Update>' +
'</wfs:Transaction>';
$.ajax({
url: '/gis/wfs',
type: 'POST',
dataType: 'xml',
data: wfsTransactionRequest,
contentType: 'text/xml',
success: function (data) {
toastr.success('It has been successfully edited.');
},
error: function (xhr, status, error) {
console.error(error);
}
});
喜欢这个。。。
但在这种情况下,错误发生了。
所以我加了Content type 'text/xml' not supported
<bean class="org.springframework.http.converter.xml.MappingJackson2XmlHttpMessageConverter" />
这到“调度程序-servlet.xml”,但没有任何变化。
当我删除时
<property name="messageConverters">
<list>
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"/>
</list>
</property>
来自“调度程序-servlet.xml”,我可以发送具有文本/xml 内容类型的 ajax,但无法发送具有“application/json”内容类型的 ajax。
这些代码在另一个项目中运行良好,所以我不认为这是与服务器或其他事情有关的问题......
综上所述,我只能发送两种内容类型中的一种。 无论如何,我可以发送两个ajax吗?
这是我的“dispatcher-servlet.xml”:)
<?xml version="1.0" encoding="UTF-8"?>
<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:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd">
<context:component-scan base-package="egovframework">
<context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Service"/>
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Repository"/>
</context:component-scan>
<context:component-scan base-package="vndan">
<context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Service"/>
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Repository"/>
</context:component-scan>
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
<property name="webBindingInitializer">
<bean class="egovframework.example.cmmn.web.EgovBindingInitializer"/>
</property>
<property name="messageConverters">
<list>
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"/>
<bean class="org.springframework.http.converter.xml.MappingJackson2XmlHttpMessageConverter" />
</list>
</property>
</bean>
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping">
<property name="interceptors">
<list>
<ref bean="localeChangeInterceptor" />
</list>
</property>
</bean>
<bean id="localeResolver" class="org.springframework.web.servlet.i18n.SessionLocaleResolver" />
<bean id="localeChangeInterceptor" class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor">
<property name="paramName" value="language" />
</bean>
<bean class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
<property name="defaultErrorView" value="cmmn/egovError"/>
<property name="exceptionMappings">
<props>
<prop key="org.springframework.dao.DataAccessException">cmmn/dataAccessFailure</prop>
<prop key="org.springframework.transaction.TransactionException">cmmn/transactionFailure</prop>
<prop key="egovframework.rte.fdl.cmmn.exception.EgovBizException">cmmn/egovError</prop>
<prop key="org.springframework.security.AccessDeniedException">cmmn/egovError</prop>
</props>
</property>
</bean>
<bean class="org.springframework.web.servlet.view.UrlBasedViewResolver" p:order="1"
p:viewClass="org.springframework.web.servlet.view.JstlView"
p:prefix="/WEB-INF/jsp/vndan/" p:suffix=".jsp"/>
<bean class="org.springframework.web.servlet.view.BeanNameViewResolver" id="viewResolver" p:order="0" />
<bean class="org.springframework.web.servlet.view.json.MappingJackson2JsonView" id="jsonView">
<property name="contentType" value="application/json;charset=UTF-8"/>
</bean>
<!-- For Pagination Tag -->
<bean id="imageRenderer" class="egovframework.example.cmmn.web.EgovImgPaginationRenderer"/>
<bean id="paginationManager" class="egovframework.rte.ptl.mvc.tags.ui.pagination.DefaultPaginationManager">
<property name="rendererType">
<map>
<entry key="image" value-ref="imageRenderer"/>
</map>
</property>
</bean>
<!-- /For Pagination Tag -->
<mvc:view-controller path="/cmmn/validator.do" view-name="cmmn/validator"/>
<mvc:default-servlet-handler />
<mvc:annotation-driven />
</beans>
答: 暂无答案
评论