Ich habe eine einzige @RequestMapping
, die einen benutzerdefinierten MIME-Typ verbraucht. Die Anforderung verwendet eine ObjectMapper
Bean, die in definiert ist, um die JsonParser.Feature.ALLOW_BACKSLASH_ESCAPING_ANY_CHARACTER
zu aktivieren.Verschiedene jackson ObjectMapper für separate RequestMapping verwenden
Diese Funktion ermöglicht es typischerweise ungültig json (Schrägstriche als Nicht-Sonderzeichen Behandlung) verbraucht werden, was eine Voraussetzung dieser besonderen @RequestMapping
ist, damit Polylinien Google verschlüsselt direkt analysiert werden. Dies bedeutet jedoch, dass dieser ObjectMapper jetzt für ALL meiner @RequestMapping
verwendet wird, wenn es wirklich nur eine Voraussetzung ist.
Gibt es eine Möglichkeit, den ObjectMapper, der für jede @Controller
oder @RequestMapping
verwendet wird, zu unterscheiden?
Object Mapper Bean
@Bean
public ObjectMapper objectMapper() {
Jackson2ObjectMapperBuilder builder = new Jackson2ObjectMapperBuilder();
builder.featuresToEnable(
JsonParser.Feature.ALLOW_BACKSLASH_ESCAPING_ANY_CHARACTER);
return builder.build();
}
Anfrage Mapping Interface-Methode
@ApiOperation(value = "Returns the toll cost breakdown for a journey", notes = "", response = TotalCost.class, tags={ "pricing", })
@ApiResponses(value = {
@ApiResponse(code = 200, message = "successful operation", response = TotalCost.class) })
@RequestMapping(value = "/pricing/journeyCost",
produces = { "application/json" },
consumes = { "application/vnd.toll-pricing+json" },
method = RequestMethod.POST)
ResponseEntity<TotalCost> getTollBreakdownFromEncodedPoly(@ApiParam(value = "Request object representing the journey" ,required=true) @RequestBody Journey body);
Haben Sie nur für die individuelle Handhabung wollen die Journey-Schnittstelle? –
@lexknuther im Wesentlichen ja. – Jags
Und welche Version von Jackson benutzt du? –