Exception when connecting to my local DynamoDB instance
Hi, I am trying to connect to my local DynamoDB instance, using create new profile / Local. I get an exception like this:
java -jar target/fatJar/DynamoIt-1.2.0.jar
[2024-10-11 10:16:35] [WARNING] [JavaFX-Launcher] Unsupported JavaFX configuration: classes were loaded from 'unnamed module @5a408476'
[2024-10-11 10:16:40] [WARNING] [Thread-3] Timeout while waiting for app reactivation
2024-10-11 10:16:43.007 java[28955:804961] +[IMKClient subclass]: chose IMKClient_Legacy
2024-10-11 10:16:43.007 java[28955:804961] +[IMKInputSession subclass]: chose IMKInputSession_Legacy
java.util.concurrent.CompletionException: com.amazonaws.AmazonServiceException: Unable to unmarshall exception response with the unmarshallers provided (Service: AmazonDynamoDBv2; Status Code: 404; Error Code: null; Request ID: null; Proxy: null)
at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:315)
at java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:320)
at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1770)
at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.exec(CompletableFuture.java:1760)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:387)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1312)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1843)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1808)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:188)
Caused by: com.amazonaws.AmazonServiceException: Unable to unmarshall exception response with the unmarshallers provided (Service: AmazonDynamoDBv2; Status Code: 404; Error Code: null; Request ID: null; Proxy: null)
at com.amazonaws.http.AmazonHttpClient$RequestExecutor.handleErrorResponse(AmazonHttpClient.java:1879)
at com.amazonaws.http.AmazonHttpClient$RequestExecutor.handleServiceErrorResponse(AmazonHttpClient.java:1418)
at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeOneRequest(AmazonHttpClient.java:1387)
at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeHelper(AmazonHttpClient.java:1157)
at com.amazonaws.http.AmazonHttpClient$RequestExecutor.doExecute(AmazonHttpClient.java:814)
at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeWithTimer(AmazonHttpClient.java:781)
at com.amazonaws.http.AmazonHttpClient$RequestExecutor.execute(AmazonHttpClient.java:755)
at com.amazonaws.http.AmazonHttpClient$RequestExecutor.access$500(AmazonHttpClient.java:715)
at com.amazonaws.http.AmazonHttpClient$RequestExecutionBuilderImpl.execute(AmazonHttpClient.java:697)
at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:561)
at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:541)
at com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.doInvoke(AmazonDynamoDBClient.java:6470)
at com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.invoke(AmazonDynamoDBClient.java:6437)
at com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.executeListTables(AmazonDynamoDBClient.java:3818)
at com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.listTables(AmazonDynamoDBClient.java:3782)
at com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.listTables(AmazonDynamoDBClient.java:3830)
at ua.org.java.dynamoit.db.DynamoDBService.lambda$getListOfTables$6(DynamoDBService.java:71)
at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768)
... 6 more
I cloned the dynamoit repo a few minutes ago and built the master branch, so it's the latest version, I think. I am running Zulu openjdk version 21 on macOS Sequoia.
The version of the DynamoDB Docker image is amazon/dynamodb-local:2.5.2
The application utilizes the Java AWS SDK Version 1, and I’ve noticed that defining the localhost endpoint is no longer effective. The second version of the SDK does not have this issue. I have already begun migrating the application to the newer SDK and hope to complete the process before Christmas.