JFinal 集成shiro问题

1、第一在 JFinal Template Engine上使用扩展Shiro标签,如:

HasPermissionTag
GuestTag()
HasRoleTag()

等标签,最终完成如下效果:

#if(shiro.hasPermission("/index/user/add"))

#end

2、第二现在集成shiro做权限控制,使用第三方JFinal shiro插件不好使问题挺多的,同时集成插件复杂不少,shiro本身还蛮强大的,控制细粒度高,权限控制这块也是CMS最核心部件,必不可缺的,考虑到集成太多,JFinal核心会膨胀,官方搞个独立的权限管理插件类库,这样的这个挺好挺好的。

3、要是JFinal 官方推出一套权限管理体系的话,也可以接受的。哈哈

评论区

JFinal

2017-03-06 11:28

这个贴子是在问问题,还是在分享呢? 如果是分享需要发到分享频道去

EATI001

2017-03-06 11:31

@JFinal 即在分享也在提问题,两方面都有,哈

JFinal

2017-03-06 11:38

期待将扩展分享出来,有不少小伙伴们也需要,感谢支持

EATI001

2017-03-14 08:59

这个问题解决:
1、使用这个插件: http://git.oschina.net/myaniu/jfinalshiroplugin,记得修改ShiroPlugin插件下start方法下:
for (Entry>entry : routes.getEntrySet()) {
Class controllerClass = entry.getValue();
String controllerKey = entry.getKey();
修改为:
for (Routes.Route route : routes.getRouteItemList()) {
Class controllerClass = route.getControllerClass();
String controllerKey = route.getControllerKey();

2、使用这个:https://my.oschina.net/xiandafu/blog/143109这个链接是其它模板的扩展,因为JFinal Template Engine模板引擎的极速特点,以上扩展拿来就可以实现JFinal Template Engine 的shrio标签扩展,记得搬过来后记得把那main方法里面的两段代码注解掉或直接把main方法删除掉也行,不受影响的:
(1)、扩展配置:me.addSharedObject("shiro", new ShiroExt());
(2)、界面使用效果:
#if(shiro.hasPermission("/index/user/add"))

#end

JFinal

2017-03-14 12:24

@EATI001 这个非常有用,单写一个 share 分享贴出来啊,我收藏一下,好多人要呢。只要将上面的 routes 扩展,与 ShirExt 扩展代码分享出来就齐活了

EATI001

2017-03-14 15:39

@JFinal 老大,按您的指意我开辟了个地址这:http://www.jfinal.com/share/224

热门反馈

扫码入社