【问题标题】:Invoking aws Step function from java lambda从 java lambda 调用 aws Step 函数
【发布时间】:2018-03-01 06:41:47
【问题描述】:

我在 aws 中创建了一个阶跃函数。我的状态机的名称是“TestStep”。用于迭代从 1 到 1000 的数字。

我创建了一个具有“AWSStepFunctionsFullAccess”策略的 IAM 角色。

我创建了一个 java lambda 来访问这个 step 函数。我的代码如下。

 final StateMachine stateMachine = stateMachine().comment("Iterator State Machine Example").startAt("ConfigureCount")
             .state("ConfigureCount", taskState()
               .resource("arn:aws:lambda:us-east-1:ACCOUNTID:function:TestStep")
               .transition(end()))
       .build();
final AWSStepFunctions client = AWSStepFunctionsClientBuilder.defaultClient();
        client.createStateMachine(new CreateStateMachineRequest()
                                                  .withName("TestStep")
                                                  .withRoleArn("arn:aws:iam::ACCOUNTID:role/ROLENAME")
                                                  .withDefinition(stateMachine));

但我收到如下错误。请帮助我正确理解这一点。 当我从 java 调用它时,应该触发 step 函数并工作......

【问题讨论】:

    标签: amazon-web-services aws-lambda aws-step-functions


    【解决方案1】:

    很高兴地通知您,我找到了解决方案。我提到的上述代码是用于创建一个新的状态机并尝试从 java lambda 运行新创建的状态机。对于我只是调用已在 aws step 函数中创建的 step 函数的场景,请按照以下步骤操作。

    首先, 在 pom.xml 中添加依赖

    <dependency>
       <groupId>com.amazonaws</groupId>
       <artifactId>aws-java-sdk-stepfunctions</artifactId>
       <version>1.11.285</version>
    

    然后使用下面的代码从你的 java 中调用一个 step 函数

      awsStepfunctionClient.startExecution(StartExecutionRequest);
    

    【讨论】:

      【解决方案2】:

      对于 AWS Java SDK v2,pom 的依赖项是:

      <dependency>
          <groupId>software.amazon.awssdk</groupId>
          <artifactId>sfn</artifactId>
          <version>2.16.59</version>
      <dependency>
      

      然后使用客户端(和 StartExecutionRequest 对象)的标准构建器模式来触发您的执行:

      SfnClient sfc = SfnClient.builder()
              .region()
              .build();
      
      sfc.startExecution(startExecutionRequest);
      

      【讨论】:

      猜你喜欢
      • 2018-01-29
      • 1970-01-01
      • 2021-07-25
      • 2019-03-22
      • 1970-01-01
      • 1970-01-01
      • 2021-12-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多