问题标签 [dynamo-local]

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 回答
519 浏览

amazon-dynamodb - 发送多值自定义数据时出错

我在发送一组自定义对象时遇到以下错误。

2015 年 10 月 21 日晚上 7:28:38 com.amazonaws.services.dynamodbv2.datamodeling.marshallers.ObjectSetToStringSetMarshaller marshall 警告:将一组非字符串对象编组到 DynamoDB StringSet。除非您真的知道自己在做什么,否则您将无法从 DynamoDB 中读取这些对象:这可能是一个错误。如果您确实知道自己在做什么,请随意忽略此警告,但请考虑为此使用自定义封送处理程序。

com.amazonaws.AmazonServiceException:一个或多个参数值无效:com.amazonaws.http.AmazonHttpClient 上的字符串集可能不为空(服务:AmazonDynamoDBv2;状态代码:400;错误代码:ValidationException;请求 ID:S61P89234SI8PE61M8I9QTG8RNVV4KQNSO5AEMVJF66Q9ASUAAJG)。 com.amazonaws.http.AmazonHttpClient.executeOneRequest(AmazonHttpClient.java:766) 的 handleErrorResponse(AmazonHttpClient.java:1181) com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:485) com.amazonaws.http.AmazonHttpClient .execute(AmazonHttpClient.java:306) 在 com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.invoke(AmazonDynamoDBClient.java:1799) 在 com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.updateItem(AmazonDynamoDBClient.java:1614) 在 com。 amazonaws.services.dynamodbv2.datamodeling。DynamoDBMapper$SaveObjectHandler.doUpdateItem(DynamoDBMapper.java:1241) 在 com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper$2.executeLowLevelRequest(DynamoDBMapper.java:937) 在 com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper$SaveObjectHandler.execute (DynamoDBMapper.java:1120) 在 com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper.save(DynamoDBMapper.java:966) 在 com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper.save(DynamoDBMapper.java:758) 在.dao.impl.DeviceDaoImpl.addDevice(DeviceDaoImpl.java:57) 在 .admin.device.service.impl.DeviceServiceImpl.addDevice(DeviceServiceImpl.java:38)DynamoDBMapper$SaveObjectHandler.execute(DynamoDBMapper.java:1120) 在 com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper.save(DynamoDBMapper.java:966) 在 com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper.save(DynamoDBMapper.save) java:758) 在 .dao.impl.DeviceDaoImpl.addDevice(DeviceDaoImpl.java:57) 在 .admin.device.service.impl.DeviceServiceImpl.addDevice(DeviceServiceImpl.java:38)DynamoDBMapper$SaveObjectHandler.execute(DynamoDBMapper.java:1120) 在 com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper.save(DynamoDBMapper.java:966) 在 com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper.save(DynamoDBMapper.save) java:758) 在 .dao.impl.DeviceDaoImpl.addDevice(DeviceDaoImpl.java:57) 在 .admin.device.service.impl.DeviceServiceImpl.addDevice(DeviceServiceImpl.java:38)

这是发生这种情况的代码片段

似乎错误是从以下行发生的 device.setAsscoiatedReviewers(asscoiatedReviewers);

这应该被编组/解组并发送到亚马逊吗?任何帮助将不胜感激 。

更新:当在 asscoiatedReviewers 中填充数据时,我收到以下异常

警告:将一组非字符串对象编组到 DynamoDB 字符串集。除非您真的知道自己在做什么,否则您将无法从 DynamoDB 中读取这些对象:这可能是一个错误。如果您确实知道自己在做什么,请随意忽略此警告,但请考虑为此使用自定义封送处理程序。com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMappingException:如果没有自定义编组器或 @DynamoDBDocument 注释,则无法解组以键入 in.forus.foruscare.entity.AsscoiatedReviewer 类。在 com.amazonaws.services.dynamodbv2.datamodeling.ConversionSchemas$StandardItemConverter.getObjectUnmarshaller(ConversionSchemas.java:590) 在 com.amazonaws.services.dynamodbv2.datamodeling.ConversionSchemas$StandardItemConverter.augment(ConversionSchemas.java:497) 在 com.amazonaws .services.dynamodbv2。

这是否意味着我需要编写自定义编组器或使用 DynamoDBDocument 注释进行注释。如果是,这是一组自定义对象,您能否将指向 marshaller 的简单示例的指针发送给我。我碰巧看了其他 marshllers,他们似乎没有解释我需要什么

0 投票
0 回答
29 浏览

amazon-dynamodb - 如何在 amazon dynamo db 中为设备/用户建模

如何使用以下模型在 amazon dynamo db 中为设备/用户建模

稍后,我想找出给定设备邮政编码和半径的壁橱用户。任何帮助将不胜感激

0 投票
1 回答
1337 浏览

javascript - 使用 node.js 将 dynamoDB 本地表中的数据列出到 html 并表达

我正在尝试使用 node.js 将 DynamoDB 本地项目列出到 html 表并表示,DynamoDB 数据如下所示:

{"Items": [{ "id": "A004","name": "ACC LR2","userId": ["1","2","3","4"], {"id": "0001","name": "ABG IT","userId": [ "8","9","10","11"]}}]}

我的 nodejs 路由是这样的:

我在 html 上的表格是这样的:

console.log 显示如下结果:

我能够列出 id 和 name 的项目,但我无法列出 userID ,我该怎么做才能在 html 表上列出 userID ?..帮助表示赞赏..

0 投票
1 回答
90 浏览

javascript - 如何从json数组中选择一个元素并在html上显示

我的 DynamoDb 本地数据库架构具有以下项目。

我只想选择用户 ID 并使用 nodejs 将其列出到我的 html 页面中。我该怎么办?

这就是我的整个代码的运行方式,我做错了什么?

0 投票
0 回答
629 浏览

javascript - 如何从json数组中选择一个元素并使用nodejs在html上显示

我在 DynamoDB 本地有一个名为 userGroup 的表。项目如下

这样的行有20多条。
这是一整行

这是我的路线 users.js

我的 group.html 是这样的

<td>这将在 group.html 页面上以列表格式显示 ID 和名称的值和详细信息。现在,当我单击详细信息时,我应该转到组信息页面,该页面将仅显示 dynamoDB 中仅针对所选特定行的唯一用户 ID 的所有详细信息。

我在 users.js 中的第二条路线

用于显示相关数据详细信息的 HTML 页表 2 就像

那么我应该在 group-info.js 页面中做什么来显示<td>特定行的选定用户 ID。??

帮助表示赞赏..

0 投票
1 回答
8119 浏览

javascript - 如何使用 nodejs 更新 dynamoDB 中的项目?

如何使用 nodejs 更新 dynamoDB 中的项目?

这是来自 DynamoDB javascript shell 的项目列表 -

我想将标志值更新为 2 ...这是我的代码。我该怎么办??我究竟做错了什么 ??帮助表示赞赏...

0 投票
2 回答
37226 浏览

amazon-dynamodb - 错误 InvalidParameterType:预期 params.Item['pid'] 是 DynamoDB 中的结构

注意:所有这些都发生在 DynamoDB 的本地实例上。

这是我用来从 DynamoDB Shell 创建表的代码:

这是被调用以将元素添加到数据库中的函数(在 node.js 中):

我得到的输出是:

我不明白为什么或如何获取键 0、1、2、3、4 和 5,而它们在上一行打印时不存在。

另外,我该如何修复错误Expected params.Item['pid'] to be a structure?我已将其声明为字符串并尝试存储字符串!

其他注意事项:当我在 shell 上运行时,我在函数中使用的相同代码工作得很好。我还包括了 aws-sdk 并根据需要对其进行了配置:

0 投票
0 回答
465 浏览

scala - 将 DynamoDB Local 与 AWScala 连接会产生 SocketTimeoutException

我正在尝试在我的计算机上运行 DynamoDB。我下载了 DynamoDB 并运行它。

运行 DynamoDB 本地 JAR 的输出

之后我尝试使用https://github.com/seratch/AWScala连接数据库

  • jdk版本为:jdk1.8.0_66
  • Scala sdk 版本为:2.11.7
  • AWScala 版本为:0.5.5
  • 我正在使用 IntelliJIdea 15.0.1

它给出了这样的错误:

我怎么解决这个问题?

谢谢!

0 投票
2 回答
13357 浏览

amazon-web-services - Amazon DynamoDB Local - 未知错误、异常或失败

我必须测试一个严重依赖亚马逊 DynamoDB 的应用程序。我希望测试能够单独运行,这就是我选择 DynamoDB Local 的原因.jar。我知道最近的更新,使我们能够在没有外部 bash 命令调用的情况下运行它。但是,当我尝试运行此处指定的示例时,我得到以下堆栈跟踪:

这是我要运行的代码:

我观察到,如果我尝试完全从 Java 程序本身运行它,那就是抛出异常并且指定的端口不再可用(抛出一个错误,说明该端口被占用)。但是,如果我从命令提示符启动 DynamoDB Local 并将 Java 程序仅用作访问客户端,那么一切运行正常。有什么建议么?

0 投票
6 回答
9152 浏览

java - 作为 Gradle Java 项目的一部分在本地运行 Dynamodb

我正在尝试在本地运行 DynamoDB 以进行测试。我按照亚马逊提供的步骤设置它并单独运行 jar 工作正常(链接到亚马逊的教程Here)。但是,本教程不会在您自己的项目中运行 jar。我不希望所有其他开发人员每次测试他们的代码时都必须获取一个 jar 并在本地运行它。

这就是我的问题所在。作为我的测试的一部分,我很难在网上找到任何关于如何配置 Gradle 项目以运行 DynamoDB 本地服务器的示例。我找到了以下 maven 示例https://github.com/awslabs/aws-dynamodb-examples/blob/master/src/test/java/com/amazonaws/services/dynamodbv2/DynamoDBLocalFixture.java#L32并正在尝试转换它到 Gradle,但com.amazonaws.services.dynamodbv2.local他们正在使用的所有导入语句都出现错误。错误是找不到资源。

我进入他们项目的 pom 并将以下内容放入我的build.gradle文件中以模拟它。

导入语句仍然失败。这是一个失败的例子。

TL;博士

有没有人设法让 DynamoDB 本地 JAR 作为 Gradle 项目的一部分执行,或者有一个好的教程链接(它不一定是我链接到的教程)。