AWS 2 DynamoDB

JVM since1.0.0 Native since1.0.0

Store and retrieve data from AWS DynamoDB service or receive messages from AWS DynamoDB Stream using AWS SDK version 2.x.

What’s inside

Please refer to the above links for usage and configuration details.

Maven coordinates

Or add the coordinates to your existing project:

<dependency>
    <groupId>org.apache.camel.quarkus</groupId>
    <artifactId>camel-quarkus-aws2-ddb</artifactId>
</dependency>

Check the User guide for more information about writing Camel Quarkus applications.

SSL in native mode

This extension auto-enables SSL support in native mode. Hence you do not need to add quarkus.ssl.native=true to your application.properties yourself. See also Quarkus SSL guide.

Additional Camel Quarkus configuration

Optional integration with Quarkus Amazon DynamoDB

If desired, it is possible to use the Quarkus Amazon DynamoDB Client extension in conjunction with Camel Quarkus AWS2 DDB. Note that this is fully optional and not at all mandatory. Follow the Quarkus documentation with some caveats.

  1. The Apache client type has to be selected by configuring the following property.

    quarkus.dynamodb.sync-client.type=apache
  2. The DynamoDbClient has to be "unremovable" in the sense of Quarkus CDI reference so that Camel Quarkus is able to look it up at runtime. You can reach that e.g. by adding a dummy bean injecting DynamoDbClient:

    import javax.enterprise.context.ApplicationScoped;
    import io.quarkus.arc.Unremovable;
    import software.amazon.awssdk.services.dynamodb.DynamoDbClient;
    
    @ApplicationScoped
    @Unremovable
    class UnremovableDynamoDbClient {
        @Inject
        DynamoDbClient dynamoDB;
    }