本文整理汇总了Java中com.fasterxml.jackson.databind.DeserializationContext.reportInputMismatch方法的典型用法代码示例。如果您正苦于以下问题:Java DeserializationContext.reportInputMismatch方法的具体用法?Java DeserializationContext.reportInputMismatch怎么用?Java DeserializationContext.reportInputMismatch使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.fasterxml.jackson.databind.DeserializationContext
的用法示例。
在下文中一共展示了DeserializationContext.reportInputMismatch方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: validateRevisionNumber
import com.fasterxml.jackson.databind.DeserializationContext; //导入方法依赖的package包/类
private static void validateRevisionNumber(DeserializationContext ctx, JsonNode node,
String type, boolean zeroAllowed) throws JsonMappingException {
if (node == null) {
ctx.reportInputMismatch(Revision.class, "missing %s revision number", type);
// Should never reach here.
throw new Error();
}
if (!node.canConvertToInt() || !zeroAllowed && node.intValue() == 0) {
ctx.reportInputMismatch(Revision.class,
"A %s revision number must be %s integer.",
type, zeroAllowed ? "an" : "a non-zero");
// Should never reach here.
throw new Error();
}
}
示例2: deserialize
import com.fasterxml.jackson.databind.DeserializationContext; //导入方法依赖的package包/类
@Override
public SimpleSession deserialize(JsonParser p, DeserializationContext ctxt) throws IOException {
try (ByteArrayInputStream bais =
new ByteArrayInputStream(Base64.getDecoder().decode(p.readValueAs(String.class)));
ObjectInputStream ois = new ObjectInputStream(bais)) {
return (SimpleSession) ois.readObject();
} catch (ClassNotFoundException e) {
ctxt.reportInputMismatch(SimpleSession.class, "failed to deserialize a session: " + e);
throw new Error(); // Should never reach here
}
}
示例3: deserialize
import com.fasterxml.jackson.databind.DeserializationContext; //导入方法依赖的package包/类
@Override
public CommitMessageDto deserialize(JsonParser p, DeserializationContext ctxt) throws IOException {
final JsonNode jsonNode = p.readValueAsTree();
final JsonNode summary = jsonNode.get("summary");
if (summary == null || summary.textValue() == null) {
ctxt.reportInputMismatch(CommitMessageDto.class, "commit message should have a summary.");
// should never reach here
throw new Error();
}
final String detail = jsonNode.get("detail") == null ? "" : jsonNode.get("detail").textValue();
final JsonNode markupNode = jsonNode.get("markup");
final Markup markup = Markup.parse(markupNode == null ? "unknown" : markupNode.textValue());
return new CommitMessageDto(summary.textValue(), detail, markup);
}
示例4: fail
import com.fasterxml.jackson.databind.DeserializationContext; //导入方法依赖的package包/类
private static ServerPort fail(DeserializationContext ctx, JsonNode root) throws JsonMappingException {
ctx.reportInputMismatch(ServerPort.class, "invalid server port information: %s", root);
throw new Error(); // Should never reach here.
}
示例5: deserialize
import com.fasterxml.jackson.databind.DeserializationContext; //导入方法依赖的package包/类
@Override
public Revision deserialize(JsonParser p, DeserializationContext ctx) throws IOException {
final JsonNode node = p.readValueAsTree();
if (node.isNumber()) {
validateRevisionNumber(ctx, node, "major", false);
return new Revision(node.intValue());
}
if (node.isTextual()) {
try {
return new Revision(node.textValue());
} catch (IllegalArgumentException e) {
ctx.reportInputMismatch(Revision.class, e.getMessage());
// Should never reach here.
throw new Error();
}
}
if (!node.isObject()) {
ctx.reportInputMismatch(Revision.class,
"A revision must be a non-zero integer or " +
"an object that contains \"major\" and \"minor\" properties.");
// Should never reach here.
throw new Error();
}
final JsonNode majorNode = node.get("major");
final JsonNode minorNode = node.get("minor");
final int major;
validateRevisionNumber(ctx, majorNode, "major", false);
major = majorNode.intValue();
if (minorNode != null) {
validateRevisionNumber(ctx, minorNode, "minor", true);
if (minorNode.intValue() != 0) {
ctx.reportInputMismatch(Revision.class,
"A revision must not have a non-zero \"minor\" property.");
}
}
return new Revision(major);
}