Hi
I'm developing a simple REST service. it receives a type, and returns a list of POJOs.
Simple, straightforward, almost a formality. Untill...
org.codehaus.jackson.map.JsonMappingException: No serializer found for class com
.sac.pc.jira.rest.dto.Project and no properties discovered to create BeanSeriali
zer (to avoid exception, disable SerializationConfig.Feature.FAIL_ON_EMPTY_BEANS
) )
at org.codehaus.jackson.map.ser.impl.UnknownSerializer.failForEmpty(Unkn
ownSerializer.java:52)
at org.codehaus.jackson.map.ser.impl.UnknownSerializer.serialize(Unknown
Serializer.java:25)
at org.codehaus.jackson.map.ser.std.ObjectArraySerializer.serializeConte
nts(ObjectArraySerializer.java:123)
at org.codehaus.jackson.map.ser.std.ObjectArraySerializer.serializeConte
nts(ObjectArraySerializer.java:29)
at org.codehaus.jackson.map.ser.std.StdArraySerializers$ArraySerializerB
ase.serialize(StdArraySerializers.java:56)
at org.codehaus.jackson.map.ser.StdSerializerProvider._serializeValue(St
dSerializerProvider.java:610)
at org.codehaus.jackson.map.ser.StdSerializerProvider.serializeValue(Std
SerializerProvider.java:256)
at org.codehaus.jackson.map.ObjectMapper.writeValue(ObjectMapper.java:16
04)
at org.codehaus.jackson.jaxrs.JacksonJsonProvider.writeTo(JacksonJsonPro
vider.java:558)
at com.sun.jersey.spi.container.ContainerResponse.write(ContainerRespons
e.java:306)
(truncated)
This is the service:
@GET
@Path("/builds/{type}")
public Response getBuilds(final @PathParam("type") String type) {
logger.debug("type: {}", type);
final List<Project> result = builds.get(type);
logger.debug("returning: {}", result);
return (result != null) ?
Response.ok(result).build() :
Response.status(Response.Status.NOT_FOUND).build();
}
and this is the POJO:
@JsonAutoDetect
public class Project implements Serializable{
private static final long serialVersionUID = 1L;
private final String key;
private final String name;
public Project(final String key, final String name) {
this.key = key;
this.name = name;
}
@JsonProperty
public String getKey() {
return key;
}
@JsonProperty
public String getName() {
return name;
}
Can anybody tell me why is this class "empty"?
Thanks in advance
Alied