Ich verwende Springframeworks in meinem Projekt und für JSON verwenden wir jackson
. Eine Liste sollte auf eine bestimmte Art serialisiert werden, d. H. Sie sollte eine spezifische JSON-Ausgabe haben. Ich folgte den Antworten dieses thread, aber das schlägt fehl.Individuelle Serializer in Springframework
@JsonSerialize(using = UserDataSerializer.class)
List<TestObj> lstTest;
und
public class UserDataSerializer extends StdSerializer<TestObj> {
protected UserDataSerializer(Class<TestObj> t) {
super(t);
}
@Override
public void serialize(TestObj value, JsonGenerator gen, SerializerProvider provider) throws IOException {
gen.writeStartObject();
gen.writeObjectField(value.getName(), value.getValue());
gen.writeEndObject();
}
}
aber leider dieser Ansatz nicht mit einer Ausnahme:
Servlet.service() for servlet [test3backend] in context with path [/test] threw exception [Request processing failed; nested exception is org.springframework.beans.f
actory.UnsatisfiedDependencyException: Error creating bean with name 'me.test.entities.UserDataSerializer': Unsatisfied dependency expressed through constructor paramete
r 0; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'java.lang.Class<me.test.entities.TestObj>' av
ailable: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {}] with root cause
org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'java.lang.Class<at.me.test.entities.TestObj>' available: expected at leas
t 1 bean which qualifies as autowire candidate. Dependency annotations: {}
Irgendwelche Hinweise, wie man richtig in meinem Projekt konfigurieren?
haben Sie Ihre Klasse 'UserDataSerializer' mit '@ Bean' Annotation versehen –