Ruoyi Vue版集成JFlowSpringBoot(成功版)
1.下载https://gitee.com/kikock/RuoYi-JFlow的源码,以及ruoyi-vue源码,ruoyi-jflow只是一个参考,因为他不是ruoyi-vue版
2.修改WF/Comm/Gener.js.
所有url增加从cookie里面获取Token,添加GetCookie函数,参考如下:
$.ajax({type: 'post',async: false,xhrFields: {withCredentials: true},crossDomain: true,url: dynamicHandler + "?DoType=Entity_Init&EnName=" + self.enName + "&PKVal=" + self.pkval + "&t=" + new Date().getTime()+"&token="+getCookie("Admin-Token"),***: ''
});
添加getcookie函数
//获取cookie
function getCookie(cookie_name) {var allcookies = document.cookie;//索引长度,开始索引的位置var cookie_pos = allcookies.indexOf(cookie_name);// 如果找到了索引,就代表cookie存在,否则不存在if (cookie_pos != -1) {// 把cookie_pos放在值的开始,只要给值加1即可//计算取cookie值得开始索引,加的1为“=”cookie_pos = cookie_pos + cookie_name.length + 1;//计算取cookie值得结束索引var cookie_end = allcookies.indexOf(";", cookie_pos);if (cookie_end == -1) {cookie_end = allcookies.length;}//得到想要的cookie的值var value = unescape(allcookies.substring(cookie_pos, cookie_end));}return value;
}
3.修改WF/Scripts/config.js,修改projectname
function basePath() {//获取当前网址,如: http://localhost:80/jflow-web/index.jspvar curPath = window.document.location.href;//获取主机地址之后的目录,如: jflow-web/index.jsp var pathName = window.document.location.pathname;var pos = curPath.indexOf(pathName);//获取主机地址,如: http://localhost:80 var localhostPaht = curPath.substring(0, pos);//获取带"/"的项目名,如:/jflow-web//var projectName = pathName.substring(0, pathName.substr(1).indexOf('/') + 1);var projectName ='';return localhostPaht + projectName;}
4.修改WebUser.java的GetSessionByKey()做了修改
/*** 通过key,取出session.** @param key key* @param isNullAsVal 如果是Null, 返回的值.* @return*/public static String GetSessionByKey(String key, String isNullAsVal) {
// return GetSessionByKey(key, isNullAsVal, false);
// }
//
// /**
// * 通过key,取出session.
// *
// * @param key key
// * @param isNullAsVal 如果是Null, 返回的值.
// * @return
// */
// public static String GetSessionByKey(String key, String isNullAsVal, boolean isChinese) {
// try {if (getIsBSMode() && null != ContextHolderUtils.getRequest() && null != ContextHolderUtils.getSession()) {//Object value = ContextHolderUtils.getSession().getAttribute(key);Object value=null;if (key=="No") {value = ContextHolderUtils.getLoginUser(ServletUtils.getParameter("token")).getUsername();}else if (key=="Name"){value = ContextHolderUtils.getLoginUser(ServletUtils.getParameter("token")).getUser().getNickName();}else if (key=="FK_DeptName"){value = "100";}else if (key=="FK_DeptNameOfFull"){value = "组织架构";}String str = value == null ? "" : String.valueOf(value);if (StringHelper.isNullOrEmpty(str)) {//astra.zhao 2019-04-08 modified 注释了str = 'admin'str = isNullAsVal;//str = "admin";}return str;} else {if ((Current.Session.get(key) == null || Current.Session.get(key).toString().equals("")) && isNullAsVal != null) {//astra.zhao 2019-04-08 modified 注释了str = 'admin'return isNullAsVal;//return "admin";} else {//astra.zhao 2019-04-08 modified 注释了str = 'admin'//String str = (String) Current.Session.get(key);String str = ContextHolderUtils.getLoginUser(ServletUtils.getParameter("token")).getUsername();return str;//return "admin";}}
// } catch (UnsupportedEncodingException e) {
// return isNullAsVal;
// }}
5.修改WF/HttpHandle/WF_Comm.java
6.修改DBAccess.java的RunSQL_200705_MySQL方法,(上述这两个方法省略,只是集成报错后,进行修改,可以在控制台看到具体错误)
7.将jflow-core作为一个module模块包,编译后,添加到spring boot项目中,添加jar包<dependency>
<groupId>jflow-core</groupId>
<artifactId>jflow-core</artifactId>
<version>1.1.0-SNAPSHOT</version>
</dependency>
8.spring boot的项目中添加yaml文件的mvc配置
mvc:
### request url .do后缀支持
pathmatch:
use-suffix-pattern: true
# 静态文件
static-path-pattern: /JFlow/**
resources:
static-locations: classpath:/JFlow/
view:
prefix: /JFlow/
Ruoyi Vue版集成JFlowSpringBoot(成功版)相关推荐
- 基于 SpringBoot + Vue 框架开发的网页版聊天室项目
简介 微言聊天室是基于前后端分离,采用SpringBoot+Vue框架开发的网页版聊天室.使用了Spring Security安全框架进行密码的加密存储和登录登出等逻辑的处理,以WebSocke ...
- Intellij IDEA 社区版集成 Database Navigator 数据库管理工具
Intellij IDEA 社区版集成 DB Navigator数据库管理工具 第一步:打开IDEA, Intellij IDEA -> Preferences -> Plugins 第二 ...
- v-model双向绑定原理_【Vue原理】VModel 白话版
↑点击上方 "神仙朱" 一起研究Vue源码吧 专注 Vue 源码分享,为了方便大家理解,分为了白话版和 源码版,白话版让大家可以轻松理解工作原理,源码版让大家更清楚内部操作和 Vu ...
- 烂泥:Tomcat免安装版与JRE免安装版集成
本文首发于烂泥行天下,由秀*依*林*枫提供友情赞助 目前公司里面有一款产品是可以监测Tomcat的,自己就尝试搭建测试下.发现不能监测原来是因为Tomcat的配置出错了.下面就把自己正确的配置贴出来, ...
- (转载)持续集成(第二版)[来自:Martin Fowler]
转载自:iTech的博客 持续集成(第二版) 作者:Martin Fowler 译者:雷镇 持续集成 是一种软件开发实践.在持续集成中,团队成员频繁集成他们的工作成果,一般每人每天至少集成一次,也可以 ...
- 持续集成(第二版)[来自:Martin Fowler]
持续集成(第二版) 作者:Martin Fowler 译者:雷镇 持续集成 是一种软件开发实践.在持续集成中,团队成员频繁集成他们的工作成果,一般每人每天至少集成一次,也可以多次.每次集成会经过自动构 ...
- 持续集成(第二版)(转)
原文链接:http://article.yeeyan.org/view/2251/94882 作者:Martin Fowler 译者:雷镇 持续集成是一种软件开发实践.在持续集成中,团队成员频繁集成他 ...
- Kong社区版集成Keycloak实现微服务认证与鉴权
文章目录 Kong社区版集成Keycloak实现微服务认证与鉴权 前言 认证和鉴权流程 在Keycloak上配置 创建Realm 创建Client 创建Role 创建User 服务 环境准备 受保护的 ...
- Vue登录第2.1版
前面已经完成了Vue登录第1版,仅仅是使用JS进行了前端登录验证.下面将在第1版的基础上,使用SpringBoot完成后端程序,通过状态码的传输实现登录认证.这里称其为Vue登录第2.1版. Vue登 ...
最新文章
- 技术图文:如何通过 LINQ 查找集合中的重复数据?
- 独家 | 手推贝叶斯分析:基于真实示例的贝叶斯分析分步演练
- AWS re-Invent最新发布AI产品解析:场景为王
- 【人物】徐小平:既然做老大,你就得让兄弟们有肉吃
- Flume 1.7 源码分析(四)从Source写数据到Channel
- [免费网络研讨会] Java 11的第一印象
- 黑马程序员--里氏转换
- SendMessage 设置TMemo组件的边界
- ubuntu更新显卡驱动到460.84,升级cuda版本到11.2
- DataTable 转换 DataSet
- keras 的层,中文
- matlab 2017安装教程
- win7原版镜像_封装二:Win7 预装软件 Setup 包集成方法
- ‘home‘ has a default child route. When navigating to this named route (:to=“{name: ‘home‘“), the def
- 自我激励的有效方法20个(推荐)
- Android 底层知识拾零,app架构升级
- 想要绘图效率节省储存空间?CAD内部图块该怎么创建?
- 计算机网络 自顶向下方法 原书第7版 Chapter 1 计算机网络与因特网读书笔记
- 有一种难过,叫做你没有使用过网上订货系统!
- n维空间下两个随机向量的夹角分布