Java REST服务不支持';一个简单的改变就不能工作

Java REST服务不支持';一个简单的改变就不能工作,java,json,rest,Java,Json,Rest,我按照本教程学习一些REST服务和AJAX调用: 我更改了此端点: @GET @Path("/get") @Produces("application/json") public Product getProductInJSON() { Product product = new Product(); product.setName("iPad 3"); product.setQty(999); return product; } 对于本例,为了以jso

我按照本教程学习一些REST服务和AJAX调用:

我更改了此端点:

@GET
@Path("/get")
@Produces("application/json")
public Product getProductInJSON() {

    Product product = new Product();
    product.setName("iPad 3");
    product.setQty(999);

    return product; 

}
对于本例,为了以jsonp格式返回产品:

@GET
@Path("/get?callback={name}")
@Produces("application/javascript")
public String getProductInJSON(@PathParam("name") String callback){

    Product product = new Product();
    product.setName("iPad 3");
    product.setQty(999);

    String productString = callback + "({" + product.toString() + "})";

    return productString; 

}
使用产品的toString():

@Override
public String toString() {
    return "name:" + name + "," + "qty:" + qty;
}
但现在,当我检查ir时,URI在浏览器中工作,具有:

我收到以下错误消息:

HTTP错误:404

找不到完整路径的相对:/json/product/get的资源:

RequestURI=/restws/json/product/get


有人能帮我理解为什么在这个微小的改变后它会给我这个错误吗?谢谢,

查询参数不是@Path的一部分。您应该按照中所示处理它们。

您要在带有注释的URL中声明要调用的
回调
参数
名称
,这不是问题所在吗?另一个,尽管不相关,但是在
toString()
方法中,
name
应该用双引号括起来。是的,引号是正确的