我在尝试使用@RestController时返回JSON。我使用的是Spring 4.1。 这是我在使用GET请求调用listrestsites.html时遇到的例外情况。 我的构建路径中有更快的Jackson Jackson核心和databind jar。 @requestheader = accept的接受输出:application / json,text / javascript, / ; Q = 0.01 任何帮助表示赞赏。谢谢,
[DEBUG,ExceptionHandlerExceptionResolver]解决异常 handler [public java.util.List com.amci.spring3.controller.SitesRestController.listRestSites(java.lang.String中)〕: org.springframework.web.HttpMediaTypeNotAcceptableException:不能 找到可接受的表示[DEBUG,DefaultListableBeanFactory] 返回单例bean的缓存实例 ' exceptionControllerAdvice' [DEBUG,ExceptionHandlerExceptionResolver] 调用@ExceptionHandler方法:public org.springframework.web.servlet.ModelAndView
这是我的Restcontroller课程:
@RestController
public class SitesRestController {
@Autowired
private AssetService assetService;
@RequestMapping("/listrestsites.html")
public List<Asset> listRestSites(@RequestHeader(value="accept") String accept) {
System.out.println(getLogLevel());
System.out.println("accept: " + accept);
return assetService.findAssets();
}
}
另外,我的spring.xml片段:
<property name="defaultViews">
<list>
<!-- JSON View -->
<bean
class="org.springframework.web.servlet.view.json.MappingJackson2JsonView">
</bean>
</list>
</property>
<property name="ignoreAcceptHeader" value="true" />
</bean>
答案 0 :(得分:1)
请确保您的Spring xml文件中包含以下内容:
self.viewHeightConstraint.constant = 40;
并且您的POJO的所有项目都应该有getter / setter。希望它有所帮助