David Blevins created JOHNZON-415:
-------------------------------------
Summary: Reads fail with Array JsonbTypeAdapter on deserialized
class
Key: JOHNZON-415
URL: https://issues.apache.org/jira/browse/JOHNZON-415
Project: Johnzon
Issue Type: Bug
Components: JSON-B
Affects Versions: 2.0.1
Reporter: David Blevins
Attempting deserialize class Email as follows
{code:java}
final String json = "[\"test\",\"domain.com\"]";
final Email email = jsonb.fromJson(json, Email.class);{code}
fails if the adapter is declared on the Email class
{code:java}
@JsonbTypeAdapter(Adapter.EmailClass.class)
public static class Email {
final String user;
final String domain;
{code}
{color:#910091}//...{color}
and adapter code
{code:java}
public static class EmailClass implements JsonbAdapter<Email, String[]> {
@Override
public String[] adaptToJson(final Email obj) {
return new String[]{obj.user, obj.domain};
}
@Override
public Email adaptFromJson(final String[] parts) {
return new Email(parts[0], parts[1]);
}
{code}
This will work on a write operation. This will work on a read and write in any
order if Email is a field inside another class.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)