1

次のコードを Jackson 1.9 から 2.0 に移行する必要があります

public class ObjectIdDeserializer extends JsonDeserializer<ObjectId> {
    @Override
    public ObjectId deserialize(JsonParser jp, DeserializationContext context) {
        JsonNode oid = jp.readValueAsTree().get("$oid");
        return new ObjectId(oid.getTextValue());
    }
}

の戻り値の型が から に変更されたため、readValueAsTree()その値にアクセスできなくなりました。、およびツリーノードに適切にアクセスする方法が見つからないような他の奇妙な方法を試しました。私が使用していた方法は に依存しているため、反復は必要ありません。JsonNodeTreeNodehasCurrentToken()nextToken()getmap

4

1 に答える 1