Convert JSON array to Java Class Object List

Vlad Marinescu

I have a JSON string that comes from a WFC service. When I try to convert JSON array into List object, I've got the following error :

".JsonMappingException: Can not deserialize instance of java.util.ArrayList out of START_OBJECT token at [Source: java.io.StringReader@41f27f18; line: 1, column: 1]"

The Java class (Card Class):

public class Card {
    public String ID;
    public String CompanyID;
    public String CompanyName;
    public String FiscalCode;
    public String Limit;
    public String StateID;
    public String CardState;
    public String Deleted;
    public String Sold;
    public String StartDate;
    public String InvoiceStartDate;
    public String Quantity;
    public String Value;
    public String CardTypeID;
    public String CardType;
    public String SoldChanged;
    public String DriverName;
    public String VehiclePlateNumber;
    public String VehicleID;
    public String Discount;
    public String ContractID;
    public String DiscountPerMonth;
    public String ProductID;
    public String ProductStateID;
    public String Mail;
    public String WithoutLimit;
    public String ContractSold;
    public String ContractLimit;
    public String NumberOfTransactions;
    public String DriverNameOnly;
    public String DriverSurnameOnly;
}

The Java code to deserialize :

strResponse = responseHandler.handleResponse(response);
if (strResponse.contains("Credit") || strResponse.contains("Debit")) {
    ObjectMapper mapper = new ObjectMapper();
    strResponse= strResponse.replace("\"GetCardsResult\":", "");
    userCards = mapper.readValue(strResponse, mapper.getTypeFactory().constructCollectionType(List.class, Card.class));
}

The JSON string:

{     "GetCardsResult":"[{\"ID\":3,\"CompanyID\":1155,\"CompanyName\":\"test\",\"FiscalCode\":null,\"Code\":\"1423127205\",\"Limit\":0.000,\"StateID\":1,\"CardState\":\"Activ\",\"Deleted\":false,\"Sold\":0.000,\"StartDate\":\"\/Date(1412974800000+0300)\/\",\"InvoiceStartDate\":\"\/Date(-62135596800000+0200)\/\",\"Quantity\":null,\"Value\":0.0,\"CardTypeID\":1,\"CardType\":\"Credit\",\"SoldChanged\":false,\"DriverName\":\"\",\"VehiclePlateNumber\":\"B 222 ART\",\"VehicleID\":null,\"Discount\":null,\"ContractID\":15,\"DiscountPerMonth\":null,\"ProductID\":null,\"ProductStateID\":null,\"Mail\":\"\",\"WithoutLimit\":true,\"ContractSold\":null,\"ContractLimit\":null,\"NumberOfTransactions\":null,\"DriverNameOnly\":null,\"DriverSurnameOnly\":null},{\"ID\":2881,\"CompanyID\":1155,\"CompanyName\":\"test\",\"FiscalCode\":null,\"Code\":\"test0000\",\"Limit\":125.000,\"StateID\":1,\"CardState\":\"Activ\",\"Deleted\":false,\"Sold\":132.330,\"StartDate\":\"\/Date(1436130000000+0300)\/\",\"InvoiceStartDate\":\"\/Date(-62135596800000+0200)\/\",\"Quantity\":null,\"Value\":0.0,\"CardTypeID\":1,\"CardType\":\"Credit\",\"SoldChanged\":false,\"DriverName\":\"aaa aaa\",\"VehiclePlateNumber\":\"aaa\",\"VehicleID\":null,\"Discount\":null,\"ContractID\":15,\"DiscountPerMonth\":null,\"ProductID\":null,\"ProductStateID\":null,\"Mail\":\"\",\"WithoutLimit\":true,\"ContractSold\":null,\"ContractLimit\":null,\"NumberOfTransactions\":null,\"DriverNameOnly\":null,\"DriverSurnameOnly\":null}]" }

Thanks in advance!

Fabio Venturi Pastor

Try this:

    try {            
         JSONObject jsonObject = null;
         yourJSONString.replace("\\", "");
         jsonObject = new JSONObject(yourJSONString);
         String newJSONString = jsonObject.get("GetCardsResult").toString();
         JSONArray jsonMainArr = new JSONArray(newJSONString);
         //now just loop the json Array
         for (int i = 0; i < jsonMainArr.length(); ++i) {                     
         JSONObject rec = jsonMainArr.getJSONObject(i);                     
         card.set_id(rec.get("ID").toString());                     
         //....      
       }                                                       
       } catch (JSONException e) {
         e.printStackTrace();
       } 

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Dev

How to convert Java Class and Java Array List to JSON

From Dev

Convert a list of a custom class to an object array

From Dev

Convert list with each element an object of class into json

From Java

How do i convert a json array object of an object into a java 8 optional list of that object

From Dev

How do i convert a json array object of an object into a java 8 optional list of that object

From Dev

java convert list of object array to a POJO

From Dev

How to convert JSON string into List of Java object?

From Dev

How to Convert String Array JSON in a Java Object

From Dev

Convert JSON data to Java object (including the Object class) using GSON

From Dev

Convert List<Object[]> to JSON

From Dev

Convert object to JSON Array?

From Dev

Convert Json object to an array

From Dev

Convert String containing list of JSON objects to Object Array

From Dev

Convert Json object array to list of property values in angularjs

From Dev

Convert List<object> to class of Objects : List<object>

From Java

Convert list to array in Java

From Dev

Json array to a list of object

From Dev

How to convert java Object list to JSON and show them via AJAX

From Dev

Convert a JSON of different type of objects into java List object

From Dev

Convert pojo (list of object) to json in java using jackson

From Dev

Convert Json to List Java

From Dev

Convert an object into list or array MVC

From Dev

Trying to convert List<object> to an array

From Dev

java convert POST form array to JSON object or POJO or map

From Dev

Convert class object to Java RDD

From Dev

Angular convert json to array of object

From Dev

Convert JSON object array into string

From Dev

How to convert Array into json object?

From Dev

convert array to json object in php

Related Related

  1. 1

    How to convert Java Class and Java Array List to JSON

  2. 2

    Convert a list of a custom class to an object array

  3. 3

    Convert list with each element an object of class into json

  4. 4

    How do i convert a json array object of an object into a java 8 optional list of that object

  5. 5

    How do i convert a json array object of an object into a java 8 optional list of that object

  6. 6

    java convert list of object array to a POJO

  7. 7

    How to convert JSON string into List of Java object?

  8. 8

    How to Convert String Array JSON in a Java Object

  9. 9

    Convert JSON data to Java object (including the Object class) using GSON

  10. 10

    Convert List<Object[]> to JSON

  11. 11

    Convert object to JSON Array?

  12. 12

    Convert Json object to an array

  13. 13

    Convert String containing list of JSON objects to Object Array

  14. 14

    Convert Json object array to list of property values in angularjs

  15. 15

    Convert List<object> to class of Objects : List<object>

  16. 16

    Convert list to array in Java

  17. 17

    Json array to a list of object

  18. 18

    How to convert java Object list to JSON and show them via AJAX

  19. 19

    Convert a JSON of different type of objects into java List object

  20. 20

    Convert pojo (list of object) to json in java using jackson

  21. 21

    Convert Json to List Java

  22. 22

    Convert an object into list or array MVC

  23. 23

    Trying to convert List<object> to an array

  24. 24

    java convert POST form array to JSON object or POJO or map

  25. 25

    Convert class object to Java RDD

  26. 26

    Angular convert json to array of object

  27. 27

    Convert JSON object array into string

  28. 28

    How to convert Array into json object?

  29. 29

    convert array to json object in php

HotTag

Archive