I get com.google.gson.internal.bind.DateTypeAdapter.deserializeToDate(DateTypeAdapter.java:81) error

691 views
Skip to first unread message

Peter Marcotte

unread,
Feb 16, 2014, 9:03:58 AM2/16/14
to googl...@googlegroups.com
And my message deserializer has all date processing removed. The json has a date field however i don't care about i now and don't want to process, therefore I am surprised I get this exception, anyone point me to what I am doing or not doing here?

I am using the 2.2.4 flavor of the java file.

Any pointers is greatly appreciated.

class MessagesDeserializer implements JsonDeserializer<Messages> {
     
        @Override
        public Messages deserialize(JsonElement json,
                java.lang.reflect.Type typeOfT, JsonDeserializationContext context)
                throws JsonParseException {
            // TODO Auto-generated method stub
            final JsonObject jsonObject = json.getAsJsonObject();
            Messages message = new Messages();
   
            message.setTitle(jsonObject.get("title").getAsString());           
            message.setBody(jsonObject.get("body").getAsString());
            message.setUrl(jsonObject.get("url").getAsString());
            message.setPermalinkUrl(jsonObject.get("permalink-url").getAsString());
            message.setAction(jsonObject.get("action").getAsString());
            message.setExternalUrl(jsonObject.get("external_url").getAsString());
            message.setIcon(jsonObject.get("icon").getAsString());
            message.setId(jsonObject.get("id").getAsString());
            message.setLikable(jsonObject.get("likeable").getAsBoolean());
             
    /*        String dateStr = jsonObject.get("last_interacted_at").getAsString();
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm'+'ss:ss");
           
            try {
                message.setLastInteractedAt(sdf.parse(dateStr));         
            } catch (ParseException e) {
                e.printStackTrace();
            }
           
            dateStr = jsonObject.get("created_at").getAsString();
            sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ");
           
            try {
                message.setCreateAt(sdf.parse(dateStr));         
            } catch (ParseException e) {
                e.printStackTrace();
            }
    */
            message.setPlayerUrl(jsonObject.get("player_url").getAsString());
            message.setThumbnailUrl(jsonObject.get("thumbnail_url").getAsString());
            message.setPlayerParams(jsonObject.get("player_params").getAsString());
            User user = context.deserialize(jsonObject.get("user"), User.class);
            message.setUser(user);
            Groupd group = context.deserialize(jsonObject.get("group"), Groupd.class);
            message.setGroup(group);
            List<Groups> groups = context.deserialize(jsonObject.get("groups"), Groups[].class);
            message.setGroups(groups);
            Source source = context.deserialize(jsonObject.get("source"), Source.class);
            message.setSource(source);
            List<Attachments> attachements = context.deserialize(jsonObject.get("attachments"), Attachments[].class);
            message.setAttachements(attachements);       
            List<Comments> comments = context.deserialize(jsonObject.get("comments"), Comments[].class);
            message.setComments(comments);
            message.setCommentsCount(jsonObject.get("comments_count").getAsInt());
            List<Likes> likes = context.deserialize(jsonObject.get("likes"), Likes[].class);
            message.setLikes(likes);
            message.setLikesCount(jsonObject.get("likes_count").getAsInt());
            List<Media_files> media_files = context.deserialize(jsonObject.get("media_files"), Media_files[].class);
            message.setMediaFiles(media_files);
            List<Tags> tags = context.deserialize(jsonObject.get("tags"), Tags[].class);
            message.setTags(tags);
            Flag flags = context.deserialize(jsonObject.get("flags"), Flag.class);
            message.setFlags(flags);
            message.setInOriginStream(jsonObject.get("in_origin_stream").getAsBoolean());
           
           
            return message;
        }
    }
Reply all
Reply to author
Forward
0 new messages