在JAX-RS中将java.util.Map转换为JSON时出错

时间:2017-06-26 05:14:26

标签: java json jackson jax-rs moxy

我的程序可以很好地将List转换为JSON,但是在将Map转换为JSON时会返回错误。

我在下面提供了我的代码

@Path("demo")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.TEXT_PLAIN)
public class Demo 
{
    @GET
    public Map<String, String> display()
    {
        Map<String,String> names=new HashMap();

        names.put("name1", "foo");
        names.put("name2","foo2");
        return names;
    }
}

我在pom.xml中添加了以下依赖项以支持JSON转换。

    <dependency>
            <groupId>org.glassfish.jersey.media</groupId>
            <artifactId>jersey-media-json-jackson</artifactId>
        </dependency>

        <dependency>
            <groupId>org.glassfish.jersey.media</groupId>
            <artifactId>jersey-media-moxy</artifactId>
        </dependency>

我遇到了错误

  

2017年6月26日上午3:55:34 org.glassfish.jersey.message.internal.WriterInterceptorExecutor $ TerminalWriterInterceptor aroundWriteTo   严重:找不到媒体类型= application / json的MessageBodyWriter,type = class java.util.HashMap,genericType = java.util.Map。

如何解决此错误?我应该添加哪些依赖项以支持将Map转换为JSON?

0 个答案:

没有答案