バージョン 4.3 から JBoss を使用しています。現在、Wildfly Beta1、CDI、JPA、RESTeasyを使用してディンプル デモ Web アプリケーションを作成していますが、他の JBossAS で行っているように JSON プロバイダーを構成することはできません。プロジェクト...
日付を ISO-8601 文字列としてシリアル化するように JSON プロデューサーを正しく構成するために、プロジェクトにカスタムContextResolver
オブジェクトを追加しました。
package org.demo.config;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.ext.ContextResolver;
import javax.ws.rs.ext.Provider;
import org.codehaus.jackson.map.ObjectMapper;
import org.codehaus.jackson.map.SerializationConfig;
@Provider
@Produces(MediaType.APPLICATION_JSON)
public class JacksonConfig implements ContextResolver<ObjectMapper>
{
private final ObjectMapper mapper = new ObjectMapper();
public JacksonConfig()
{
mapper.configure(SerializationConfig.Feature.WRITE_DATES_AS_TIMESTAMPS, false);
}
@Override
public ObjectMapper getContext(Class<?> objectType)
{
return mapper;
}
}
そして、他の JBoss 7.X プロジェクトで使用している構成でjboss-deployment-structure.xml
、展開フォルダーにファイルを追加しました。META-INF
<jboss-deployment-structure xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:jboss:deployment-structure:1.1 urn:jboss:deployment-structure:1.1 ">
<deployment>
<exclusions>
<module name="org.jboss.resteasy.resteasy-jettison-provider" />
</exclusions>
<dependencies>
<module name="org.jboss.resteasy.resteasy-jackson-provider" />
</dependencies>
</deployment>
</jboss-deployment-structure>
何かご意見は?