タグ付けされた質問 「jackson」

ジャクソンは、読み取りと書き込み(解析/生成)やJavaオブジェクトとのデータバインディングなどのタスクを処理するためのJavaライブラリです。Jacksonは主にJSONに使用されますが、Avro、CBOR、CSV、Javaプロパティ、Protobuf、Smile、XML、YAMLなど、他の多くのデータ形式もサポートしています。

12
START_OBJECTトークン外のjava.util.ArrayListのインスタンスをデシリアライズできません
ListカスタムオブジェクトをPOSTしようとしています。リクエスト本文のJSONは次のとおりです。 { "collection": [ { "name": "Test order1", "detail": "ahk ks" }, { "name": "Test order2", "detail": "Fisteku" } ] } リクエストを処理するサーバー側コード: import java.util.Collection; import javax.ws.rs.Consumes; import javax.ws.rs.POST; import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; @Path(value = "/rest/corder") public class COrderRestService { @POST @Produces(MediaType.APPLICATION_JSON) @Consumes(MediaType.APPLICATION_JSON) public Response postOrder(Collection<COrder> orders) …

9
Jackson JSONプロセッサでJoda DateTimeをシリアル化する方法は?
Jacksonに単純なパターン( "dd-MM-yyyy"など)に従ってJoda DateTimeオブジェクトをシリアル化させるにはどうすればよいですか? 私はもう試した: @JsonSerialize(using=DateTimeSerializer.class) private final DateTime date; 私も試しました: ObjectMapper mapper = new ObjectMapper() .getSerializationConfig() .setDateFormat(df); ありがとう!
118 java  json  jodatime  jackson 

4
ジャクソンはキャストせずにJsonNodeをArrayNodeに変換する方法?
JSONライブラリをorg.jsonからJacksonに変更し、次のコードを移行したいと思います。 JSONObject datasets = readJSON(new URL(DATASETS)); JSONArray datasetArray = datasets.getJSONArray("datasets"); 今ジャクソンで私は以下を持っています: ObjectMapper m = new ObjectMapper(); JsonNode datasets = m.readTree(new URL(DATASETS)); ArrayNode datasetArray = (ArrayNode)datasets.get("datasets"); でもキャストは嫌いですが、可能性はありClassCastExceptionますか?配列ではない場合に適切なエラー処理ができるようにgetJSONArray、in と同等のメソッドはありorg.jsonますか?
116 java  arrays  json  jackson 

8
jacksonに、ソースコードを制御できないプロパティを無視するように指示するにはどうすればよいですか?
一言で言えば、私のエンティティの1つに、「getBoundary」を呼び出すと例外をスローするGeometryCollectionがあります(この理由は別の本です。今のところ、これが機能する方法だとしましょう)。 ジャクソンにその特定のゲッターを含めないように伝える方法はありますか?コードを所有または制御するときに@JacksonIgnoreを使用できることはわかっています。しかし、そうではありません。ジャクソンは、親オブジェクトの連続的なシリアル化を通じてこのポイントに到達します。ジャクソンのドキュメントでフィルタリングオプションを見ました。それはもっともらしい解決策ですか? ありがとう!
112 java  json  jackson 

4
JsonMappingException:START_ARRAYトークンが不足しています
次の.jsonファイルがあるとします。 [ { "name" : "New York", "number" : "732921", "center" : [ "latitude" : 38.895111, "longitude" : -77.036667 ] }, { "name" : "San Francisco", "number" : "298732", "center" : [ "latitude" : 37.783333, "longitude" : -122.416667 ] } ] 含まれるデータを表すために2つのクラスを用意しました。 public class Location { public String name; public …
112 java  arrays  json  jackson 

11
Jacksonでカスタムシリアライザーを使用するにはどうすればよいですか?
Jacksonを使用してJSONにシリアル化するJavaクラスが2つあります。 public class User { public final int id; public final String name; public User(int id, String name) { this.id = id; this.name = name; } } public class Item { public final int id; public final String itemNr; public final User createdBy; public Item(int id, String itemNr, User createdBy) …

6
JavaでJsonNodeを変更する方法は?
JavaでJSON属性の値を変更する必要があります。値を適切に取得できますが、JSONを変更できませんでした。 ここに以下のコードがあります JsonNode blablas = mapper.readTree(parser).get("blablas"); for (JsonNode jsonNode : blablas) { String elementId = jsonNode.get("element").asText(); String value = jsonNode.get("value").asText(); if (StringUtils.equalsIgnoreCase(elementId, "blabla")) { if(value != null && value.equals("YES")){ // I need to change the node to NO then save it into the JSON } } } これを行う最良の方法は何ですか?
109 java  json  jackson 

8
コンストラクタに@JsonCreatorの注釈が付けられている場合、その引数に@JsonPropertyの注釈が付けられる必要があるのはなぜですか?
ジャクソンでは、コンストラクターにで注釈を付ける場合@JsonCreator、その引数にで注釈を付ける必要があります@JsonProperty。したがって、このコンストラクタは public Point(double x, double y) { this.x = x; this.y = y; } これになる: @JsonCreator public Point(@JsonProperty("x") double x, @JsonProperty("y") double y) { this.x = x; this.y = y; } なぜ必要なのか分かりません。説明していただけますか?

3
ジャクソンとジェネリック型参照
次のように、汎用メソッドにjackson jsonライブラリを使用したいと思います。 public MyRequest<T> tester() { TypeReference<MyWrapper<T>> typeRef = new TypeReference<MyWrapper<T>>(); MyWrapper<T> requestWrapper = (MyWrapper<T>) JsonConverter.fromJson(jsonRequest, typeRef); return requestWrapper.getRequest(); } ... public class MyWrapper<T> { private MyRequest<T> request; public MyRequest<T> getRequest() { return request; } public void setRequest(MyRequest<T> request) { this.request = request; } } public class MyRequest{ private List<T> …
107 java  json  generics  jackson 

10
ジャクソンのカスタムデシリアライザーからデフォルトのデシリアライザーを呼び出す方法
ジャクソンのカスタムデシリアライザに問題があります。デフォルトのシリアライザにアクセスして、逆シリアル化先のオブジェクトを作成します。ポピュレーションの後で、カスタムの処理をいくつか行いますが、最初にデフォルトのJackson動作でオブジェクトをデシリアライズします。 これは私が現在持っているコードです。 public class UserEventDeserializer extends StdDeserializer<User> { private static final long serialVersionUID = 7923585097068641765L; public UserEventDeserializer() { super(User.class); } @Override @Transactional public User deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException, JsonProcessingException { ObjectCodec oc = jp.getCodec(); JsonNode node = oc.readTree(jp); User deserializedUser = null; deserializedUser = super.deserialize(jp, ctxt, new User()); …

12
Jacksonを使用してオブジェクトに未加工のJSONを含めるにはどうすればよいですか?
Jacksonを使用してオブジェクトが(非)シリアル化されるときに、Javaオブジェクト内に未加工のJSONを含めようとしています。この機能をテストするために、次のテストを作成しました。 public static class Pojo { public String foo; @JsonRawValue public String bar; } @Test public void test() throws JsonGenerationException, JsonMappingException, IOException { String foo = "one"; String bar = "{\"A\":false}"; Pojo pojo = new Pojo(); pojo.foo = foo; pojo.bar = bar; String json = "{\"foo\":\"" + foo + "\",\"bar\":" …

10
Spring Bootによって暗黙的に使用されるJackson JSONマッパーをカスタマイズする方法は?
私はSpring Boot(1.2.1)を、RESTful Webサービスの構築チュートリアルと同様の方法で使用しています。 @RestController public class EventController { @RequestMapping("/events/all") EventList events() { return proxyService.getAllEvents(); } } 上記のように、Spring MVCはEventListオブジェクトをJSONにシリアル化するために暗黙的にJacksonを使用します。 しかし、次のようなJSON形式にいくつかの簡単なカスタマイズを行いたいと思います。 setSerializationInclusion(JsonInclude.Include.NON_NULL) 問題は、暗黙のJSONマッパーをカスタマイズする最も簡単な方法は何ですか? このブログ投稿でCustomObjectMapperを作成するなどの方法を試しましたが、ステップ3「Springコンテキストでのクラスの登録」は失敗します。 org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jacksonFix': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire method: public void com.acme.project.JacksonFix.setAnnotationMethodHandlerAdapter(org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter); nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No …

12
ジャクソンでfail_on_empty_beansを無効にするにはどうすればよいですか?
ジャクソン2.1を使用しfail_on_empty beansて、エラーメッセージで無効にしたいように見えるのを無効にするにはどうすればよいですか? これは世界で最も単純なものだと思いますが、それは遅すぎて、簡単なチュートリアルや特にから明らかなものを見つけることができませんでしたapi。SerializationFactory?なぜ彼らはそれをそれほど直感的にせず、エラーメッセージをとても簡単に見えるようにするのでしょうか? 私はがやるのエラーメッセージのように、私が意味する、それはNPEよりも優れています。 私は注釈を使用してこれを行う方法があると想定しています-しかし、私がやっている単純化された作業のためにそれらを使用することにまったく熱心ではありません!
99 java  jackson 

13
Jackson databind enumの大文字と小文字を区別しません
大文字と小文字を区別しない列挙値を含むJSON文字列をデシリアライズするにはどうすればよいですか?(Jackson Databindを使用) JSON文字列: [{"url": "foo", "type": "json"}] そして私のJava POJO: public static class Endpoint { public enum DataType { JSON, HTML } public String url; public DataType type; public Endpoint() { } } この場合、JSONの逆シリアル化は、"type":"json"機能する場所で失敗し"type":"JSON"ます。しかし、私"json"は命名規則の理由からも働きたいです。 POJOをシリアル化すると、大文字になります "type":"JSON" @JsonCreator@JsonGetter の使用を考えました: @JsonCreator private Endpoint(@JsonProperty("name") String url, @JsonProperty("type") String type) { this.url = url; this.type …

1
org.codehaus.jacksonとcom.fasterxml.jackson.coreの比較
org.codehaus.jacksonとcom.fasterxml.jackson.coreは関連していますか?私が持っています org.codehaus.jackson jackson-allバージョン1.7.2 そして com.fasterxml.jackson.core> jackson-databindバージョン2.4.3 私のポンで。それらが冗長で競合する可能性があるかどうかはわかりません。
97 java  json  jackson 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.