...
重要声明:第三方系统集成Smartbi时,在大版本变更时可能会对接口、jar包进行改动,可能会导致原本集成系统方法调用异常,所以在做大版本更新时,建议集成系统需充分验证后再上线生产。
1、添加jar包依赖
在第三方系统需要调用Smartbi系统的接口时,需要先添加Smartbi接口的依赖jar,依赖的jar包又分为两种,一种是必选添加的部分,一种是可选添加的,为了避免使用时常出现的类找不到的问题,还需要不断的添加jar包,所以建议是全部添加。
获取Smartbi的依赖jar包可到部署Smartbi的服务器上找到smartbi.war或解压出来的war包文件夹,然后到将smartbi.war\\WEB-INF\\lib\\目录下拿到依赖的jar包文件。所需的jar包参考如下文档。
...
V11依赖jar包清单:https://wiki.smartbi.com.cn/pages/viewpage.action?smt_poid=43&pageId=111889746
...
2、不同版本jar包获取
由于Smartbi的版本会不断的进行版本迭代,不同版本之间的架构、打包方式都有可能进行调整,所以依赖的jar包可能会随版本变化而变化。并且Smartbi的版本和集成环境的jar包版本如果不同,调用接口时很可能会出现各种报错。所以在集成时一定需要拿到和Smartbi对应版本的jar包依赖。
以V9、V10、V11版本举例,获取需要的jar包依赖步骤如下:
(1)确认Smartbi的版本信息
wiki文档:
(3)在服务器上获取jar包
3、maven版本引入说明
目前Smartbi的SDK依赖jar包并未提交到公共仓库,若项目希望可以通过maven来管理jar包版本,则需要自行将jar包添加到自己的maven仓库中,然后再到pom文件中引用。
代码块 |
---|
#执行提交仓库的命令,组id和工件id可自定义 mvn install:install-file -Dfile="Smartbi-SDK.jar" -DgroupId=smartbi.sdk -DartifactId=smartbi-Smartbi-SDK -Dversion=V11 -Dpackaging=jar |
代码块 |
---|
``` ```xml <dependency> <groupId>smartbi.sdk</groupId> <artifactId>smartbi-Smartbi-SDK</artifactId> <version>V11</version> </dependency> ``` # 二、使用流程 ### 1、创建Smartbi链接 ```java |
1、创建Smartbi链接
代码块 | ||
---|---|---|
| ||
// 1、指定Smartbi服务器地址
ClientConnector connector = new ClientConnector(SMARTBI_URL);
```
### 2、完成登录
```java
|
代码块 | ||
---|---|---|
| ||
// 2、完成登录
boolean isLogin = connector.open(USER_NAME, PASS_WORD);
if(!isLogin) {
System.out.println("服务器登录访问失败");
return;
}
```
### 3、创建接口对象
```java
|
代码块 | ||
---|---|---|
| ||
// 3、创建调用的接口对象
UserManagerService userManagerService = new UserManagerService(connector);
```
### 4、接口调用
```java
|
代码块 | ||
---|---|---|
| ||
List<? extends IDepartment> department = userManagerService userManagerService.getDepartmentsOfCurrentUser(); for (IDepartment item : department) { System.out.println(item.getAlias()); } ``` ### 5、示例代码 ```java } |
代码块 | ||
---|---|---|
| ||
package smartbi.test.thirdparty;
import java.util.List;
import smartbi.sdk.ClientConnector;
import smartbi.sdk.service.user.UserManagerService;
import smartbi.user.IDepartment;
public class SmartbiSDKTest {
private final static String SMARTBI_URL = "http://localhost:18080/smartbi";
private final static String USER_NAME = "admin";
private final static String PASS_WORD = "admin";
public static void main(String[] args) {
// 1、指定Smartbi服务器地址
ClientConnector connector = new ClientConnector(SMARTBI_URL);
// 2、完成登录
boolean isLogin = connector.open(USER_NAME, PASS_WORD);
if(!isLogin) {
System.out.println("服务器登录访问失败");
return;
}
// 3、创建调用的接口对象
UserManagerService userManagerService = new UserManagerService(connector);
List<? extends IDepartment> department = userManagerService.getDepartmentsOfCurrentUser();
for (IDepartment item : department) {
System.out.println(item.getAlias());
}
}
}
```
|
三、视频教学
宏代码简介:https://my.smartbi.com.cn/edu/course-148