Java 类org.springframework.http.converter.json.Jackson2ObjectMapperBuilder 实例源码

项目:spring-boot-concourse    文件:JacksonAutoConfigurationTests.java   
@Test
public void defaultObjectMapperBuilder() throws Exception {
    this.context.register(JacksonAutoConfiguration.class);
    this.context.refresh();
    Jackson2ObjectMapperBuilder builder = this.context
            .getBean(Jackson2ObjectMapperBuilder.class);
    ObjectMapper mapper = builder.build();
    assertThat(MapperFeature.DEFAULT_VIEW_INCLUSION.enabledByDefault()).isTrue();
    assertThat(mapper.getDeserializationConfig()
            .isEnabled(MapperFeature.DEFAULT_VIEW_INCLUSION)).isFalse();
    assertThat(MapperFeature.DEFAULT_VIEW_INCLUSION.enabledByDefault()).isTrue();
    assertThat(mapper.getDeserializationConfig()
            .isEnabled(MapperFeature.DEFAULT_VIEW_INCLUSION)).isFalse();
    assertThat(mapper.getSerializationConfig()
            .isEnabled(MapperFeature.DEFAULT_VIEW_INCLUSION)).isFalse();
    assertThat(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES.enabledByDefault())
            .isTrue();
    assertThat(mapper.getDeserializationConfig()
            .isEnabled(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES)).isFalse();
}
项目:cas-5.1.0    文件:DefaultAuthenticationTests.java   
@Before
public void setUp() throws Exception {
    mapper = Jackson2ObjectMapperBuilder.json()
            .featuresToDisable(DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE)
            .featuresToDisable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS)
            .build();
    mapper.findAndRegisterModules();
}
项目:jigsaw-payment    文件:ProtobufConfiguration.java   
@Bean
public Jackson2ObjectMapperBuilderCustomizer configProtobufSerializer() {
    return new Jackson2ObjectMapperBuilderCustomizer() {

        @Override
        public void customize(
                Jackson2ObjectMapperBuilder builder) {
            builder.serializerByType(Message.class, new JsonSerializer<Message>(){

                @Override
                public void serialize(Message message, JsonGenerator generator,
                        SerializerProvider provider) throws IOException {
                    if(message == null)
                        return;
                    JsonJacksonFormat format = new JsonJacksonFormat();
                    format.print(message, generator);
                }});

        }
    };
}
项目:rug-resolver    文件:MetadataWriter.java   
private static ObjectMapper objectMapper(Format format) {
    ObjectMapper mapper = null;
    if (format == Format.YAML) {
        mapper = new ObjectMapper(new YAMLFactory());
    }
    else {
        mapper = new ObjectMapper();
    }
    new Jackson2ObjectMapperBuilder()
            .modulesToInstall(new MetadataModule(), new DefaultScalaModule())
            .serializationInclusion(JsonInclude.Include.NON_NULL)
            .serializationInclusion(JsonInclude.Include.NON_ABSENT)
            .serializationInclusion(JsonInclude.Include.NON_EMPTY)
            .featuresToEnable(SerializationFeature.INDENT_OUTPUT)
            .featuresToDisable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS,
                    DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE,
                    DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES)
            .configure(mapper);
    return mapper;
}
项目:citrus-admin    文件:Project.java   
/**
 * Load settings from project info file.
 */
public void loadSettings() {
    try (FileInputStream fileInput = new FileInputStream(getProjectInfoFile())) {
        String projectInfo = FileUtils.readToString(fileInput);

        // support legacy build configuration
        projectInfo = projectInfo.replaceAll("com\\.consol\\.citrus\\.admin\\.model\\.build\\.maven\\.MavenBuildConfiguration", MavenBuildContext.class.getName());

        Project project = Jackson2ObjectMapperBuilder.json().build().readerFor(Project.class).readValue(projectInfo);

        setName(project.getName());
        setDescription(project.getDescription());
        setSettings(project.getSettings());
        setVersion(project.getVersion());
    } catch (IOException e) {
        throw new CitrusRuntimeException("Failed to read project settings file", e);
    }
}
项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:JacksonAutoConfiguration.java   
@Override
public void customize(Jackson2ObjectMapperBuilder builder) {

    if (this.jacksonProperties.getDefaultPropertyInclusion() != null) {
        builder.serializationInclusion(
                this.jacksonProperties.getDefaultPropertyInclusion());
    }
    if (this.jacksonProperties.getTimeZone() != null) {
        builder.timeZone(this.jacksonProperties.getTimeZone());
    }
    configureFeatures(builder, this.jacksonProperties.getDeserialization());
    configureFeatures(builder, this.jacksonProperties.getSerialization());
    configureFeatures(builder, this.jacksonProperties.getMapper());
    configureFeatures(builder, this.jacksonProperties.getParser());
    configureFeatures(builder, this.jacksonProperties.getGenerator());
    configureDateFormat(builder);
    configurePropertyNamingStrategy(builder);
    configureModules(builder);
    configureLocale(builder);
}
项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:JacksonAutoConfiguration.java   
private void configureDateFormat(Jackson2ObjectMapperBuilder builder) {
    // We support a fully qualified class name extending DateFormat or a date
    // pattern string value
    String dateFormat = this.jacksonProperties.getDateFormat();
    if (dateFormat != null) {
        try {
            Class<?> dateFormatClass = ClassUtils.forName(dateFormat, null);
            builder.dateFormat(
                    (DateFormat) BeanUtils.instantiateClass(dateFormatClass));
        }
        catch (ClassNotFoundException ex) {
            SimpleDateFormat simpleDateFormat = new SimpleDateFormat(
                    dateFormat);
            // Since Jackson 2.6.3 we always need to set a TimeZone (see
            // gh-4170). If none in our properties fallback to the Jackson's
            // default
            TimeZone timeZone = this.jacksonProperties.getTimeZone();
            if (timeZone == null) {
                timeZone = new ObjectMapper().getSerializationConfig()
                        .getTimeZone();
            }
            simpleDateFormat.setTimeZone(timeZone);
            builder.dateFormat(simpleDateFormat);
        }
    }
}
项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:JacksonAutoConfiguration.java   
private void configurePropertyNamingStrategy(
        Jackson2ObjectMapperBuilder builder) {
    // We support a fully qualified class name extending Jackson's
    // PropertyNamingStrategy or a string value corresponding to the constant
    // names in PropertyNamingStrategy which hold default provided
    // implementations
    String strategy = this.jacksonProperties.getPropertyNamingStrategy();
    if (strategy != null) {
        try {
            configurePropertyNamingStrategyClass(builder,
                    ClassUtils.forName(strategy, null));
        }
        catch (ClassNotFoundException ex) {
            configurePropertyNamingStrategyField(builder, strategy);
        }
    }
}
项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:JacksonAutoConfiguration.java   
private void configurePropertyNamingStrategyField(
        Jackson2ObjectMapperBuilder builder, String fieldName) {
    // Find the field (this way we automatically support new constants
    // that may be added by Jackson in the future)
    Field field = ReflectionUtils.findField(PropertyNamingStrategy.class,
            fieldName, PropertyNamingStrategy.class);
    Assert.notNull(field, "Constant named '" + fieldName + "' not found on "
            + PropertyNamingStrategy.class.getName());
    try {
        builder.propertyNamingStrategy(
                (PropertyNamingStrategy) field.get(null));
    }
    catch (Exception ex) {
        throw new IllegalStateException(ex);
    }
}
项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:JacksonAutoConfigurationTests.java   
@Test
public void defaultObjectMapperBuilder() throws Exception {
    this.context.register(JacksonAutoConfiguration.class);
    this.context.refresh();
    Jackson2ObjectMapperBuilder builder = this.context
            .getBean(Jackson2ObjectMapperBuilder.class);
    ObjectMapper mapper = builder.build();
    assertThat(MapperFeature.DEFAULT_VIEW_INCLUSION.enabledByDefault()).isTrue();
    assertThat(mapper.getDeserializationConfig()
            .isEnabled(MapperFeature.DEFAULT_VIEW_INCLUSION)).isFalse();
    assertThat(MapperFeature.DEFAULT_VIEW_INCLUSION.enabledByDefault()).isTrue();
    assertThat(mapper.getDeserializationConfig()
            .isEnabled(MapperFeature.DEFAULT_VIEW_INCLUSION)).isFalse();
    assertThat(mapper.getSerializationConfig()
            .isEnabled(MapperFeature.DEFAULT_VIEW_INCLUSION)).isFalse();
    assertThat(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES.enabledByDefault())
            .isTrue();
    assertThat(mapper.getDeserializationConfig()
            .isEnabled(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES)).isFalse();
}
项目:spring-boot-concourse    文件:JacksonAutoConfiguration.java   
@Override
public void customize(Jackson2ObjectMapperBuilder builder) {

    if (this.jacksonProperties.getDefaultPropertyInclusion() != null) {
        builder.serializationInclusion(
                this.jacksonProperties.getDefaultPropertyInclusion());
    }
    if (this.jacksonProperties.getTimeZone() != null) {
        builder.timeZone(this.jacksonProperties.getTimeZone());
    }
    configureFeatures(builder, this.jacksonProperties.getDeserialization());
    configureFeatures(builder, this.jacksonProperties.getSerialization());
    configureFeatures(builder, this.jacksonProperties.getMapper());
    configureFeatures(builder, this.jacksonProperties.getParser());
    configureFeatures(builder, this.jacksonProperties.getGenerator());
    configureDateFormat(builder);
    configurePropertyNamingStrategy(builder);
    configureModules(builder);
    configureLocale(builder);
}
项目:spring-boot-concourse    文件:JacksonAutoConfiguration.java   
private void configureDateFormat(Jackson2ObjectMapperBuilder builder) {
    // We support a fully qualified class name extending DateFormat or a date
    // pattern string value
    String dateFormat = this.jacksonProperties.getDateFormat();
    if (dateFormat != null) {
        try {
            Class<?> dateFormatClass = ClassUtils.forName(dateFormat, null);
            builder.dateFormat(
                    (DateFormat) BeanUtils.instantiateClass(dateFormatClass));
        }
        catch (ClassNotFoundException ex) {
            SimpleDateFormat simpleDateFormat = new SimpleDateFormat(
                    dateFormat);
            // Since Jackson 2.6.3 we always need to set a TimeZone (see
            // gh-4170). If none in our properties fallback to the Jackson's
            // default
            TimeZone timeZone = this.jacksonProperties.getTimeZone();
            if (timeZone == null) {
                timeZone = new ObjectMapper().getSerializationConfig()
                        .getTimeZone();
            }
            simpleDateFormat.setTimeZone(timeZone);
            builder.dateFormat(simpleDateFormat);
        }
    }
}
项目:spring-boot-concourse    文件:JacksonAutoConfiguration.java   
private void configurePropertyNamingStrategy(
        Jackson2ObjectMapperBuilder builder) {
    // We support a fully qualified class name extending Jackson's
    // PropertyNamingStrategy or a string value corresponding to the constant
    // names in PropertyNamingStrategy which hold default provided
    // implementations
    String strategy = this.jacksonProperties.getPropertyNamingStrategy();
    if (strategy != null) {
        try {
            configurePropertyNamingStrategyClass(builder,
                    ClassUtils.forName(strategy, null));
        }
        catch (ClassNotFoundException ex) {
            configurePropertyNamingStrategyField(builder, strategy);
        }
    }
}
项目:spring-boot-concourse    文件:JacksonAutoConfiguration.java   
private void configurePropertyNamingStrategyField(
        Jackson2ObjectMapperBuilder builder, String fieldName) {
    // Find the field (this way we automatically support new constants
    // that may be added by Jackson in the future)
    Field field = ReflectionUtils.findField(PropertyNamingStrategy.class,
            fieldName, PropertyNamingStrategy.class);
    Assert.notNull(field, "Constant named '" + fieldName + "' not found on "
            + PropertyNamingStrategy.class.getName());
    try {
        builder.propertyNamingStrategy(
                (PropertyNamingStrategy) field.get(null));
    }
    catch (Exception ex) {
        throw new IllegalStateException(ex);
    }
}
项目:angularjs-springmvc-sample-boot    文件:Jackson2ObjectMapperConfig.java   
@Bean
public Jackson2ObjectMapperBuilder objectMapperBuilder(JsonComponentModule jsonComponentModule) {

    Jackson2ObjectMapperBuilder builder = new Jackson2ObjectMapperBuilder();
        builder
//                .serializerByType(ZonedDateTime.class, new JsonSerializer<ZonedDateTime>() {
//                    @Override
//                    public void serialize(ZonedDateTime zonedDateTime, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException, JsonProcessingException {
//                        jsonGenerator.writeString(DateTimeFormatter.ISO_ZONED_DATE_TIME.format(zonedDateTime));
//                    }
//                })
            .serializationInclusion(JsonInclude.Include.NON_EMPTY)
            .featuresToDisable(
                    SerializationFeature.WRITE_DATES_AS_TIMESTAMPS,
                    DeserializationFeature.FAIL_ON_IGNORED_PROPERTIES,
                    DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES
            )
            .featuresToEnable(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
            .indentOutput(true)
            .modulesToInstall(jsonComponentModule);

    return builder;
}
项目:contestparser    文件:JacksonAutoConfiguration.java   
@Bean
@ConditionalOnMissingBean(Jackson2ObjectMapperBuilder.class)
public Jackson2ObjectMapperBuilder jacksonObjectMapperBuilder() {
    Jackson2ObjectMapperBuilder builder = new Jackson2ObjectMapperBuilder();
    builder.applicationContext(this.applicationContext);
    if (this.jacksonProperties.getSerializationInclusion() != null) {
        builder.serializationInclusion(
                this.jacksonProperties.getSerializationInclusion());
    }
    if (this.jacksonProperties.getTimeZone() != null) {
        builder.timeZone(this.jacksonProperties.getTimeZone());
    }
    configureFeatures(builder, this.jacksonProperties.getDeserialization());
    configureFeatures(builder, this.jacksonProperties.getSerialization());
    configureFeatures(builder, this.jacksonProperties.getMapper());
    configureFeatures(builder, this.jacksonProperties.getParser());
    configureFeatures(builder, this.jacksonProperties.getGenerator());
    configureDateFormat(builder);
    configurePropertyNamingStrategy(builder);
    configureModules(builder);
    configureLocale(builder);
    return builder;
}
项目:contestparser    文件:JacksonAutoConfiguration.java   
private void configurePropertyNamingStrategy(
        Jackson2ObjectMapperBuilder builder) {
    // We support a fully qualified class name extending Jackson's
    // PropertyNamingStrategy or a string value corresponding to the constant
    // names in PropertyNamingStrategy which hold default provided implementations
    String strategy = this.jacksonProperties.getPropertyNamingStrategy();
    if (strategy != null) {
        try {
            configurePropertyNamingStrategyClass(builder,
                    ClassUtils.forName(strategy, null));
        }
        catch (ClassNotFoundException ex) {
            configurePropertyNamingStrategyField(builder, strategy);
        }
    }
}
项目:contestparser    文件:JacksonAutoConfigurationTests.java   
@Test
public void defaultObjectMapperBuilder() throws Exception {
    this.context.register(JacksonAutoConfiguration.class);
    this.context.refresh();
    Jackson2ObjectMapperBuilder builder = this.context
            .getBean(Jackson2ObjectMapperBuilder.class);
    ObjectMapper mapper = builder.build();
    assertTrue(MapperFeature.DEFAULT_VIEW_INCLUSION.enabledByDefault());
    assertFalse(mapper.getDeserializationConfig()
            .isEnabled(MapperFeature.DEFAULT_VIEW_INCLUSION));
    assertTrue(MapperFeature.DEFAULT_VIEW_INCLUSION.enabledByDefault());
    assertFalse(mapper.getDeserializationConfig()
            .isEnabled(MapperFeature.DEFAULT_VIEW_INCLUSION));
    assertFalse(mapper.getSerializationConfig()
            .isEnabled(MapperFeature.DEFAULT_VIEW_INCLUSION));
    assertTrue(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES.enabledByDefault());
    assertFalse(mapper.getDeserializationConfig()
            .isEnabled(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES));
}
项目:egd-web    文件:JacksonConfiguration.java   
@Bean
Jackson2ObjectMapperBuilder jackson2ObjectMapperBuilder() {
    JavaTimeModule module = new JavaTimeModule();
    module.addSerializer(OffsetDateTime.class, JSR310DateTimeSerializer.INSTANCE);
    module.addSerializer(ZonedDateTime.class, JSR310DateTimeSerializer.INSTANCE);
    module.addSerializer(LocalDateTime.class, JSR310DateTimeSerializer.INSTANCE);
    module.addSerializer(Instant.class, JSR310DateTimeSerializer.INSTANCE);
    module.addDeserializer(LocalDate.class, JSR310LocalDateDeserializer.INSTANCE);

    return new Jackson2ObjectMapperBuilder()
        .featuresToDisable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS)
        .serializationInclusion(JsonInclude.Include.NON_NULL)
        .findModulesViaServiceLoader(true)
        //.featuresToEnable(SerializationFeature.WRITE_ENUMS_USING_TO_STRING)
        //.featuresToEnable(DeserializationFeature.READ_ENUMS_USING_TO_STRING)
        .modulesToInstall(module);
}
项目:bookshop-api    文件:AbstractWebConfig.java   
@Override
public void configureMessageConverters( final List<HttpMessageConverter<?>> converters ) {

    final ByteArrayHttpMessageConverter byteArrayHttpMessageConverter = new ByteArrayHttpMessageConverter();
    byteArrayHttpMessageConverter.setSupportedMediaTypes( Arrays.asList( MediaType.APPLICATION_OCTET_STREAM ) );
    converters.add( byteArrayHttpMessageConverter );

    final ObjectMapper mapper = Jackson2ObjectMapperBuilder.json()
     .serializationInclusion(JsonInclude.Include.NON_NULL) // Don’t include null values
     .featuresToDisable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS) //ISODate
     .build();

    final MappingJackson2HttpMessageConverter jsonConverter = new MappingJackson2HttpMessageConverter();
    jsonConverter.setSupportedMediaTypes( Arrays.asList( MediaType.APPLICATION_JSON ) );
    jsonConverter.setObjectMapper( mapper );
    converters.add( jsonConverter );

    super.configureMessageConverters( converters );
}
项目:bookshop-api    文件:BookControllerTest.java   
@Test
public void testCreateBook() throws Exception {

    Book book = buildBook(3L, Currency.EUR, 20.50, Arrays.asList(buildAuthor(1L, toDate("1978-09-25"), null)));
    book.setId(null);
    Book savedBook = buildBook(3L, Currency.EUR, 20.50, Arrays.asList(buildAuthor(1L, toDate("1978-09-25"), null)));
    when(bookService.createNew(book)).thenReturn(savedBook);

    this.mockMvc.perform( post( "/api/books" ).accept( MediaType.parseMediaType( "application/json;charset=UTF-8" ) )
            .content(Jackson2ObjectMapperBuilder.json().build().writeValueAsString(book))
            .contentType(MediaType.APPLICATION_JSON))
        .andDo( print() )
        .andExpect( status().isCreated() )
        .andExpect( content().contentType( "application/json;charset=UTF-8" ) )
        .andExpect( jsonPath( "$.id" ).value( savedBook.getId().intValue() ) )
        .andExpect( jsonPath( "$.title" ).value( savedBook.getTitle() ) )
        .andExpect( jsonPath( "$.description" ).value( savedBook.getDescription() ) );

    verify(bookService).createNew(book);
}
项目:bookshop-api    文件:BookControllerTest.java   
@Test
public void testCreateBookNotValid() throws Exception {

    Book book = buildBook(3L, null, 20.50, Arrays.asList(buildAuthor(1L, toDate("1978-09-25"), null)));
    book.setId(null);
    // set mandatory field to null
    book.setTitle(null);
    book.setIsbn("ssss");

    ImmutableMap.of("field","isbn","rejectedValue","ssss","message","ISBN not valid");
    this.mockMvc.perform( post( "/api/books" ).accept( MediaType.parseMediaType( "application/json;charset=UTF-8" ) )
            .content(Jackson2ObjectMapperBuilder.json().build().writeValueAsString(book))
            .contentType(MediaType.APPLICATION_JSON))
        .andDo( print() )
        .andExpect( status().isBadRequest() )
        .andExpect( content().contentType( "application/json;charset=UTF-8" ) )
        .andExpect( jsonPath( "$.code" ).value( ErrorCode.VALIDATION_ERROR ) )
        .andExpect( jsonPath( "$.message" ).value( "Validation Failure" ) )
        .andExpect( jsonPath( "$.violations", hasSize(3)) )
        .andExpect( jsonPath( "$.violations[?(@.field == 'isbn' && @.code == 'error.validation.isbn.notvalid' && @.rejectedValue == 'ssss')]").exists())
        .andExpect( jsonPath( "$.violations[?(@.field == 'title' && @.code == 'error.validation.title.notnull')]").exists())
        .andExpect( jsonPath( "$.violations[?(@.field == 'currency' && @.code == 'error.validation.currency.notnull')]").exists());
}
项目:bookshop-api    文件:BookControllerTest.java   
@Test
public void testCreateBookInternalServerError() throws Exception {

    Book book = buildBook(3L, Currency.EUR, 20.50, Arrays.asList(buildAuthor(1L, toDate("1978-09-25"), null)));
    book.setId(null);

    when(bookService.createNew(book)).thenThrow(new BookServiceException());

    this.mockMvc.perform( post( "/api/books" ).accept( MediaType.parseMediaType( "application/json;charset=UTF-8" ) )
        .content(Jackson2ObjectMapperBuilder.json().build().writeValueAsString(book))
        .contentType(MediaType.APPLICATION_JSON))
           .andDo( print() )
        .andExpect( jsonPath("$.code").value("GENERIC_ERROR")) ;

       verify(bookService).createNew(book);
}
项目:yona-server    文件:CoreConfiguration.java   
@Bean
@Primary
ObjectMapper objectMapper()
{
    // HATEOAS disables the default Spring configuration options described at
    // https://docs.spring.io/spring-boot/docs/current/reference/html/howto-spring-mvc.html#howto-customize-the-jackson-objectmapper
    // See https://github.com/spring-projects/spring-hateoas/issues/333.
    // We fix this by applying the Spring configurator on the HATEOAS object mapper
    // See also
    // https://github.com/spring-projects/spring-boot/blob/v1.3.2.RELEASE/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/hateoas/HypermediaAutoConfiguration.java
    // which already seems to do this but does not work
    ObjectMapper springHateoasObjectMapper = beanFactory.getBean(SPRING_HATEOAS_OBJECT_MAPPER, ObjectMapper.class);
    Jackson2ObjectMapperBuilder builder = beanFactory.getBean(Jackson2ObjectMapperBuilder.class);
    builder.configure(springHateoasObjectMapper);

    // By default, Jackson converts dates to UTC. This causes issues when passing inactivity creation requests from the app
    // service to the analysis engine service.
    springHateoasObjectMapper.disable(DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE);

    // This way, the JsonView annotations on the controlers work properly
    springHateoasObjectMapper.enable(MapperFeature.DEFAULT_VIEW_INCLUSION);

    return springHateoasObjectMapper;
}
项目:find    文件:DashboardConfigService.java   
@Autowired
public DashboardConfigService(final JsonDeserializer<TagName> tagNameDeserializer) {
    super(
        "dashboards.json",
        "defaultDashboardsConfigFile.json",
        DashboardConfig.class,
        DashboardConfig.builder().build(),
        new Jackson2ObjectMapperBuilder()
            .mixIn(Widget.class, WidgetMixins.class)
            .mixIn(WidgetDatasource.class, WidgetDatasourceMixins.class)
            .deserializersByType(ImmutableMap.of(TagName.class, tagNameDeserializer))
            .serializersByType(ImmutableMap.of(TagName.class, new TagNameSerializer()))
            .featuresToDisable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS,
                               DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE)
    );
}
项目:find    文件:IdolConfiguration.java   
@SuppressWarnings("SpringJavaAutowiringInspection")
@Bean
@Autowired
@Primary
public ObjectMapper jacksonObjectMapper(
        final Jackson2ObjectMapperBuilder builder,
        final AuthenticationInformationRetriever<?, ?> authenticationInformationRetriever
) {
    final ObjectMapper mapper = builder
            .createXmlMapper(false)
            .mixIn(Authentication.class, IdolAuthenticationMixins.class)
            .mixIn(Widget.class, WidgetMixins.class)
            .mixIn(WidgetDatasource.class, WidgetDatasourceMixins.class)
            .mixIn(QueryRestrictions.class, IdolQueryRestrictionsMixin.class)
            .mixIn(IdolQueryRestrictions.class, IdolQueryRestrictionsMixin.class)
            .featuresToEnable(SerializationFeature.INDENT_OUTPUT)
            .build();

    mapper.setInjectableValues(new InjectableValues.Std().addValue(AuthenticationInformationRetriever.class, authenticationInformationRetriever));

    return mapper;
}
项目:find    文件:FindConfigFileService.java   
protected FindConfigFileService(final FilterProvider filterProvider,
                                final TextEncryptor textEncryptor,
                                final JsonSerializer<FieldPath> fieldPathSerializer,
                                final JsonDeserializer<FieldPath> fieldPathDeserializer) {

    final ObjectMapper objectMapper = new Jackson2ObjectMapperBuilder()
        .featuresToEnable(SerializationFeature.INDENT_OUTPUT)
        .mixIns(customMixins())
        .serializersByType(ImmutableMap.of(FieldPath.class, fieldPathSerializer))
        .deserializersByType(ImmutableMap.of(FieldPath.class, fieldPathDeserializer))
        .createXmlMapper(false)
        .build();

    setConfigFileLocation(CONFIG_FILE_LOCATION);
    setConfigFileName(CONFIG_FILE_NAME);
    setDefaultConfigFile(getDefaultConfigFile());
    setMapper(objectMapper);
    setTextEncryptor(textEncryptor);
    setFilterProvider(filterProvider);
}
项目:find    文件:CustomizationConfigService.java   
protected CustomizationConfigService(
    final String configFileName,
    final String defaultFileName,
    final Class<T> configClass,
    final T emptyConfig,
    final Jackson2ObjectMapperBuilder objectMapperBuilder
) {
    this.configClass = configClass;
    this.emptyConfig = emptyConfig;

    final ObjectMapper objectMapper = objectMapperBuilder
        .featuresToEnable(SerializationFeature.INDENT_OUTPUT)
        .createXmlMapper(false)
        .build();

    setMapper(objectMapper);
    setConfigFileLocation(FindConfigFileService.CONFIG_FILE_LOCATION);
    setConfigFileName(Paths.get(CONFIG_DIRECTORY).resolve(configFileName).toString());
    setDefaultConfigFile('/' + defaultFileName);
}
项目:spring-social-slideshare    文件:JacksonUtils.java   
private static XmlMapper createXmlMapper() {
    return new Jackson2ObjectMapperBuilder()
            // mixins
            .mixIn(Slideshow.class, SlideshowMixIn.class)
            .mixIn(Slideshow.Tag.class, SlideshowMixIn.TagMixin.class)
            .mixIn(Slideshow.RelatedSlideshow.class, SlideshowMixIn.RelatedSlideshowMixin.class)

            .mixIn(GetSlideshowsResponse.class, GetSlideshowsResponseMixin.class)
            .mixIn(SearchSlideshowsResponse.class, SearchSlideshowsResponseMixin.class)
            .mixIn(SearchSlideshowsResponse.MetaInfo.class, SearchSlideshowsResponseMixin.MetaInfoMixin.class)
            .mixIn(SlideshowIdHolder.class, SlideshowIdHolderMixin.class)

            // errors
            .mixIn(SlideShareServiceError.class, SlideShareServiceErrorMixin.class)
            .mixIn(SlideShareServiceError.Message.class, SlideShareServiceErrorMixin.MessageMixin.class)

            .dateFormat(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss zzz"))
            .createXmlMapper(true)
            .build();
}
项目:spring-cloud-aws    文件:QueueMessageHandler.java   
private CompositeMessageConverter createPayloadArgumentCompositeConverter() {
    List<MessageConverter> payloadArgumentConverters = new ArrayList<>();

    if (JACKSON_2_PRESENT) {
        MappingJackson2MessageConverter jacksonMessageConverter = new MappingJackson2MessageConverter();
        jacksonMessageConverter.setObjectMapper(Jackson2ObjectMapperBuilder.json().build());
        jacksonMessageConverter.setSerializedPayloadClass(String.class);
        jacksonMessageConverter.setStrictContentTypeMatch(true);
        payloadArgumentConverters.add(jacksonMessageConverter);
    }

    ObjectMessageConverter objectMessageConverter = new ObjectMessageConverter();
    objectMessageConverter.setStrictContentTypeMatch(true);
    payloadArgumentConverters.add(objectMessageConverter);

    payloadArgumentConverters.add(new SimpleMessageConverter());

    return new CompositeMessageConverter(payloadArgumentConverters);
}
项目:spring-cloud-aws    文件:AbstractMessageChannelMessagingSendingTemplate.java   
protected void initMessageConverter(MessageConverter messageConverter) {

        StringMessageConverter stringMessageConverter = new StringMessageConverter();
        stringMessageConverter.setSerializedPayloadClass(String.class);

        List<MessageConverter> messageConverters = new ArrayList<>();
        messageConverters.add(stringMessageConverter);

        if (messageConverter != null) {
            messageConverters.add(messageConverter);
        } else if (JACKSON_2_PRESENT) {
            MappingJackson2MessageConverter mappingJackson2MessageConverter = new MappingJackson2MessageConverter();
            mappingJackson2MessageConverter.setObjectMapper(Jackson2ObjectMapperBuilder.json().build());
            mappingJackson2MessageConverter.setSerializedPayloadClass(String.class);
            messageConverters.add(mappingJackson2MessageConverter);
        }

        setMessageConverter(new CompositeMessageConverter(messageConverters));
    }
项目:spring-cloud-aws    文件:QueueMessagingTemplateTest.java   
@Test
public void instantiation_WithCustomJacksonConverterThatSupportsJava8Types_shouldConvertMessageToString() throws IOException {

    // Arrange
    AmazonSQSAsync amazonSqs = createAmazonSqs();

    ObjectMapper objectMapper = Jackson2ObjectMapperBuilder.json().build();

    MappingJackson2MessageConverter simpleMessageConverter = new MappingJackson2MessageConverter();
    simpleMessageConverter.setSerializedPayloadClass(String.class);
    simpleMessageConverter.setObjectMapper(objectMapper);

    QueueMessagingTemplate queueMessagingTemplate = new QueueMessagingTemplate(amazonSqs, (ResourceIdResolver) null, simpleMessageConverter);

    // Act
    queueMessagingTemplate.convertAndSend("test", new TestPerson("Agim", "Emruli", LocalDate.of(2017, 1, 1)));

    // Assert
    ArgumentCaptor<SendMessageRequest> sendMessageRequestArgumentCaptor = ArgumentCaptor.forClass(SendMessageRequest.class);
    verify(amazonSqs).sendMessage(sendMessageRequestArgumentCaptor.capture());
    TestPerson testPerson = objectMapper.readValue(sendMessageRequestArgumentCaptor.getValue().getMessageBody(), TestPerson.class);

    assertEquals("Agim", testPerson.getFirstName());
    assertEquals("Emruli", testPerson.getLastName());
    assertEquals(LocalDate.of(2017, 1, 1), testPerson.getActiveSince());
}
项目:spring-cloud-aws    文件:QueueMessagingTemplateTest.java   
@Test
public void instantiation_withDefaultMapping2JacksonConverter_shouldSupportJava8Types() throws IOException {

    // Arrange
    AmazonSQSAsync amazonSqs = createAmazonSqs();

    ObjectMapper objectMapper = Jackson2ObjectMapperBuilder.json().build();

    QueueMessagingTemplate queueMessagingTemplate = new QueueMessagingTemplate(amazonSqs);

    // Act
    queueMessagingTemplate.convertAndSend("test", new TestPerson("Agim", "Emruli", LocalDate.of(2017, 1, 1)));

    // Assert
    ArgumentCaptor<SendMessageRequest> sendMessageRequestArgumentCaptor = ArgumentCaptor.forClass(SendMessageRequest.class);
    verify(amazonSqs).sendMessage(sendMessageRequestArgumentCaptor.capture());
    TestPerson testPerson = objectMapper.readValue(sendMessageRequestArgumentCaptor.getValue().getMessageBody(), TestPerson.class);

    assertEquals("Agim", testPerson.getFirstName());
    assertEquals("Emruli", testPerson.getLastName());
    assertEquals(LocalDate.of(2017, 1, 1), testPerson.getActiveSince());
}
项目:arsnova-backend    文件:AppConfig.java   
@Bean
public MappingJackson2HttpMessageConverter defaultJsonMessageConverter() {
    Jackson2ObjectMapperBuilder builder = new Jackson2ObjectMapperBuilder();
    builder
            .serializationInclusion(JsonInclude.Include.NON_EMPTY)
            .defaultViewInclusion(false)
            .indentOutput(apiIndent)
            .simpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ");
    ObjectMapper mapper = builder.build();
    mapper.setConfig(mapper.getSerializationConfig().withView(View.Public.class));
    MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter(mapper);
    List<MediaType> mediaTypes = new ArrayList<>();
    mediaTypes.add(API_V3_MEDIA_TYPE);
    mediaTypes.add(MediaType.APPLICATION_JSON_UTF8);
    converter.setSupportedMediaTypes(mediaTypes);

    return converter;
}
项目:arsnova-backend    文件:AppConfig.java   
@Bean
public MappingJackson2HttpMessageConverter apiV2JsonMessageConverter() {
    Jackson2ObjectMapperBuilder builder = new Jackson2ObjectMapperBuilder();
    builder
            .serializationInclusion(JsonInclude.Include.NON_EMPTY)
            .defaultViewInclusion(false)
            .indentOutput(apiIndent)
            .featuresToEnable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS)
            .featuresToEnable(SerializationFeature.WRITE_DATE_TIMESTAMPS_AS_NANOSECONDS)
            .modules(new CouchDbDocumentModule());
    ObjectMapper mapper = builder.build();
    mapper.setConfig(mapper.getSerializationConfig().withView(View.Public.class));
    MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter(mapper);
    List<MediaType> mediaTypes = new ArrayList<>();
    mediaTypes.add(API_V2_MEDIA_TYPE);
    mediaTypes.add(MediaType.APPLICATION_JSON_UTF8);
    converter.setSupportedMediaTypes(mediaTypes);

    return converter;
}
项目:carina    文件:RestTemplateBuilder.java   
public RestTemplateBuilder withSpecificJsonMessageConverter() {
    isUseDefaultJsonMessageConverter = false;

    AbstractHttpMessageConverter<?> jsonMessageConverter = new MappingJackson2HttpMessageConverter(
            Jackson2ObjectMapperBuilder
                    .json()
                    .featuresToEnable(
                               DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY,
                               DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT)
                    .build());
    jsonMessageConverter.setSupportedMediaTypes(Lists.newArrayList(
            MediaType.TEXT_HTML, MediaType.TEXT_PLAIN,
            MediaType.APPLICATION_JSON));

    withMessageConverter(jsonMessageConverter);

    return this;
}
项目:amv-access-api-poc    文件:JacksonConfig.java   
@Bean
public Jackson2ObjectMapperBuilder objectMapperBuilder() {
    return new Jackson2ObjectMapperBuilder()
            .failOnUnknownProperties(false)
            .indentOutput(true)
            .serializationInclusion(JsonInclude.Include.NON_NULL)
            .modulesToInstall(
                    new Jdk8Module(),
                    new JavaTimeModule()
            );
}
项目:cas-5.1.0    文件:ServiceTicketImplTests.java   
@Before
public void setUp() throws Exception {
    // needed in order to serialize ZonedDateTime class
    mapper = Jackson2ObjectMapperBuilder.json()
            .featuresToDisable(DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE)
            .featuresToDisable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS)
            .build();
    mapper.findAndRegisterModules();
}
项目:cas-5.1.0    文件:TicketGrantingTicketImplTests.java   
@Before
public void setUp() throws Exception {
    // needed in order to serialize ZonedDateTime class
    mapper = Jackson2ObjectMapperBuilder.json()
            .featuresToDisable(DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE)
            .featuresToDisable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS)
            .build();
    mapper.findAndRegisterModules();
}
项目:buenojo    文件:JacksonConfiguration.java   
@Bean
Jackson2ObjectMapperBuilder jackson2ObjectMapperBuilder() {
    JavaTimeModule module = new JavaTimeModule();
    module.addSerializer(OffsetDateTime.class, JSR310DateTimeSerializer.INSTANCE);
    module.addSerializer(ZonedDateTime.class, JSR310DateTimeSerializer.INSTANCE);
    module.addSerializer(LocalDateTime.class, JSR310DateTimeSerializer.INSTANCE);
    module.addSerializer(Instant.class, JSR310DateTimeSerializer.INSTANCE);
    module.addDeserializer(LocalDate.class, JSR310LocalDateDeserializer.INSTANCE);
    return new Jackson2ObjectMapperBuilder()
            .featuresToDisable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS)
            .findModulesViaServiceLoader(true)
            .modulesToInstall(module);
}