AWS Lambda:返回类型String与POJOClass不兼容

时间:2017-09-06 00:14:44

标签: java aws-lambda lombok

我正在尝试从handleRequest返回String。我使用GSON从JSON生成String。

以下是方法:

public class FileLoader{
  public List<String> loadResource(String filename) {
    Resource resource = new ClassPathResource(filename);
    File file = resource.getFile();
    Path path = file.toPath();
    try (Stream<String> stream = Files.lines(path)) {
      // process the data
    } catch (IOException e) {
      LOGGER.error(e);
    }       
  }
}

我收到此错误:返回类型字符串与myPOJOResponseClass

不兼容

我试图将返回类型更改为Object不起作用。我尝试使用JSONObject显式地将String转换为JSON,并将返回类型更改为JSONObject,但这也无效。

任何帮助都将不胜感激。

PS:如果在这里重要的话,我正在使用Lombok生成我的POJO类。

1 个答案:

答案 0 :(得分:2)

您没有为上下文提供太多代码,但根据文档看起来您可能已经做过类似的事情:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-security</artifactId>
</dependency>



@Configuration
@EnableWebSecurity
public class SpringSecurityConfig extends WebSecurityConfigurerAdapter {

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http
        .cors().and().csrf().disable().authorizeRequests()
        .anyRequest().authenticated().and().httpBasic();
    }
}

这意味着要实现界面,您的public class HelloPojo implements RequestHandler<Map<String, String>, myPOJOResponseClass> 函数需要返回handleRequest(...)

如果是这样的话,试试这个:

myPOJOResponseClass