Java 415不支持的媒体类型-不适用于GET

Java 415不支持的媒体类型-不适用于GET,java,rest,Java,Rest,我有一个rest调用,它返回会话用户的名称 @GET @Produces(" text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8") @Path(value = "getSessionUserName") public Response getSessionUserName() { try { Session session = SessionManag

我有一个rest调用,它返回会话用户的名称

@GET
    @Produces(" text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8")
    @Path(value = "getSessionUserName")
    public Response getSessionUserName() {

        try {

            Session session = SessionManager.getCurrentSession();
            String details = session.getUserDisplayName().toString();
            return Response.ok(details).build();
        } 
        catch(Exception e) {
            return handleExceptions(e);
        }
每次我尝试访问此文件时,都会出现415不支持的媒体类型异常。
我还有其他几乎相同的电话,工作正常。我无法解决此问题。

@products
允许单个字符串媒体类型(不是具有多个逗号分隔媒体类型的单个字符串)或单个字符串媒体类型的逗号分隔列表

@Produces("application/xml")

-or-

@Produces({"text/html","application/xhtml+xml","application/xml;q=0.9", "*/*;q=0.8"})
还有一件事,你可能想看看维基百科上的文章。我想你可能不完全理解它是如何工作的。您的产品中包含的内容是浏览器将发送的内容。它的意思是,它希望数据以HTML、XHTML的形式返回,如果这些数据不可用,则返回XML,如果这些数据不可用,则返回任何内容


但在服务器端,您需要确定实际能够生成哪些类型。你真的能生成HTML吗,你真的能生成XHTML吗,你真的能生成XML吗?
@产生
注释与内容协商一起工作。有“广告”什么媒体类型是你能够生产。客户端应发送一个包含其能够处理的媒体类型的
Accept
标题。这就是谈判发生的地方。如果客户机需要一个类型,而服务器无法生成,它将得到一个406不可接受的错误。康涅格就是这样工作的

@products
允许单个字符串媒体类型(不是具有多个逗号分隔媒体类型的单个字符串),或单个字符串媒体类型的逗号分隔列表

@Produces("application/xml")

-or-

@Produces({"text/html","application/xhtml+xml","application/xml;q=0.9", "*/*;q=0.8"})
还有一件事,你可能想看看维基百科上的文章。我想你可能不完全理解它是如何工作的。您的产品中包含的内容是浏览器将发送的内容。它的意思是,它希望数据以HTML、XHTML的形式返回,如果这些数据不可用,则返回XML,如果这些数据不可用,则返回任何内容

但在服务器端,您需要确定实际能够生成哪些类型。你真的能生成HTML吗,你真的能生成XHTML吗,你真的能生成XML吗?
@产生
注释与内容协商一起工作。有“广告”什么媒体类型是你能够生产。客户端应发送一个包含其能够处理的媒体类型的
Accept
标题。这就是谈判发生的地方。如果客户机需要一个类型,而服务器无法生成,它将得到一个406不可接受的错误。康涅格就是这样工作的