Quarkus Apache Camel AWS Lambda CDI ProducerTemplate 结果 NullPointerException
Posted
技术标签:
【中文标题】Quarkus Apache Camel AWS Lambda CDI ProducerTemplate 结果 NullPointerException【英文标题】:Quarkus Apache Camel AWS Lambda CDI ProducerTemplate result NullPointerException 【发布时间】:2021-12-20 10:32:03 【问题描述】:我正在尝试在我自己的代码Quarkus Camel AWS Lambda 中重现以下代码Deploying a Camel Route in AWS Lambda : A Camel Quarkus example,但是 ProducerTemplate 返回 NullPointerExcetion,如在此链接中看到的 BUG_CAMEL_QUARKUS_LAMBDA
@Named("languageScoreLambda")
public class LanguageScoreLambda implements RequestHandler<Language, LanguageScoreDto>
@Inject
ProducerTemplate template;
@Override
public LanguageScoreDto handleRequest(Language input, Context context)
System.out.println("#Template isNull ===> " + (null == template)); // true
return new LanguageScoreDto("5", input.getLanguage());
【问题讨论】:
截图没有显示空指针异常。它只是显示模板为空。 正确,因为它只是一个示例,这是AWS Lambda组件屏幕的结果 【参考方案1】:我发现了问题,因为我一直在使用 Terraform 为 AWS Lambda 函数提供处理程序必须是 io.quarkus.amazon.lambda.runtime.QuarkusStreamHandler::handleRequest 下面是原始代码片段
resource "aws_lambda_function" "hello_lambda"
function_name = var.AWS_LAMBDA_FUNCTION_NAME
filename = "$path.module/function.zip"
role = aws_iam_role.hello_lambda_role.arn
depends_on = [aws_cloudwatch_log_group.hello_lambda_logging]
runtime = "java11"
handler = io.quarkus.amazon.lambda.runtime.QuarkusStreamHandler::handleRequest
timeout = 10
memory_size = 256
【讨论】:
以上是关于Quarkus Apache Camel AWS Lambda CDI ProducerTemplate 结果 NullPointerException的主要内容,如果未能解决你的问题,请参考以下文章
使用 Apache Camel Source 从 S3 到 Kafka