问题标签 [aws-sdk-java]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
41 浏览

java - AWS ProfileCredential 提供 AWS SDK1 VS AWS SDK 2 JAVA

有人可以解释下面两个库之间的区别 -

我有两段代码,都试图在帐户中列出 s3 存储桶。

JAVA 1 库。使用来自 com.amazonaws.auth.profile.ProfileCredentialsProvider的 CredentialProvider ;

使用 CredentialProvider 的 Java 2 库

软件.amazon.awssdk.auth.credentials.ProfileCredentialsProvider;

Java2 库调用成功,我可以看到正在打印的桶数。

使用 Java 1 库时,总是无法从配置加载配置文件。

ENV 变量已设置。我得到以下异常:

0 投票
2 回答
139 浏览

amazon-web-services - 如何使用 Amazon S3 Java API 通过异步调用执行 getObject

我需要从 S3 下载很多文件,所以我s3Client.getObject(request, destination)用 futures 包装了很多调用,但是没有提到它被阻塞,所以我担心我可能会遇到所有下载调用都进行但文件没有的竞争条件'还没有真正下载。

因为没有提到它是异步的,所以假设这个 api 被阻塞是否安全?

s3Client.getObject(request, destination)为了澄清,通过阻塞我的意思是在下载完成之前,流不会在该行之后继续。

在此处输入图像描述

0 投票
0 回答
165 浏览

amazon-web-services - 适用于 USER_PASSWORD_AUTH 流的 AWS Cognito 开发工具包

Cognito IDP 允许以下 3 个 AWS CLI 注册、确认和生成 ID 令牌:

  1. aws cognito-idp 注册 --region ap-south-1 --client-id xxx --username xx@xx.com --password xxx

  2. aws cognito-idp 确认注册 --client-id xxxx --username xxx@xx.com --confirmation-code xxx

  3. aws cognito-idp 启动身份验证 --auth-flow USER_PASSWORD_AUTH --client-id xx --auth-parameters USERNAME=xx,PASSWORD=xx

我可以通过 AWSCognitoIdentityProvider.signUp() 和 AWSCognitoIdentityProvider.confirmSignup() 启动第 1 步和第 2 步。但是,无论有效的信用如何,第 3 步都会失败。

下面是使用的代码:

0 投票
0 回答
42 浏览

java - AWS S3 的多部分上传失败,文件 >~18MB

使用亚马逊提供的模板代码(https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpu-upload-object.html低级java)完成多部分上传时,它适用于较小的文件,但在第二次迭代后的那一刻,((ByteArrayInputStream) inputStream).pos=的值15xxxxx,而根据我们需要在UploadPartRequest=中设置的内容计算的文件位置10xxxxx

我证实这很奇怪,因为在第一次迭代之后,这两个值相互匹配。我还验证了零件尺寸没有任何不同。

编码:

对此的任何想法或建议将不胜感激。我对 InputStreams 不太熟悉,所以也许我在那里遗漏了什么?

0 投票
0 回答
21 浏览

unit-testing - 用户定义的对 Aws Ec2 内部单元测试调用的响应

要求:需要模拟 aws-sdk-java-ec2 对 ec2.us-east-1.amazonaws.com 进行的内部调用,作为单元测试的一部分。该调用应该检索与 Ec2 实例关联的所有标签。

问题:

  • 我无法进行环境变量更改(例如 AWS_EC2_METADATA_SERVICE_ENDPOINT 到 localhost - 让您模拟元数据 url),它可以将 url 切换到 localhost,然后可以由 wiremock 处理。
  • 父方法上的静态模拟(api 调用在 sdk 内部)失败,因为它是静态类的一部分。

这是进行该调用的方法:

}

仅供参考,上面的函数是从另一个静态类调用的

  • 我可以更改任何环境变量吗?

  • 任何真正可以让我捕获内部调用的模拟框架(因为我没有发起调用,因此无法更改单元测试)?

  • 当父函数调用它时,我有什么方法可以模拟它getEC2EnvTags()本身(因为它是静态方法) ?captureAWSMetadata()

  • 我完全缺少一个模拟aws框架​​吗?

任何输入将不胜感激。

0 投票
1 回答
97 浏览

java - 如何从 DynamoDB 表中的项目中删除属性?

我有一个项目,我想使用 DynamoDB 中的 SDK 2.x 删除其特定属性。我该怎么做呢?我正在使用增强型 DynamoDB 进行表管理。这是一个代码示例:

我将不胜感激使用增强型 DynamoDB 客户端的解决方案。

0 投票
1 回答
35 浏览

java - S3 客户端未在 WebLogic 12c 上构建

在 weblogic 上部署了一个应用程序,该应用程序使用 s3 协议定期将文件上传到云端。使用 AWS SDK for Java 1.x。部分代码

但是当我在 WebLogic 12c 上部署和启动应用程序(作为 war 包)时,它会在第 6 行的build()中冻结(我通过在每一行的日志中留下一个条目来确定它)。没有例外,没有错误的日志消息。在 IntellijIdea 本地构建和运行此代码,无需在 WebLogic 12c 上部署,运行良好!我是为服务器开发应用程序的新手,我看不到日志。

可能是什么问题呢?

0 投票
0 回答
27 浏览

aws-sdk-java - Spring 集成 AmazonKinesisAsync 和 KinesisMessageHandler - 刷新 aws 凭证

我们不断将消息发布到不同 aws 帐户中的 Kinesis 流。所以我们将做一个假设角色 api 请求来获取短期凭证来发布消息。STSAssumeRoleSessionCredentialsProvider 能够定期刷新凭证。

我们的 Spring bean 配置如下。AmazonKinesisAsync 需要一个 AWSCredentialsProvider。因此,如果我将 STSAssumeRoleSessionCredentialsProvider 定义为 Spring bean 并将其设置在类似下面的 AmazonKinesisAsync bean 中,我是否可以期望凭证在过期后得到刷新?或者我还有什么需要照顾的吗?

0 投票
1 回答
39 浏览

amazon-web-services - 使用高级多部分上传仍然没有指定内容长度的警告

即使我使用的是高级多部分,我仍然在控制台中收到警告:

这就是我使用高级分段上传的方式,就像这里一样:https ://docs.aws.amazon.com/AmazonS3/latest/userguide/mpu-upload-object.html

5248000 是 5MB,我尝试上传比这大得多的文件,因此它应该使用多部分策略,如withMultipartUploadThreshold文档中所述:

设置何时使用分段上传的大小阈值(以字节为单位)。超过此大小的上传将自动使用分段上传策略,而小于此阈值的上传将使用单个连接上传整个对象。

为什么它仍然给出这个警告?

0 投票
0 回答
91 浏览

amazon-web-services - 将参数传递给 AWS Glue 工作流程

研究用于 ETL 管道流程自动化的 AWS Glue 工作流。

我已经定义了一些工作流参数来定义为哪个客户运行此作业并希望将其作为输入传递给工作流。

工作流属性截图

我对如何在从 AWS CLI 启动工作流执行时覆盖这些默认工作流参数感到困惑

或通过 AWS Java 开发工具包。

我看到aws glue put-workflow-run-properties一旦您执行了工作流 --run-id 但希望在工作流触发时设置这些值,您可以在其中更新这些值?

任何帮助将不胜感激。