我目前正在使用Jackson 1.4.2并尝试code从我们的UI传递回Java控制器(Servlet)的值的反序列化(类型信息的唯一标识符).
有多种类型(例如ABCType,XYZType等等)都从a扩展AbstractType,但每种具体类型都有一个静态工厂方法,它作为单个参数,唯一标识符,并返回类型对象(名称,关联类型,描述,由该标识符表示的有效首字母缩写词等.每种具体类型(例如XYZType)中的静态方法都注释为@JsonCreator:
@JsonCreator
public static XYZType getInstance(String code) {
.....
}
Run Code Online (Sandbox Code Playgroud)
我看到的问题是杰克逊的映射器试图将json反序列化为这些类型的异常:
引起:org.codehaus.jackson.map.JsonMappingException:找不到类型[simple type,class com.company.type.XYZtype]的默认构造函数:无法从Json对象实例化.
我在这里错过了@JsonCreator静态工厂方法的注释(或者它是否与Jackson 1.4.2在从AbstractType?扩展的具体类型中挣扎?)?
设想:
我们有一个流式 Java 应用程序,它使用最新的 DAX 客户端实例通过 DAX 对 DynamoDB 执行读/写请求。在执行简单的集成测试和性能测试时,我们会间歇性地看到有关没有可用端点的异常。
com.amazonaws.AmazonClientException: Unable to call cluster endpoint: No endpoints available
at com.amazon.dax.client.dynamodbv2.ClusterDaxClient$ClusterReadRetryHandler.check(ClusterDaxClient.java:699)
at com.amazon.dax.client.dynamodbv2.ClusterDaxClient.invoke(ClusterDaxClient.java:649)
....
IOException: No endpoints available
at com.amazon.dax.client.cluster.Cluster.readClient(Cluster.java:680)
at com.amazon.dax.client.dynamodbv2.ClusterDaxClient$2.getClient(ClusterDaxClient.java:138)
at com.amazon.dax.client.dynamodbv2.ClusterDaxClient.invoke(ClusterDaxClient.java:631)
... 23 more
Run Code Online (Sandbox Code Playgroud)
To clarify, intermittent meaning that some requests will be successful, then some will fail, only to have the requests once again be successful all within a single test (integration or performance). In fact, the majority of these test runs will be successful w/out …