2017-06-09 14:22
@salon 怎么会出现 BigInteger ? 你的字段是啥类型,长度是多少? 一般整型使用 Long 就足够了,不要用 BigInteger
2017-06-09 14:21
@Rocky 最直接的办法是在 action 中通过 setAttr(...) 将 url 参数传过来,也可以通过 keepPara() 方法将参数传过来
还可以通过拦截器来做这个事
2017-06-07 22:44
@只谈风月 jquery 不能发送发送 http body 为 json 的数据,你这段代码本质上还是表单提交,dataType: json 仅仅表示将服务端返回的值当成 json 格式去处理
想要发送 HttpKit.readData(getRequest()); 可接收的数据,你得用 HttpClient 这样的客户端,或者 HttpKit.post(...) 来发送,浏览器中执行的 javascript 是无法做到的
2017-06-06 22:46
@linuxea request 是 tomcat、jetty 实例化好了,并将其转给你用的,不需要自己去操心 request 实例话的事情
2017-06-05 18:02
@qianqian123 检查两个地方,一个 request 这个对象是不是早已是 null,还有一个是 request.getSession(true) 这个获取到的是不是 null
检查的方法是在 controller 中使用:
HttpServletRequest request = getRequest();
HttpServletSession session = request.getSession(true);
要确保这两个对象不能为 null,确保的方式不是 jfinal 的范畴,要去检查 tomcat 这些东东,或许是你的项目改了 jfinal 源代码,造成这些值为 null
2017-06-05 16:30
setSessionAttr(...) 的源代码如下:
public Controller setSessionAttr(String key, Object value) {
request.getSession(true).setAttribute(key, value);
return this;
}
可知道 session 的实例化是自动化的,你的代码出现了 Null Pointer Exception,应该是 request.getSession(true) 这一行代码出的问题,这一行代码 jfinal 仅仅是转调了一下底层的 HttpServletRequest,这个在历史是从未出现过问题
目前为止我也不知道原因