springmvc返回json格式数据报406错误

Spring MVC框架下406错误解析 Spring MVC框架下406错误解析 报错如下: 这里产生的场景一般是你使用@ResponseBody,希望把后台的model转换成其他的格式如(json/xml)返回给前台。下面我们以返回json格式为例,浅析一下原理,然后分析一下可能出现的问题以及处理方法。 原理浅析 1. 注册消息转换器MappingJackson2HttpMessageConverter 我们都知... 阅读详情

一、配置springmvc

1. springmvc-servlet.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:util="http://www.springframework.org/schema/util" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:p="http://www.springframework.org/schema/p" xmlns:aop="http://www.springframework.org/schema/aop"
	xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
	xmlns:cache="http://www.springframework.org/schema/cache"
	xsi:schemaLocation="
			http://www.springframework.org/schema/beans
			http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
			http://www.springframework.org/schema/context
			http://www.springframework.org/schema/context/spring-context-3.0.xsd
			http://www.springframework.org/schema/tx
			http://www.springframework.org/schema/tx/spring-tx-2.0.xsd
			http://www.springframework.org/schema/aop
			http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
			http://www.springframework.org/schema/util
			http://www.springframework.org/schema/util/spring-util-3.0.xsd 
			http://www.springframework.org/schema/cache 
			http://www.springframework.org/schema/cache/spring-cache-3.1.xsd">
	
	<context:component-scan base-package="com"/>

</beans>


2. web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
	<display-name></display-name>

	<!-- DispatcherServlet -->
	<servlet>
		<servlet-name>service</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
		<init-param>
			<param-name>contextConfigLocation</param-name>
			<param-value>classpath:/springmvc-servlet.xml</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet-mapping>
		<servlet-name>service</servlet-name>
		<url-pattern>*.do</url-pattern>
	</servlet-mapping>

	<welcome-file-list>
		<welcome-file>index.jsp</welcome-file>
	</welcome-file-list>

</web-app>

3. jsp与action

<input type="button" id="btn" value="查询">

$("#btn").click(function() {
	$.ajax({
		url : '${basepath}/index/test.do',
		dataType : "json",
		type : "POST",
		async : true,
		data : {
			"id" : "wangfei"
		},
		success : function(data) {
			alert(data.msg);
		},
		error : function() {
			alert("error");
		}
	});
})

@Controller
@RequestMapping("index")
public class Index {

	 @RequestMapping("test")
	 @ResponseBody 
	 public JSONObject getAll(HttpServletRequest request){
		 JSONObject json = new JSONObject();
		 String id = request.getParameter("id");
		 json.put("msg", "json:"+id);
		 return json;
	 }
}
报错提示


二、解决返回json数据错误

在springmvc-servlet.xml配置文件中加如下代码

<!--JSON视图,需要jacksonJSON的两个jar-->
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
	<property name="messageConverters">
		<util:list id="beanList">
			<ref bean="mappingJacksonHttpMessageConverter" />
		</util:list>
	</property>
</bean>
<bean id="mappingJacksonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">
	<property name="supportedMediaTypes" value="text/plain;charset=UTF-8" />
</bean>
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"></bean>

返回结果:



注:相应的jar包没有放上去,主要有:spring相关,json相关,如有遗漏,根据报错,自行添补。
















5G NR LDPC码(2)—— 从基图到速率匹配:解码5G高速数据信道的标准化设计 本文深入解析了5G NR LDPC码的标准化设计流程。从作为核心骨架的基图(BG1/BG2)出发,详细阐述了其如何通过扩展因子Z灵活生成实际校验矩阵,并协同传输块大小计算与分段策略。文章重点剖析了基于循环缓存和冗余版本的速率匹配机制,以及其如何高效支撑增量冗余混合自动重传请求,从而确保5G高速数据信道在复杂环境下的可靠与高效传输。 阅读详情

相关推荐

如何在OBS中添加实时时间戳:Lua脚本配置教程(附效果展示)

本文详细介绍了如何在OBS中通过Lua脚本配置实时时间戳功能,包括环境准备、脚本获取、安装配置及高级定制。适用于直播和视频录制场景,提供精准回溯和风格自定义,支持多平台适配和性能优化,是专业制作的必备技巧。

day7的博客 1044

解决springmvc 返回JSON报406错误

出现这个的原因是spring MVC 框架是允许.html .jpg .js .css .png 等这些静态资源不用通过urlmapping而直接访问的。如果你的urlmapping使用了这些静态资源部分或者全部的名称,那么即时你的请求的accpet为application/json,SpringMVC框架也会默认你使用了静态资源的请求。所以就会报406的错误。 总之,返回JSON的时候路径结尾

justinytsoft的博客 1762

基于STM32F407VET6的智能巡检小车灰度循迹系统优化设计

本文详细介绍了基于STM32F407VET6主控芯片的智能巡检小车灰度循迹系统优化设计。通过将传感器输出从数字量升级为模拟量以获取更丰富的路面信息,并采用PD控制算法结合速度管理策略,有效提升了小车在复杂弯道上的循迹稳定性与适应性。文章分享了硬件电路抗干扰设计、软件滤波及实战调优经验,为嵌入式开发者提供了从“能跑”到“跑得稳”的系统性解决方案。

weixin_28273593的博客 443

SpringMVC报406 Not Acceptable错误

1、先来看看代码吧(看了部分代码,估计已经有人看出来大概是什么错了) 1.1、后台主要代码 @Controller public class FooController { /** * 返回一串测试的json数据 * * @return {"name":"LinHenk"} */ @RequestMapping(value = "fo

韩帅的博客 693

避坑指南:ANSYS流固耦合计算中System Coupling数据传递设置与常见报错解决

本文深入解析ANSYS Workbench中System Coupling模块在双向流固耦合(FSI)计算中的应用,详细讲解数据传递机制、典型报错解决方案及高阶调试技巧。通过实际案例展示如何优化耦合步长、处理大变形问题,并提升并行计算效率,帮助工程师有效规避常见技术陷阱。

weixin_29213525的博客 727

捷联惯导总结--初始对准,位置标定,INS姿态更新,GPS/INS组合

惯导及组合导航回顾  2018.09.16 今天和17系的同学一起把惯导的流程捋了一遍,为了加深自己的记忆,这里在前面把心得大致列出来。 我们这里只考虑捷联式惯导及松组合 首先拿到惯性传感器(加速度计和陀螺仪)需要对其进行标定,是为了求出零偏,比例因子,交轴耦合这些误差。这些误差有的虽然在出厂时会给出,但是考虑到实际环境不同,还是要做标定。一般采用的是六位置旋转法,针对加速度计和陀螺仪同时...

赤豆几维 5万+

spring mvc传json给前台报406解决方法

1.添加jackson-annotations-2.7.4.jar       jackson-core-2.7.4.jar        jackson-databind-2.7.4.jar 2.springmvc-servlet.xml配置 <bean id="mappingJacksonHttpMessageConverter" class="org.springframewo

qq_35652978的博客 721

D触发器版图设计的艺术:最小化面积与最大化性能的平衡之道

本文探讨了D触发器版图设计中如何平衡最小化面积与最大化性能的核心挑战。通过分析晶体管布局、互联优化、时钟分布等关键策略,结合先进制程下的功耗与信号完整性考量,为数字IC工程师提供了从基础优化到制造验证的实用解决方案,助力实现高性能、低面积的芯片设计。

aa123的博客 910

解决SpringMvc+Ajax+echarts请求 调试显示406错误

昨天在用Springmvc往前台ajax传数据的时候报了406的错误 想了半天,查了资料终于今早搞定~跟大家分享下 后台Controller的代码: @RequestMapping("/single.do") public @ResponseBody List getJson(HttpServletRequest request) throws Exception{ Syst

NetBean Blog 537

AD20丝印层导入图片logo保姆级教程(附黑白预览避坑技巧)

本文提供了一份详尽的AD20丝印层导入图片Logo的实战指南。核心在于将图片预处理为高质量的单色BMP位图,并独家分享了利用Windows画图工具进行“黑白预览”的关键技巧,以提前规避转换失真。教程涵盖了从脚本获取、图片处理、参数设置到生产规范的完整流程,帮助硬件工程师高效、准确地在PCB的Top Overlay层添加个性化标识。

weixin_29194255的博客 386

FANUC机器人_KAREL编程入门学习(1)

FANUC机器人_KAREL编程入门学习(1)

Robot_PLC_HMI_Automation 6420

解决 ajax报错406,springMVC报错406,页面报错406解决办法

**解决 ajax报错406,springMVC报错406,页面报错406解决办法**一、问题描述 1、使用 ajax请求一个带 .html 后缀的url,报错406,直接在页面访问也是报错406。 2、可以进到对应Controller方法,完成方法执行,方法执行完毕后,无对应数据返回相关错误截图如下:二、相关代码 1、 ajax 请求的代码$("#btn_ajax").cli

HaHa_Sir的博客 2613

LPDDR5 学习笔记08:电气参数设计要求

本文详细阐述了LPDDR5内存接口的关键电气规范和时序要求。主要内容包括:1)绝对最大额定值限制及长期工作可靠性说明;2)差分时钟信号(CK/WCK)的输入电压、转换速率和交叉点电压规范;3)单端时钟信号的定义和测量方法;4)时钟周期、抖动(周期抖动、相邻周期抖动)和累积误差的精确计算方法;5)片选信号在同步/异步模式下的接收器规范;6)命令地址信号和数据信号的接收器掩模定义及脉冲宽度要求。所有参数均严格定义了测量条件和合规标准,为LPDDR5接口设计提供了完整的电气规范参考。

一只豌豆象的博客 1176

@ResponseBody返回json数据报异常

java spring mvc @ResponseBody返回json数据报错 

1万+

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Spring MVC使用HttpClient返回json报406错误解决办法

Spring MVC使用HttpClient返回json报406错误解决办法 1、确保导入了jackson-core-asl-1.9.13.jar和jackson-mapper-asl-1.9.13.jar包 3.2.2.RELEASE 1.9.10 1.6 org.codehaus.jackson

Sanjay的专栏 2520

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Spring Controller 返回json格式406问题

今天在进行前后端分离,希望spring后端接口返回json报文供前端使用,遇到了406 (Not Acceptable)错误, 在网上查找了各种教程,发现需要有些注意点 1.首先需要在Controller中设置: @RequestMapping @RequestMapping(value = "/findAll.json", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) ...

rww94的专栏 952

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

SpringMVC返回JSON数据406错误处理

在网上找了下发现这个问题的真的不少,解决答案也很多,大都都是说spring4.1.4的版本用的是jackson2.X的jar包,但是我都使了还是不行,纠结了一个下午,终于都发现了问题,这个解决办法网上很少看到,不过也不是每个人都会遇到这个问题。原因我的web.xml中springmvc的路径映射是*.html,也就是springmvc的访问路径后面都得带上.html,但是正因为这个不起眼的地方,返

记录成长的点点滴滴 2250

SpringMVC返回JSON数据时报406错误代码

问题描述 在SSM框架进行开发的时候,为了简便我们更多的使用注解方式,而不会使用配置文件的方式!当我们在Controller返回json类型数据到view的时候,通常使用@ResponseBody表示该方法返回值以json格式返回。然而有时候已经写了该注解当运行的时候会报406错误代码!(注:406 (不接受) 无法使用请求的内容特性响应请求的网页)解决方案我们通常会忽略是否缺少jar包,因为发现...

kimiHuan优快云的博客 1362

关于springmvc返回到前台报406错误与404错误的解决

解决springmvc返回值错误问题

呆小伙儿的博客 1222

SpringMVC中controller返回json时候使用ResponseBody的时候报406错误

报406错误 1. 添加依赖 加入json依赖 jackson-databind-2.7.3.jar 依赖两个包(jackson-annotations-2.7.3.jar 和jackson-core-2.7.3.jar) 只要添加一个 jackson-databind-2.7.3.jar其他两个会自动添加进来 <dependency> <groupId>com.fasterxml.jackson.core</groupId&gt

post_mans的博客 318

SpringMVC 配置.html拦截时,返回JSON数据时出现406错误解决方案

【说明】在SpringMVC框架的使用中常常会使用@ResponseBody注解,修饰“处理器”(Controller的方法),这样在处理器在返回完毕后,就不走逻辑视图,而是将返回的对象转成JSON字符串响应给客户端,但这种操作有时会出现406错误。 出现406问题的可能原因: 原因一: 该项目并没有导入jackson的相关jar包 Mave...

ForFuture 1028

Spring MVC返回Json对象时406错误

Spring MVC返回Json对象时406错误,解决方法: 在工程的pom.xml中加入 <!--springMvc使用@ResponseBody,如果返回的是json结果,需要添加jackson的jar包的依赖--> <dependency> <groupId>org.codehaus.jackson</grou...

永立的专栏 660

SpringMVC项目使用@ResponseBody返回application/json格式的数据出现状态码HTTP Status 406

先来一段前端返回得到的错误: HTTP Status 406 - type Status report message: description The resource identified by this request is only capable of generating responses with characteristics not acceptabl...

qq_34332010的博客 2685

SpringMVC错误日记 —— 返回JSON数据或对象导致页面406缺省报错的解决方式

SpringMVC错误日记 —— 返回JSON数据或对象导致页面406缺省报错的解决方式前言分析故障解决结束语 前言 今天在配置SpringMVC途中,遇到了关于返回实体对象的思考,直接添加 @ResponseBody注解后返回是无法实现返回实体对象,会出现406缺省的问题 分析 通过一些搜索引擎的了解和自己的测试,发现SpringMVC返回一个实体对象或者JSON的流程是需要Jackson这个坐标进行依赖后即可完成页面返回实体对象。 故障解决 <dependency>

Marinda_Speed的博客 929

springMVC返回json数据时报406错误

[size=large][b]问题描述[/b][/size] 初步搭建起springmvc时候使用@responseBody注解控制springMvc返回json格式数据的时候会发现服务端执行没异常,但是在浏览器端显示406的错误,这个错误是因为服务端给浏览器返回数据的时候没有被浏览器正确的解析。 [size=large][b]解决思路[/b][/size] 一般是控制respons...

iteye_19495的博客 408

SpringMVC在返回JSON数据时出现406错误解决方案

       在SpringMVC框架的使用中常常会使用@ResponseBody注解,修饰“处理器”(Controller的方法),这样在处理器在返回完毕后,就不走逻辑视图,而是将返回的对象转成JSON字符串响应给客户端,但这种操作有时会出现406错误。 引入问题      我们通过浏览器访问一个处理器,该处理器返回一个JSON字符串,但是我们访问后报406错误。 处理器代码 ...

听得到微笑的博客 4630
上一篇: POI
下一篇: 实体类对象转map集合
Flykos
博客等级 码龄12年 14粉丝 29原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值