Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon Lambda Java函数未向DynamoDB插入数据_Java_Eclipse_Amazon Web Services_Amazon Dynamodb_Aws Lambda - Fatal编程技术网

Amazon Lambda Java函数未向DynamoDB插入数据

Amazon Lambda Java函数未向DynamoDB插入数据,java,eclipse,amazon-web-services,amazon-dynamodb,aws-lambda,Java,Eclipse,Amazon Web Services,Amazon Dynamodb,Aws Lambda,目前我正在与亚马逊网站服务合作。 我使用eclipseide创建了一个javalambda函数 在eclipse中创建函数后,我使用JUnit test测试函数eclipse。 Lambda函数成功执行,并将数据成功插入到DynamoDB DynamoDB dynamoDB = new DynamoDB(new AmazonDynamoDBClient(new ProfileCredentialsProvider("my_default_profile"))); Table table =

目前我正在与亚马逊网站服务合作。
我使用
eclipseide
创建了一个javalambda函数

在eclipse中创建函数后,我使用JUnit test测试函数eclipse。
Lambda函数成功执行,并将数据成功插入到
DynamoDB

DynamoDB dynamoDB = new DynamoDB(new AmazonDynamoDBClient(new ProfileCredentialsProvider("my_default_profile")));

Table table = dynamoDB.getTable(TABLE_NAME);

String login_id = (String) inputHashMap.get("login_id");
String password = (String) inputHashMap.get("password");
String type = (String) inputHashMap.get("type");
String device_id = (String) inputHashMap.get("device_id");

try {
    Exception eItem item = new Item().withPrimaryKey("login_id", login_id)
        .withString("device_id", device_id)
        .withBoolean("isUserVerified", false)
        .withString("password", password)
        .withString("type", type);

    table.putItem(item);
}
catch(Exception e){

}
但问题是:

我使用AWS lambda上的函数运行Eclipse中的lambda函数

数据未插入及其引发的异常

我还使用
API网关
测试了这个方法,但得到了相同的异常

异常:
java.lang.IllegalArgumentException:AWS凭据配置文件未在给定路径中找到:/home/sbx_user1051/.AWS/credentials

请朋友们帮我解决这个问题


注意:我已经为Lambda函数和 发电机B

我正在使用下面的代码将数据插入到
DynamoDB

DynamoDB dynamoDB = new DynamoDB(new AmazonDynamoDBClient(new ProfileCredentialsProvider("my_default_profile")));

Table table = dynamoDB.getTable(TABLE_NAME);

String login_id = (String) inputHashMap.get("login_id");
String password = (String) inputHashMap.get("password");
String type = (String) inputHashMap.get("type");
String device_id = (String) inputHashMap.get("device_id");

try {
    Exception eItem item = new Item().withPrimaryKey("login_id", login_id)
        .withString("device_id", device_id)
        .withBoolean("isUserVerified", false)
        .withString("password", password)
        .withString("type", type);

    table.putItem(item);
}
catch(Exception e){

}

请尝试创建没有配置文件的DynamoDB对象

DynamoDB DynamoDB=newdynamodb(newamazondynamodbclient());

我已经为Lambda函数和DynamoDB添加了完全权限。好的,等等,我会在上面创建对象后回来。完成了。但是你能再告诉我一件事吗。?如果我只使用
DynamoDB DynamoDB=newdynamodb(newamazondynamodclient())
会出现任何问题吗?现在我遇到了这个异常:
com.amazonaws.AmazonClientException:无法从链中的任何提供商加载AWS凭据
谢谢您的帮助。