ruoyiVue集成积木报表
本示例以RuoYi-Vue-fast分离版本为例
1、项目结构
2、执行初始化脚本积木报表sql
3、pom中引入积木报表最新依赖
springboot2依赖,最新版本号可以从 http://jimureport.com/doc/log 中查询到
<dependency>
<groupId>org.jeecgframework.jimureport</groupId>
<artifactId>jimureport-spring-boot-starter</artifactId>
<version>${version}</version>
</dependency>
springboot3依赖,需要springboot3依赖的请查看文档。
<dependency>
<groupId>org.jeecgframework.jimureport</groupId>
<artifactId>jimureport-spring-boot3-starter-fastjson2</artifactId>
<version>${version}</version>
</dependency>
4、RuoYiApplication添加积木扫描目录
@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class },scanBasePackages = {"org.jeecg","com.ruoyi"})
5、SecurityConfig拦截排除
目录在ruoyi-framework
.antMatchers("/jmreport/**").anonymous()
6、yml中配置minidao(可忽略)
minidao :
base-package: org.jeecg.modules.jmreport.desreport.dao*
7、启动项目访问
若依默认端口是8848,可以根据自己的需求集成到若依系统里面(如集成到菜单) 积木报表访问地址:http://localhost:8848/jmreport/list
注意:需要通过后台接口地址访问
8、常见问题
1、如果报错Aop
尝试删除pom文件中的devtools依赖
2、需要做权限token传递
详见集成文档-》积木报表token权限
3、需要上传图片
详见集成文档-》文件上传配置
4. 若依集成积木报表swagger(doc.html)
访问不到
解决方案,自定义静态资源拦截器即可解决,将doc.html指向指定的swaggerUi路径
@Configuration
public class SwaggerDocConfig implements WebMvcConfigurer {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/");
registry.addResourceHandler("doc.html").addResourceLocations("classpath:/META-INF/resources/");
}
}
5. 访问地址连接丢失请求前缀
产生原因之一:nginx转发时访问是有项目前缀,但请求连接上没有拼接,导致项目请求不到地址
- nginx配置
- 访问地址缺少前缀
- 解决方案:pom文件中填写
jeecg :
jmreport:
#自定义项目前缀
customPrePath: