【发布时间】:2014-03-11 01:32:56
【问题描述】:
我已经构建了我的第一个 Spring-Controller 单元测试,一个控制器返回一个 JSON 格式的对象。关系用 @JsonIgnore 注释,它在我的软件中工作。
当我只是想测试那些控制器时,我总是会在那个属性上得到一个无限递归错误。这是1:1的关系。在其他关系上,@JsonIgnore 可以正常工作。
测试错误: save(package.a.b.c.test.ControllerATest):请求处理失败;嵌套异常是 org.springframework.http.converter.HttpMessageNotWritableException: 无法写入 JSON: 无限递归 (StackOverflowError) (通过引用链: package.abcentity.A["b"]->package.abcB["a"] 等...
好像我的@JsonIgnore 在测试范围内被忽略了?
这是一个 Maven 管理的项目,所以我像这样包含
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.13</version>
</dependency>
也许有人有同样的经历?
【问题讨论】:
标签: spring unit-testing maven junit jackson