Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JAX-RS:基于URL模式检索替代格式_Java_Xml_Jax Rs - Fatal编程技术网

Java JAX-RS:基于URL模式检索替代格式

Java JAX-RS:基于URL模式检索替代格式,java,xml,jax-rs,Java,Xml,Jax Rs,我在Tomcat6容器中运行了一个简单的JAX-RS服务。是否可以通过添加.XML或.json在浏览器中以类似于Rails的方式显示文本和XML 我使用的服务是基于。简短回答是否,JAX-RS不允许您仅通过在URL中添加“xml”或“json”来切换响应内容类型 该规范明确定义了内容协商的发生方式-通过客户端的AcceptHTTP头,与服务器端的@生成注释相匹配。因此,按照规范,如果您想要获得不同的内容类型,那么您可以在Accept头中这样指定,并且将返回该内容类型(只要服务器支持) 话虽如此,

我在Tomcat6容器中运行了一个简单的JAX-RS服务。是否可以通过添加
.XML
.json
在浏览器中以类似于Rails的方式显示文本和XML

我使用的服务是基于。

简短回答是,JAX-RS不允许您仅通过在URL中添加“xml”或“json”来切换响应内容类型

该规范明确定义了内容协商的发生方式-通过客户端的
Accept
HTTP头,与服务器端的
@生成
注释相匹配。因此,按照规范,如果您想要获得不同的内容类型,那么您可以在
Accept
头中这样指定,并且将返回该内容类型(只要服务器支持)

话虽如此,JAX-RS实现可以自由地实现自定义(不可移植)扩展,以支持类似于您所描述的行为。例如RESTEasy,它允许您将所需的内容类型定义为查询参数


您还可以设计资源类来轻松支持所需的行为-一些示例可以在中看到。

查看本教程。。。。您可以在浏览器上显示xml、html或纯文本…谢谢。根据@products声明要生成的内容,客户端将收到“最合适”的格式。但是,客户机必须使用“Accept”(“Accept:text/plain”,例如)指定可能的格式。我的问题是,除了使用accept-request属性之外,是否还有其他方法,例如在Rails中,您只需将“.xml”附加到URI中。