在Play Framework 2中使用javascript路由

在Play Framework 2中使用javascript路由,javascript,ajax,playframework-2.0,Javascript,Ajax,Playframework 2.0,我试图在play框架中使用jsRoutes进行ajax调用。对于不带任何参数的请求,它工作得很好,但是当我尝试调用一个控制器方法时,它会失败,并且没有错误消息。这里有一些代码可以更好地解释它 控制器类Users.java: public static Result addToShortList(long id) { return whatever } 形态/路线 POST /shortList/:userId controllers.Users.addToShortList(user

我试图在play框架中使用jsRoutes进行ajax调用。对于不带任何参数的请求,它工作得很好,但是当我尝试调用一个控制器方法时,它会失败,并且没有错误消息。这里有一些代码可以更好地解释它

控制器类Users.java:

public static Result addToShortList(long id) {
 return whatever
}
形态/路线

POST    /shortList/:userId  controllers.Users.addToShortList(userId: Long)
在Application.java控制器文件中,我返回如下jsRoutes:

public static Result javascriptRoutes() {
    response().setContentType("text/javascript");
    return ok(Routes.javascriptRouter("jsRoutes",
        controllers.routes.javascript.Application.frontpage(),
        ...
        controllers.routes.javascript.Users.addToShortList(),
        controllers.routes.javascript.Users.removeFromShortList()));
}
现在,在我的javascript中,我可以通过执行以下操作来使用jsRoutes:

jsRoutes.controllers.Users.addToShortList(id).ajax({
            success : function(data) {

                alert(data);
            },
            error : function(err) {
                //code always ends up here, with the err giving no eerror message at all!
                alert(err);             
            }
        });
似乎play框架的这个功能没有很好的文档记录,或者我只是瞎了眼,在任何地方都找不到它


谢谢你的帮助

好的,我自己解决了这个问题。问题似乎是我在控制器方法中使用了long(primitive)。我不知道为什么这是一个问题

这是我自己遇到的游戏问题: