2019-09-19 10:24

这个输出并不是 jfinal 的 action report,可能是你们自己定制的拦截器输出

也可能是你们改了源码的功能

2019-09-18 22:58

@zzutligang 添加一些代码,将出问题的请求信息完整的记录下来,然后要能在本地通过 postman 这类 http 工具重现才可以

注意,要在本地重现这个问题,然后将请求信息发给我,我在我本地重现,然后就好解决了

在本地重现就可以方便进行调试跟踪问题出在哪里,才能解决

既然你那里可以重现,一定要再次反馈给我,谢谢

2019-09-18 22:55

hbase 插件不是我写的,找到真正的作者问一下才好

2019-09-18 10:10

找一找数据库支持的一些函数,直接用上就好,例如:
https://www.cnblogs.com/zh-1721342390/p/9605279.html
https://www.runoob.com/mysql/mysql-functions.html

如果有直接可用的函数是最好的情况

2019-09-18 09:40

@你妹啊 jfinal undertow 不支持 JSP, 改用 jetty-server 进行开发:
https://www.jfinal.com/doc/1-6

部署用 tomcat:
https://www.jfinal.com/doc/1-7

JSP 太古老了,建议换用 jfinal enjoy 引擎,爽得不得了

2019-09-18 09:37

服务端接收文件改用 commons-upload.jar 试一下,将 getFile() 去除,使用如下大致的代码结构:
HttpServletRequest request = getRequest();

然后将 request 这个对象传递给 commons-upload.jar 中的相关类进行解析,commons-upload.jar 中提供了对于 HttpServletRequest 类型对象的解析类

此外,建议先检查一下是不是 getFile() 使用的时机不对,如果有拦截器的话,也要在拦截器中首先调用
getFile()
否则无法正常工作,这个在文档中有过说明:
https://www.jfinal.com/doc/3-11

2019-09-17 16:28

me.setRenderFactory(new RenderFactory()...)
仅仅起到一个切换作用, 将你的 MyErrorRender 可以用上

为什么能起到切换作用, 因为你在 new RenderFactory 的时候覆盖了父类的两个 getErrorRender 方法

2019-09-17 16:27

继承以后,这样用上:
me.setRenderFactory(new RenderFactory() {
public Render getErrorRender(int errorCode, String view) {
return new MyErrorRender(errorCode, view);
}

public Render getErrorRender(int errorCode) {
return new MyErrorRender(view);
}
);

其中的 MyErrorRender 就是你扩展 ErrorRender 而来的

2019-09-17 16:24

Integer count = Db.queryInt("select count(*) from test");

2019-09-17 16:16

urlPara 参数中不能出现字符 '/',也不能出现字符 '.'

如果参数一定要有上面的字符,可以使用问号挂参,例如:
/upload/?para=1_a@gmail.com/bf060652e7e8cd54ae7a05870ff95c62

2019-09-17 11:11

@Fcmmy 非常详细的方案,已点赞 + 收藏,赞

2019-09-17 11:10

模板在执行的时候,已然是在向客户端/浏览器发送数据了,也就是说一边执行一边发送数据

这个时候再 try catch 意义不大,所以,一定要确保模板输出是正确的

好在模板输出是一个很简单的工作,只是数据展示而已,不容易出错

如果一定要 try catch ,可以添加自定义指令,例如:
#try
....
#catch(....)
....
#end

但是不建议这么做

更简单的做法是继承 ErrorRender 并扩展它,在扩展的 ErrorRender 中可以做很多事情,最后通过配置 me.setRenderFactory(....) 用上自己扩展的 ErrorRender

2019-09-16 19:29

@zzutligang 得想个办法能在本地重现,这样才能快速解决掉,关键是我自己从来没碰到过这个问题

2019-09-16 18:16

我记得有个 SessionListener, 直接添加就好