2019-06-20 16:58
这个可能是你打包的时候没有去掉 jetty-server 依赖造成的JspFactory 这些东东是 servlet 规范里头的,jetty 与 tomcat 都有自己的实现,如果不去掉会有冲突在文档中有过说明,部署到 tomcat 之前,一定要删干净 jetty 或者 undertow 的依赖:https://www.jfinal.com/doc/1-7
2019-06-20 16:27
@sandy777 实在找不到的话,就用 maven 吧, gradle 在使用上主要就是省点配置,与 maven 并无本质区别
2019-06-20 16:26
在 JFWebConfig 中添加一个 onStart() 方法, jfinal 在启动时会回调该方法,然后使用下面类似的配置方式,将你的扩展应用上:FreeMarkerRender.getConfiguration().setSharedVariable(...);这里的关键就是要在 onStart() 方法中去添加你的配置
2019-06-20 15:56
建议将 sql 模板放在 src/main/resources 下面,这样在打包的时候会将 sql 文件打入 jar 包之中,比让它处于 webapp 下面要更好
这里的关键就是用于 sql 模板管理的 Engine 对象已经默认配置了下面的配置:arp.getEngine().setToClassPathSourceFactory();也就是说 engine 会去 class path 和 jar 包中找模板文件当然,如果你仍然希望去 webapp 目录下面去找模板,再追加一个配置即可:arp.getEngine().setSourceFactory(new FileSourceFactory());然后就可以这么来用了: arp.addSqlTemplate("/WEB-INF/sql/all.sql");
2019-06-20 15:53
1:将 sql 模板挪到 src/main/resources/sql 目录下面去2:删除下面这行:arp.setBaseSqlTemplatePath(PathKit.getWebRootPath()+"/WEB-INF/sql");3: arp.addSqlTemplate("/sql/all.sql");
2019-06-20 15:51
gradle 是晚于 maven 出来的,maven 已有的功能在 gradle 中应该都可以找到替代方案,找找他的官方网站
2019-06-20 11:13
挺多这种项目:https://www.baidu.com/s?ie=utf-8&wd=site:jfinal.com%20excelhttps://gitee.com/jfinal/JFinal-ext2/tree/master/src/main/java/com/jfinal/ext/render/xls
2019-06-20 10:37
如果是文件上传,用 if 判断一下,不要走你上面的代码,两次请求就变成了一次请求
2019-06-20 10:29
@DreamPeter 以你这种钻研探索的精神,提升会很快,很快能掌握最佳实践的用法
2019-06-19 23:40
@canca 按照这个贴子的方法解决:http://www.jfinal.com/feedback/5985也就是说使用还未发布的 jfinal 4.3 版本解决,记得反馈给我结果现在正是发布前夕,所以特别需要这类碰到问题的案例,确保发布的版本兼容性最高
2019-06-19 22:57
只要配置好,默认应该是打包进去的如果没打包进去,调整一下 package.xml 中有关复制文件的配置,可配置复制任意地方的配置到打包的目标中去package.xml 中有注释,里面放上了该打包插件的官方链接,可以找到如何配置复制外部文件的办法
2019-06-19 22:55
建议加入俱乐部,获取本社区源码,这里头的代码是最佳实践。你会发现有了业务层,其它业务之间是穿插调用的,逻辑十分清晰没有业务层是做不到这一点的
无论多小的项目都要有业务层首先添加一个业务层是顺手的事情,并没有多少工作量,因为 jfinal 的业务层在不需要抽象的时候,不建议创建接口抽象类之类的东东,十分轻量级其次,业务层在添加之初你可能并没有感到什么好处,甚至会感到工作量反而增加,但是随着开发的推进,你会发现后续的开发工作可以不断调用以前开发好的业务层的 API 来组合式实现功能。从而大大减少工作量,提升开发效率最后,数据结构是应用的底层核心,业务层是应用的上层核心,而应用其它的部分全都只是辅助作用,包括 model 也只是起一个承载数据的作用。所以当业务发生变化时,业务层的存在可以提升可维护性
2019-06-19 18:06
总结就是,确保是标准的 maven 项目, 此问题与 jfinal 无关,纯粹是 maven 使用问题,因为 jfinal 项目是标准的 maven 项目