Ele*_*rks 2 java rest web-services jax-rs jersey
我有这个完美的资源:
@Path("/adoptable")
public class AdoptableAnimalsResource {
@GET
@Produces(MediaType.TEXT_PLAIN)
public String get()
{
return "dogs";
}
}
Run Code Online (Sandbox Code Playgroud)
现在,我怎样才能将这个类变成嵌套的内部类? 例如,
public class Grouper
{
@Path("/adoptable")
public class AdoptableAnimalsResource {
@GET
@Produces(MediaType.TEXT_PLAIN)
public String get()
{
return "dogs";
}
}
}
Run Code Online (Sandbox Code Playgroud)
当我尝试它时,我得到404 Not Found错误,表明Jersey不会将内部类视为资源.
您需要使用子资源定位器.基本上,您将在Grouper类中有一个方法,它将实例化AdoptableAnimalsResource该类.本AdoptableAnimalsResource不应该有一个@Path注释.它可以,但它会被忽略.它的方法可以有子资源@Path.类中的方法Grouper应该具有@Path该AdoptableAnimalsResource子资源的标识.
所以它可能看起来像
@Path("/groups")
public class Grouper {
@Path("/adoptable")
public AdoptableAnimalsResource animalSubResource() {
return new AdoptableAnimalsResource();
}
public class AdoptableAnimalsResource {
@GET
@Produces(MediaType.TEXT_PLAIN)
public String get() {
return "dogs";
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1294 次 |
| 最近记录: |