在dynamodb表上运行batchGetItem函数时获取ValidationException。我在密钥列表下同时提供哈希密钥和范围密钥。以下是请求和响应。
请求:
var params = {"RequestItems":{"table":{"Keys":[{"hash_key":{"S":"xx.xxx.xxx.xxx"}},{"range_key":{"S":"xxxxx"}}]}}};
dynamodb.batchGetItem(params,function(err, res) {if(err) {console.log(err)}else{console.log(res);}});
答复:
{ [ValidationException: The provided key element does not match the schema]
message: 'The provided key element does not match the schema',
code: 'ValidationException',
time: Tue Jun 30 2015 17:34:07 GMT-0400 (EDT),
statusCode: 400,
retryable: false,
retryDelay: 0 }
当表的架构与您提供的键的键架构不匹配时,会出现此错误。您提供了一个哈希为String、范围为String的键。表的架构是什么?您可以使用可描述的API来获取表的架构。
看起来AWS Node JS有一个错误,因为我们不需要提及密钥的数据类型。
我试过这个,效果很好
{
"RequestItems":{
"<TableName>":{
"Keys":[
{"<HashKeyName>":"<HashKeyValue1>", "<RangeKeyName>":"<RangeKeyValue2>"},
{"<HashKeyName>":"<HashKeyValue2>", "<RangeKeyName>":"<RangeKeyValue2>"}
]
}
}
}
我正在测试带注释的javax验证。它们在应用程序中工作良好,方法参数上有注释。但是当我试图通过手动构建验证工厂来测试它们时 我得到以下错误。 javax。验证。ValidationException:HV000183:无法初始化“javax”。艾尔。“表达工厂”。检查类路径上是否有EL依赖项,或者改用ParameterMessageInterpolator 收到这个错误后,我在gradle文件中添
我正在测试一个具有预期异常的方法。我还需要验证在抛出异常后是否调用了一些清理代码(在模拟对象上),但看起来该验证被忽略了。这是代码。我正在使用 Junit 来验证预期的异常。 似乎完全被忽略了。无论我在中使用什么方法,我的测试都通过了,这不是我想要的。 你知道为什么会发生这种情况吗?
下面是我的代码: 这里有个例外: 对象“users”中字段“salary”上的字段错误:拒绝值[null];代码[NotNull.Users.Salary,NotNull.Salary,NotNull.java.lang.Integer,NotNull];参数[org.springframework.context.support.defaultmessageSourceResolvable:代码
向addUser控制器提交表单时发生异常 获取窗体的控制器 为什么会出现此异常,输入无效电子邮件而不是验证必须执行。
在测试中,我使用的是mockobject: 我试图验证其方法的使用: 但它抛出以下异常: 组织。莫基托。例外情况。滥用。UnfinishedVerificationException:此处缺少验证(模拟)的方法调用: 这一行的例外点是: setMaxRows接受一个int。 当我注释掉这一行时,测试成功了。调试程序时,我可以看到正在设置的setMaxRows方法: BrandLabels是一个Li
从Weblogic 11c切换到Weblogic 12c后,我得到了这个异常: 我发现了有关这些主题的其他问题,但所有解决方案都是关于错误的库(Vaadin 7-Bean验证)。我认为我的Hibernate验证器与bean验证器库匹配。这就是我在WEB-INF/lib中的内容: 它会是由其他一些依赖引起的吗? EDIT我目前在我的weblogic应用程序中有这个。xml,一切正常: