有人可以帮助我了解可能导致JsonDeserializer
无法在@RequestBody
上调用的一件事吗?
@RequestMappy(method=POST, value = /InfraSpec)
ResponseEntity<InfraSpec> createInfrastructure(@AuthenticationPrincipal User user, @RequestBody InfraSpec infraSpec)
{
InfraSpec infs = infrRepository.saveAnFlush(infraSpec);
ResponseEntity<InfraSpec> resEntity = new ResponeEntity(infs, HttpStatus.Ok);
return resEntity ;
}
@Entity
@JsonDeserialiser(using= InfraSpecDeserializer)
public Class InfraSpec
{
//....
}
public class InfraSpecDeserializer extends JsonDeserializer<InfraSpec> {
@Override
public InfraSpec deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException, JsonProcessingException
{
InfraSpec ifs = new InfraSpec();
// logic to parse the jsoneNode and populate ifs
return ifs;
}
}
答案 0 :(得分:0)
我对格式错误的帖子和帖子不完整表示歉意。
好消息是我找出了问题:问题在于我使用的是org.codehouse.jackson ......
当我更改我的代码以使用com.fasterxml.jackson时。***按预期调用了JsonDeserializer。