Ich versuche, msgpack binary dataformat als Inhaltsverhandlungsoption hinzuzufügen. Die Json und Xml funktioniert gut aus der Box. Ich habe versucht, Jackson msgpack mapper als Bean hinzufügen, wie in this examle, aber es funktioniert nicht. Wenn ich Accept: application/x-msgpack
Header zu meiner Anfrage hinzufügen 406 Not Acceptable
Code zurückgegeben wird.Hinzufügen von msgpack als Inhaltsverhandlung zu Spring mvc + boot
Hier ist meine WebConfig:
@Configuration
@EnableWebMvc
@SuppressWarnings("unused")
public class WebConfig extends WebMvcConfigurerAdapter {
@Bean
public HttpMessageConverter messagePackMessageConverter() {
return new AbstractJackson2HttpMessageConverter(
new ObjectMapper(new MessagePackFactory()),
new MediaType("application", "x-msgpack")) {
};
}
@Override
public void configureContentNegotiation(ContentNegotiationConfigurer configurer) {
configurer.favorPathExtension(false)
.ignoreAcceptHeader(false)
.favorParameter(true)
.defaultContentType(MediaType.APPLICATION_JSON)
.mediaType("xml", MediaType.APPLICATION_XML)
.mediaType("msgpack", new MediaType("application", "x-msgpack"));
}
}
ich keine besonderen Anmerkungen zu meinen DTO Objekte hinzugefügt haben, und mein Controller ist nichts aus dem Üblichen auch nicht.
Meine msgpack Abhängigkeit ist:
org.msgpack:jackson-dataformat-msgpack:0.7.0-p3