我正在尝试使用chrome headless将我的网页打印成PDF文件.PDf文件没有数据,因为无头chrome在ajax命令完成之前打印它.
关于如何让它等待的任何想法?
这是我目前使用的命令:
chrome --headless http://localhost:8080/banana/key --run-all-compositor-stages-before-draw --print-to-pdf=C:\\tmp\\tmp.pdf
Run Code Online (Sandbox Code Playgroud) 我为杰克逊为某个领域编写了一个自定义反序列化程序(如下).我用这个注释使用它:
@JsonDeserialize(using = TokenTypeDeserializer.class)
TokenType type;
Run Code Online (Sandbox Code Playgroud)
它似乎工作正常,只要我在字段中传递一个值.当我开始测试它时,我null以值为单位通过了该字段.在这种情况下,它忽略了我的自定义反序列化器,跳过它并将其null作为值.这是一个问题,因为当我进入null那个领域时,我有一种独特的行动方式.
当值为时,如何强制它通过我的自定义反序列化程序null?
这是我写的自定义反序列化器:
public static class TokenTypeDeserializer extends StdDeserializer<TokenType> {
public TokenTypeDeserializer() {
this(null);
}
protected TokenTypeDeserializer(Class<?> vc) {
super(vc);
}
@Override
public TokenType deserialize(JsonParser p, DeserializationContext ctxt) throws IOException, JsonProcessingException {
ObjectCodec oc = p.getCodec();
JsonNode node = oc.readTree(p);
String type = node.asText();
TokenType tokenType = TokenType.getTokenTypeFromString(type);
return tokenType;
}
}
Run Code Online (Sandbox Code Playgroud)
我看了一下ObjectMapper代码,看到了这个:
public final Object deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException, JsonProcessingException
{
JsonToken t …Run Code Online (Sandbox Code Playgroud)