如何在已有springmvc项目中整合入jfinal项目

最近想把一个开源im项目与之前基于jfinal写的项目整合起来,查了一些资料后尝试将jfinal项目整合入springmvc,im部分使用正常却怎么都无法访问到jfinal项目中的方法。应该怎么办呢?

评论区

JFinal

2018-04-17 11:00

先按常规方法把 spring mvc 都弄妥当,然后通过下面几个步预来做:
1:按正常办法在 web.xml 中添加 JFinalFilter,如果 web.xml 中配置了多个 Filter,则需要将 JFinalFilter 配置在最前面

2:参考 com.jfinal.ext.handler.UrlSkipHandler.java 写一个 MyHandler 用来放行 spring 要处理的路由,大致如下:
public void handle(String target, HttpServletRequest request, HttpServletResponse response, boolean[] isHandled) {
// 如果是 spring 该处理的路由,直接放行
if (isSpringRoutes(target)) {
return ;
} else {
// 这里是交给 jfinal 处理的路由
next.handle(target, request, response, isHandled);
}
}

3:配置一下:
configHandler(Handlers me) {
me.add(MyHandler());

总体上来说 spring 该怎么做就怎么做, jfinal 该怎么用还怎么用,只需要在 web.xml 中添加好 JFinalFilter ,并用一个 MyHandler 分发好路由即可

KKKzzzz

2018-04-17 18:04

@JFinal 谢谢波总解答!

尝试按此方法进行处理,jfinal项目可以正常访问了,但放行sping路由后返回404,是哪里出了问题呢?

JFinal

2018-04-17 18:16

@KKKzzzz 放行 spring 路由后的事情就是 Spring 的事情了,得看 spring 是否可以处理你放行的那些路由

jfinal 只管到自己处理的那部分路由

KKKzzzz

2018-04-18 17:40

@JFinal 与配置文档搏斗了半天终于搞定,多谢波总!!

冰雨

2018-04-22 14:46

@KKKzzzz 搞定了分享下经验,再有类似问题,波总下次类似问题就可以直接给地址了!

热门反馈

扫码入社