![](/img/trans.png)
[英]Mongo auditable ZonedDateTime fields don't work in Spring Boot 2
[英]@JsonbTypeDeserializer and @JsonbTypeSerializer don't work in the fields
我正在進行為Jsob-B交換Jackson的活動,我在使用@JsonbTypeDeserializer和@JsonbTypeSerializer時遇到問題,如下所述。
我有一個這樣的實體:
public class User implements Serializable {
private static final long serialVersionUID = 1L;
private String login;
@JsonbTypeDeserializer(Decrypting.class)
@JsonbTypeSerializer(Encrypting.class)
private String password;
// getters and setter
}
像這樣的一項測試:
@Test
public void whenDeserializingUsingJsonbTypeDeserializer() throws IOException {
String json = "{\"login\":\"admin\", \"password\":\"yfv_ntl3_Nbrv0139tDwRQ\"}";
Jsonb jsonb = JsonbBuilder.create();
User user = jsonb.fromJson(json, User.class);
Assert.assertEquals(user.getPassword(), "test-string");
}
運行測試時,Decryption class 正在嘗試反序列化登錄字段,但是如您所見,只有密碼字段有注釋。
有什么辦法解決嗎?
更新新版本后,我遇到了JsonbConfigProperties.FAIL_ON_UNKNOWN_PROPERTIES的問題,我切換為YassonConfig.FAIL_ON_UNKNOWN_PROPERTIES現在一切正常。
<dependency>
<groupId>jakarta.json.bind</groupId>
<artifactId>jakarta.json.bind-api</artifactId>
<version>1.0.2</version>
</dependency>
<dependency>
<groupId>org.eclipse</groupId>
<artifactId>yasson</artifactId>
<version>1.0.7</version>
</dependency>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.