所有,

我正在使用JERSEY开发一系列REST服务,这些服务使用AWS开发工具包与Amazon DynamoDB服务进行通信。 REST服务托管在TOMCAT服务器中。但是,在执行以下代码时

AWSCredentials credentials = new BasicAWSCredentials("Test", "Test");
AmazonDynamoDBClient dynamoClient = new AmazonDynamoDBClient(credentials);


我得到以下异常:

Mar 08, 2015 6:28:25 PM com.sun.jersey.spi.container.ContainerResponse mapMappableContainerException
SEVERE: The exception contained within MappableContainerException could not be mapped to a response, re-throwing to the HTTP container
java.lang.NoSuchMethodError: com.amazonaws.ClientConfiguration.<init>(Lcom/amazonaws/ClientConfiguration;)
    at com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.adjustClientConfiguration(AmazonDynamoDBClient.java:397)
    at com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.<init>(AmazonDynamoDBClient.java:302)
    at com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.<init>(AmazonDynamoDBClient.java:283)


此代码似乎可以在普通的Java应用程序中运行。任何帮助表示赞赏。

最佳答案

看起来在运行时使用了不同版本的lib。检出包含AmazonDynamoDBClient的JAR版本,并确保此类具有正确的方法。然后签出运行时使用的版本。它可能与Tomcat配置连接。一旦在WebLogic中使用它,我就面临与JodaTime相关的类似问题。

09-27 18:34