2016-01-07 37 views
1

我有一个方法返回java.net.URL,我无法找到@Produces注释的正确MediaType。有可能产生一个URL MediaType?Java REST球衣生产URL

我的代码:

@GET 
@Produces(MediaType.TEXT_HTML) //MediaType I don´t know 
@Path("terms.html") 
public URL getTerms(){ 

    Iterator<String> it=definitions.keySet().iterator(); 
    URL url,url1=null; 
    try { 
     url = new URL("http://localhost:8080/Dictionary/definitions/"); 
     url1 = new URL(url,it.next()+".html"); 
    } catch (MalformedURLException e) { 
     e.printStackTrace(); 
    } 
    return url1; 
}  

我想在我的休息服务是类似的东西:

enter image description here

回答

1

据我所知,网址没有content type

你可以假设你正在返回的URL是一块纯文本,并使用MediaType.TEXT_PLAIN

@GET 
@Path("terms.html") 
@Produces(MediaType.TEXT_PLAIN) 
public URL getTerms() { 
    ... 
} 

如果你需要,你可以返回(使用MediaType.TEXT_HTML)含有<a> element一个HTML文件,引用你想要返回的URL。

1

媒体类型意在表示正在返回什么样的文件。尽管有“HTML文档”和“XML文档”和“Microsoft word文档” - 其中每个文档都有可以使用的MIME类型,但没有任何“URL文档”。所以,不要有相应的媒体类型。如果你真的只是返回没有HTML/JSON/XML/URL的URL,那么我会使用文本。