2017-04-08 6 views
0

In meiner API-Antwort habe ich zwei Felder: event_date und event_datetime. event_date gibt ISO-Datum Format und In meiner Android-Klasse, habe ich diese Variable als String Typ. Ich möchte diese Eigenschaft in Jackson ignorieren, da es einen Fehler vom Typ Mismatch auslöst. Beachten Sie, dass ich dieses Feld nur als Antwort ignorieren möchte. Ich möchte dieses Feld als Anfrageparameter verwenden.Android Jackson @ JsonIgnore Eigenschaft

Ich habe @ JsonIgnore Annotation versucht, aber es funktioniert nicht für mich. Gibt es eine andere Möglichkeit, diese Variable in Jackson zu ignorieren?

@JsonIgnore 
private String eventDate; 
private String eventDateTime; 

@JsonIgnore 
public String getEventDate() { 
    return eventDate; 
} 

@JsonProperty("event_date") 
public void setEventDate(String eventDate) { 
    this.eventDate = eventDate; 
} 

@JsonProperty("event_datetime") 
public String getEventDateTime() { 
    return eventDateTime; 
} 

public void setEventDateTime(String eventDateTime) { 
    this.eventDateTime = eventDateTime; 
} 

Antwort

-2

Das geschieht, weil Sie die @JsonIgnore von org.fasterxml.jackson

Ihre Import ersetzen verwenden:

import org.fasterxml.jackson.annotate.JsonIgnore; 

zu

import org.codehaus.jackson.annotate.JsonIgnore; 
+0

Ich habe verwendet ** com.fasterxml.jackson.core: jackson-Anmerkungen: 2.8.3 ** Bibliothek. also kann ich nicht importieren die Klasse, die Sie angegeben haben –

+0

org.codehaus.jackson wird in Ihrem Projekt standardmäßig sein, wenn Sie Trikot verwenden –

0

die @JsonProperty("event_date") entfernen. Ich denke, das verursacht das Problem.

+0

Ich muss dies verwenden, weil mein Name der Eigenschaft ist ** event_date ** und nicht ** eventDate ** –

+0

Aber Sie möchten es ignorieren. Wie kommt es, dass du es benutzt? – Tarlog

+0

Ich wollte es nur als Antwort ignorieren. Ich verwende dieses Feld als Anfrageparameter. Wie auch immer, ich habe die Lösung dafür gefunden. Danke für deine Antwort :) –

Verwandte Themen