@JsonCreator и mixin через модуль не работает для стороннего класса

Я пытаюсь десериализовать java.net.HttpCookie, который не имеет конструктора по умолчанию без аргументов и получает:org.codehaus.jackson.map.JsonMappingException: не найден подходящий конструктор для типа [простой тип, класс java.net.HttpCookie]: невозможно создать экземпляр объекта JSON (нужно добавить / включить информацию о типе?) в [Source: java. io.StringReader@5a395674; строка: 1, столбец: 35

Это с Jackson-Mapper-ASL ​​V 1.9.13

я нашелСторонний класс Джексона без конструктора по умолчанию и попытался использовать их решение как с помощью getDeserializationConfig, так и с помощью модуля. Я представляю код модуля ниже.

abstract class HttpCookieMixIn {
    @JsonCreator
    public HttpCookieMixIn(@JsonProperty("name") String name, @JsonProperty("value") String value) {
        logger.info("Mixin called!");
    }
}

public class MyModule extends SimpleModule {
    public MyModule() {
        super("ModuleName", new Version(0,0,1,null));
    }

    @Override
    public void setupModule(SetupContext context) {
        context.setMixInAnnotations(java.net.HttpCookie.class, HttpCookieMixIn.class);
        logger.info("Set mixin annotation");
    }
}

В конструкторе конечной точки сервера у меня есть следующее:

public ServerEndpointConstructor() {
    mapper = new ObjectMapper();
    mapper.registerModule(new MyModule());
}

Я вижу, что "Set mixin annotation" регистрируется до исключения десериализации в моих журналах. Я не вижу "Миксин называется!" никогда (хотя я не уверен, что код внутри конструктора mixin будет вызываться). Может кто-нибудь показать мне ошибку в моих способах? Нужно ли аннотировать все поля внутри java.net.HttpCookie?

http://docs.oracle.com/javase/7/docs/api/java/net/HttpCookie.html

Ответы на вопрос(1)

Ваш ответ на вопрос