2018-06-14 18:01
@373118970 发现你在问前端的事, jfinal 是后端框架,只管到 parameter 这一栏,前端我稍微说一下:
1:正规的表单提交
2:ajax 发请求时的 data 这一栏:
data: {sortField=aaa, sortOrder=bbb}
注意第二条中的 ajax,看上去是 json 数据,但本质上仍然是表单提交类型的 key value 数据,所以后台的 parameter 这一栏仍然是 key value
2018-06-14 17:57
@373118970 确保控制台输出的 jfinal action report 中的 parameter 这一栏的内容为如下两种格式即可:
Parameter : sortField=aaa sortOrder=bbb
Parameter : modelName.sortField=aaa modelName.sortOrder=bbb
前者的在使用时,第二个参数传 "":
getModel(Xxx.class, "",true);
后者在使用时,第二个参数传具体的前缀:
getModel(Xxx.class, "modelName",true);
这些在文档中都有实例,请不要再问这种基础性问题
2018-06-14 17:29
@弩张 项目启动的时候就有错了,造成后面的查询时候出错
所以,关键你得搞定启动时候的错误,但是你启动时候的错误异常,根本没有提供 cause 部分,可以预想你根本没去分析 cause 部分
解决问题,关键就在于分析 cause 部分,否则就只能是一直瞎猜
2018-06-14 17:26
@373118970 如果控制台输出的 jfinal action report 中的 parameter 这一栏是下面的:
data = {"id":"23","title":"sads","content":"sadas"}
那么该这样获取:
String jsonStr = getPara("data");
然后再转换:
Tblog blog = FastJson.getJson().parse(jsonStr, Tblog.class);
注意,这里要引入 fastjson 的依赖
2018-06-14 15:53
@373118970 getModel 与 getBean , 第二个参数传入空字符串,是可以支持不需要 model 前缀的:
getModel(Xxx.cllass, "", true);
如果你的 model 用 jfinal 生成器生成了 setter 方法,可以使用 getBean:
getBean(Xxx.cllass, "", true);
注意看文档
2018-06-14 14:08
@704535983 仔细看异常, 难道是你的项目还有其他jar 包对老版本有依赖? 注意打开 pom.xml 的那个依赖视图去分析
还可以打成 war 包,看看是不是打出来两个 jfinal 的 jar 回复删除
2018-06-14 12:40
@704535983 仔细看了一下,你的 BasePathInterceptor 中使用的 ActionInvocation 应该改成 Invocation
类名有变化,而且这个类从 core 包转移到了 aop 包,这个应该是 eclipse 会提示你错误的,难道是你的 BasePathInterceptor 放在另一个 jar 包中的,如果是的话,需要先升级另一个 jar 包到 jfinal 3.4
2018-06-14 11:55
@373118970 情况比较明朗, 使用 getPara("sortField") getPara("sortOrder") 即可获取
2018-06-14 11:49
@704535983 新版本的 jfinal 默认引擎是 enjoy,你得配置成 JSP:
me.setViewType(ViewType.JSP);