WARN 2332 --- [nio-8090-exec-1] .m.m.a.ExceptionHandlerExceptionResolver :
Resolved [org.springframework.http.converter.HttpMessageConversionException: Type definition error: [simple type, class com.miaoshaproject.controller.viewobject.ItemVO]; nested exception is com.fasterxml.jackson.databind.exc.InvalidDefinitionException: No serializer found for class com.miaoshaproject.controller.viewobject.ItemVO and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS) (through reference chain: com.miaoshaproject.response.CommonReturnType["data"])]
我调试了一下,发现
BeanUtils.copyProperties(itemModel, itemVO);
根本就没有把属性值copy给itemVO,但是我的itemModel和itemVO的字段完全一致,包括字段的类型。这是为什么
我也这个错误,哭了
我也是这个错误555555
我也是你这个错误哈哈
根据你的提示,我也给ItemVO里要加getset方法。但是,程序还是有点儿问题,http://localhost:8090/item/get?id=1
提示报错(数据库里存在id=1的商品),
status | "fail" |
data | |
errCode | 10002 |
errMsg | "未知错误" |
但是,http://localhost:8090/item/get?id=3 的时候,却是:
status | "success" |
data | null |
可是,数据库里明明没有id=3的商品啊。。。。。
还在找原因中.....
翻译过来就是——spring报错说:兄弟,我没办法给你的ItemVO序列化啊,我不能get和set你的ItemVO里的私有变量。。。。
3点40看到你这条。。。关灯睡觉了。
还是自己来终结吧。经过跟踪源码,发现是忘了给itemVO的属性赋予get/set方法。ps:建议各位不是夜猫子的还是不要半夜里写代码,是真容易出bug。。。