Jquery 参数列表jsonp后缺少

Jquery 参数列表jsonp后缺少,jquery,json,jersey,jsonp,Jquery,Json,Jersey,Jsonp,我使用jersey生成jsonp,它将激活jQuery回调来填充自动完成。但是,生成的jsonp在语法上是不正确的,因为它会导致消息出现javascript错误: 参数列表后的“SyntaxError:缺少” 我的浏览器是对的。这是从服务器返回的jsonp: (以下简称“名字名字名字”是“卡尔”的,“名字名字名字”是“卡尔”的,”,”名字名字名称是::“XXXXX X\”,,“尼hii”是:“尼hii”是:“140XXXXXXXXX\”,,,,,4141414141414141414141414

我使用jersey生成jsonp,它将激活jQuery回调来填充自动完成。但是,生成的jsonp在语法上是不正确的,因为它会导致消息出现javascript错误:

参数列表后的“SyntaxError:缺少”

我的浏览器是对的。这是从服务器返回的jsonp:

(以下简称“名字名字名字”是“卡尔”的,“名字名字名字”是“卡尔”的,”,”名字名字名称是::“XXXXX X\”,,“尼hii”是:“尼hii”是:“140XXXXXXXXX\”,,,,,41414141414141414141414141414141414141414141414141414141414141414141247474747474747478787878787878787878787878787878787878787878787858非非非非非非非非非非1369090909019519519519519519519519519519519519519558。。在在(非非非非非非非公共公共公共公共公共1367878787878787878787878787878789090909090909090909090909090909090195195195195195195195((”(”(”(”(”(”(”(”(”(”(”(”(”(”(”(”(”(”(”(”(”(HII\“:\“10000XXXXX\”}]

它确实缺少一个右括号

这是服务器端的代码:

@Path("/yxxxxxxx")
@Produces("application/x-javascript")
public class YellowPagesService implements InitializingBean{

private YPWSClient ypwsClient;

@GET
public JSONWithPadding getClichedMessage(@QueryParam("callback") String callback,          @QueryParam("name_startsWith") String name_startsWith) {

    List<Person> persons = new ArrayList<Person>();
    if(name_startsWith != null && !name_startsWith.equals("")){
        List<Contact> result = ypwsClient.getPersonsStartsWith(name_startsWith).getContact();
        for(Contact c : result){
            if(c.getFirstName() != null){
            Person p = new Person(c.getFirstName(), c.getLastName(), c.getIdentifier());
            persons.add(p);
            }
        }
    }
    JSONWithPadding jsonWithPadding = new JSONWithPadding(new GenericEntity<List<Person>>(persons){}, callback);

    return jsonWithPadding;
}
@Path(/yxxxxxxx)
@产生(“应用程序/x-javascript”)
公共类YellowPagesService实现初始化bean{
私人YPWSClient YPWSClient;
@得到
public JSONWithPadding getClichedMessage(@QueryParam(“回调”)字符串回调,@QueryParam(“name_StartWith”)字符串name_StartWith){
List persons=new ArrayList();
if(name_startsWith!=null&!name_startsWith.equals(“”){
List result=ypwsClient.getPersonsStartWith(name_startWith).getContact();
对于(联系c:结果){
如果(c.getFirstName()!=null){
Person p=新的Person(c.getFirstName(),c.getLastName(),c.getIdentifier());
增加(p);
}
}
}
JSONWithPadding JSONWithPadding=newJSONWithPadding(newGenericEntity(persons){},回调);
返回jsonWithPadding;
}
我正在使用Jersey 1.12,但我在任何登录的地方都找不到此问题,也没有找到具有完全相同问题的用户,这使我怀疑此问题的原因。我尝试了Genson,但没有结果

有人有线索吗

非常感谢!
干杯

尝试升级到Genson 0.97,jax rs集成代码正在关闭输出流(本不应该关闭的时候),因此丢失了关闭偏执。

即使我更改代码以返回一些简单的内容,例如:“返回新的JSONWithPadding(“persons”,callback);”,我也会得到jquery18223247610701231336_1369731932687(“persons”Genson(0.95)的响应确实是罪魁祸首。我将其从项目中删除,并实现了ContextResolver和ObjectFactory,这也解决了问题。