繁体   English   中英

无法从Spring控制器返回JSON响应(也添加了杰克逊罐子)

[英]Not able to return JSON response from Spring controler (Added jackson jars too)

我正在尝试将客户列表发送为JSON响应,但是返回的错误响应为

 No converter found for return value of type: class java.util.ArrayList

配置类

@Configuration
@EnableWebMvc
@ComponentScan(basePackages = "net.ifg.spring")
public class AppConfig {

@Bean
public Jackson2ObjectMapperBuilder jackson2ObjectMapperBuilder() {
    Jackson2ObjectMapperBuilder builder = new Jackson2ObjectMapperBuilder();
    return builder;
}
}

我的控制器是

@RestController
public class CustomerRestController {

    @Autowired
    private CustomerDAO customerDAO;

    @GetMapping("/customers")
    public List<Customer> getCustomers() {
        return customerDAO.list();
    }

}

客户等级

public class Customer {

private Long id;
private String firstName;


public Customer(long id, String firstName) {
    this.id = id;
    this.firstName = firstName;     
}

public Customer() {
}

public Long getId() {
    return id;
}

public void setId(Long id) {
    this.id = id;
}

public String getFirstName() {
    return firstName;
}

public void setFirstName(String firstName) {
    this.firstName = firstName;
}


}

添加了JAR

commons-logging-1.2.jar,jackson-core-asl-1.9.13.jar,jackson-mapper-asl-1.9.13.jar,jackson-databind-2.9.0.jar,spring-aop,spring-core, spring-beans,spring-context,spring-expression,spring-web,spring-webmvc(所有4.3.9版本)

仍然返回我错误响应。

org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.IllegalArgumentException: No converter found for return value of type: class java.util.ArrayList
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:982)
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
javax.servlet.http.HttpServlet.service(HttpServlet.java:624)
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

任何想法将不胜感激

在项目中添加Jackson依赖或jar。

喜欢,

<dependency>
  <groupId>com.fasterxml.jackson.core</groupId>
  <artifactId>jackson-databind</artifactId>
  <version>VERSION</version></dependency>

如果是在Spring MVC中进行的,则分派器servlet的xml文件必须具有<mvc:annotation-driven />标记,才能进行转换。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM