对象类
package com.xxx.com.bean;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
public class BOReportNode implements Serializable {
private String id ; //节点ID
private String CUID ; //节点CUID
private boolean isFold ; //是否是文件夹
private boolean isLeaf ; //是否为子节点
private String parentID ;//父节点ID
private String parentCUID =null; //父节点CUID
private int level = 0;
private String text =null;
private String iconCls;
private List<BOReportNode> children = new ArrayList<BOReportNode>();
private String target;
public String getTarget() {
return target;
}
public void setTarget(String target) {
this.target = target;
}
public List<BOReportNode> getChildren() {
return children;
}
public void setChildren(List<BOReportNode> children) {
this.children = children;
}
public boolean isFold() {
return isFold;
}
public void setIsFold(boolean isFold) {
this.isFold = isFold;
}
public boolean isLeaf() {
return isLeaf;
}
public void setIsLeaf(boolean isLeaf) {
this.isLeaf = isLeaf;
}
private String type ;
private int isUpdate = 1;
private String url ;
private String path ;
private int showtype ;
private boolean hidden ;
private int isLinkItem ;
private String itemcode;
private int reporttype ;
private String packageName ;
private String usernamemd ;
private String state;
private boolean checked ;
private String kind;
public String getState() {
return state;
}
public void setState(String state) {
this.state = state;
}
public boolean isChecked() {
return checked;
}
public void setChecked(boolean checked) {
this.checked = checked;
}
public String getKind() {
return kind;
}
public void setKind(String kind) {
this.kind = kind;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getCUID() {
return CUID;
}
public void setCUID(String cUID) {
CUID = cUID;
}
public String getParentID() {
return parentID;
}
public void setParentID(String parentID) {
this.parentID = parentID;
}
public String getParentCUID() {
return parentCUID;
}
public void setParentCUID(String parentCUID) {
this.parentCUID = parentCUID;
}
public int getLevel() {
return level;
}
public void setLevel(int level) {
this.level = level;
}
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
public String getIconCls() {
return iconCls;
}
public void setIconCls(String iconCls) {
this.iconCls = iconCls;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
// public Object getChecked() {
// return checked;
// }
// public void setChecked(Object checked) {
// this.checked = checked;
// }
public int getIsUpdate() {
return isUpdate;
}
public void setIsUpdate(int isUpdate) {
this.isUpdate = isUpdate;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getPath() {
return path;
}
public void setPath(String path) {
this.path = path;
}
public int getShowtype() {
return showtype;
}
public void setShowtype(int showtype) {
this.showtype = showtype;
}
public boolean isHidden() {
return hidden;
}
public void setHidden(boolean hidden) {
this.hidden = hidden;
}
public int getIsLinkItem() {
return isLinkItem;
}
public void setIsLinkItem(int isLinkItem) {
this.isLinkItem = isLinkItem;
}
public String getItemcode() {
return itemcode;
}
public void setItemcode(String itemcode) {
this.itemcode = itemcode;
}
public int getReporttype() {
return reporttype;
}
public void setReporttype(int reporttype) {
this.reporttype = reporttype;
}
public String getPackageName() {
return packageName;
}
public void setPackageName(String packageName) {
this.packageName = packageName;
}
public String getUsernamemd() {
return usernamemd;
}
public void setUsernamemd(String usernamemd) {
this.usernamemd = usernamemd;
}
@Override
public String toString() {
return "BOReportNode{" +
"id='" + id + '\'' +
", CUID='" + CUID + '\'' +
", text=" + text +
", isFold=" + isFold +
'}';
}
}
工具类
package com.xx.com.util;
import com.businessobjects.rebean.wi.ReportEngine;
import com.businessobjects.rebean.wi.ReportEngines;
import com.xx.com.bean.BOReportNode;
import com.crystaldecisions.sdk.exception.SDKException;
import com.crystaldecisions.sdk.framework.CrystalEnterprise;
import com.crystaldecisions.sdk.framework.IEnterpriseSession;
import com.crystaldecisions.sdk.framework.ISessionMgr;
import com.crystaldecisions.sdk.occa.infostore.IInfoObject;
import com.crystaldecisions.sdk.occa.infostore.IInfoObjects;
import com.crystaldecisions.sdk.occa.infostore.IInfoStore;
import com.crystaldecisions.sdk.occa.security.ILogonTokenMgr;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.*;
public class LoginBOUtils {
Logger logger = LoggerFactory.getLogger(LoginBOUtils.class);
private String username;
private String password;
private String boSystemIP;
private String boEnterprise;
public static void main(String[] args) throws Exception {
LoginBOUtils
bo = new LoginBOUtils("xx", "xx", "10.0.100.xxx:6400",
"secEnterprise"); // File file=new File(path); String boUrl =
//String aaa = bo.getBOUrl("10.0.100.xxx:7005", "AZWxLMstNjtNif0h9uFAkZE");
//System.out.println(aaa);
Map<String, Object> map = bo.loginBO();
IEnterpriseSession enterpriseSession = (IEnterpriseSession) map.get("enterpriseSession");
bo.syncBOReport(enterpriseSession);
}
public LoginBOUtils(String username, String password, String boSystemIP, String boEnterprise) {
super();
this.username = username;
this.password = password;
this.boSystemIP = boSystemIP;
this.boEnterprise = boEnterprise;
}
public String getBOUrl(String ip, String iDocID) {
String token = getToken();
String url = "http://" + ip + "/BOE/OpenDocument/opendoc/openDocument.jsp?sIDType=CUID&sViewer=html&iDocID=" + iDocID
+ "&token=" + token;
return url;
}
public String getToken() {
Map<String, Object> map = loginBO();
if (map == null) {
throw new RuntimeException("BO认证失败,请确认参数配置!");
}
return (String) map.get("token");
}
public Map<String, Object> loginBO() {
// 获取BO账户,校验登陆用户是否输入正确
ISessionMgr sessionMgr = null;
IEnterpriseSession enterpriseSession = null;
Map<String, Object> rmap = new HashMap<String, Object>(); // 定义返回对象
try {
// String boEnterprise = (String) request.getSession().getAttribute("BO_SEC_ENTERPRISE");// //连接BO类型
// String boSystemIP = (String) request.getSession().getAttribute("BO_SYSTEMIP");连接BO系统 IP
sessionMgr = CrystalEnterprise.getSessionMgr();
enterpriseSession = sessionMgr.logon(username, password, boSystemIP, boEnterprise);
ILogonTokenMgr mgr = enterpriseSession.getLogonTokenMgr();
String token = mgr.createWCAToken("", 24 * 60, Integer.MAX_VALUE);
rmap.put("rb", true);
rmap.put("rmsg", "BO认证通过!");
rmap.put("token", token);
rmap.put("enterpriseSession", enterpriseSession);
return rmap;
} catch (Exception e) {
e.printStackTrace();
if (null != enterpriseSession) {
enterpriseSession.logoff();
}
rmap.put("rb", false);
rmap.put("rmsg", e.getMessage());
// logger.error(username + "登录BO失败,错误信息:" + e.getMessage());
}
// System.out.println(rmap);
return null;
}
/**
* 同步报表
* @param enterpriseSession
* @return
* @throws Exception
*/
public boolean syncBOReport(IEnterpriseSession enterpriseSession) throws Exception {
ReportEngines reportEngines = null;
ReportEngine boReportEngine = null;
String mes = "同步成功";
boolean res = true;
try {
//bo连接验证
reportEngines = (ReportEngines) enterpriseSession.getService("ReportEngines");
ReportEngine wiRepEngine = (ReportEngine) reportEngines.getService(ReportEngines.ReportEngineType.WI_REPORT_ENGINE);
//根据报表公共根目录名,获取cuid
// String sql = "select si_id,SI_CUID from CI_INFOOBJECTS where si_name='Root Folder'";
String sql = "select si_id,SI_CUID from CI_INFOOBJECTS where si_name='根文件夹'";
//根据报表的cuid获取报表
String infoStoreQuery = "select * from CI_INFOOBJECTS where SI_CUID='";
IInfoStore infoStore = (IInfoStore) enterpriseSession.getService("InfoStore");
IInfoObjects infoObjects = infoStore.query(sql);
String cuidStr = "";
for (Object object : infoObjects) {
IInfoObject myReportRoodFolder = (IInfoObject) object;
cuidStr = myReportRoodFolder.getCUID();
logger.info("si_cuid=" + cuidStr);
}
infoStoreQuery = infoStoreQuery + cuidStr + "'";
logger.info("infoStoreQuery=" + infoStoreQuery);
res = getReportTree(infoStore, infoStoreQuery, "myReport");
} catch (Exception e) {
e.printStackTrace();
res = false;
mes = e.getMessage();
if (null != reportEngines) {
reportEngines.close();
}
if (null != enterpriseSession) {
enterpriseSession.logoff();
}
} finally {
if (null != reportEngines) {
reportEngines.close();
}
if (null != enterpriseSession) {
enterpriseSession.logoff();
}
}
return false;
}
public boolean getReportTree(IInfoStore infoStore, String query, String type) throws SDKException {
boolean res = true;
String infoStoreQuery = "select SI_ID,SI_NAME,SI_PARENTID,SI_CUID,SI_KIND,SI_UPDATE_TS,SI_CREATION_TIME from CI_INFOOBJECTS where SI_PARENTID=";
logger.info("0级查询sql--{}", query);
List<BOReportNode> listOne;
try {
//获取根目录
listOne = getResources(infoStore, query);
logger.info("----(根文件夹)END--{}", listOne);
//二级列表
List<BOReportNode> listTwo = null;
for (BOReportNode nodeOne : listOne) {
//报表id
String idOne = nodeOne.getId();
boolean isfold = nodeOne.isFold();
if (isfold) {
// 二级列表
String querySQLTwo = infoStoreQuery + idOne + " order by si_name asc";
listTwo = getResources(infoStore, querySQLTwo);
logger.info("----二级列表END---\n{}", listTwo);
for (BOReportNode nodeTwo : listTwo) {
boolean isfoldTwo = nodeTwo.isFold();
String idTwo = nodeTwo.getId();
if (isfoldTwo) {
// 三级列表
// String querySQLThree = infoStoreQuery + idTwo +" "+kindSql+" order by si_name asc";
String querySQLThree = infoStoreQuery + idTwo + " order by si_name asc";
List<BOReportNode> listThree = getResources(infoStore, querySQLThree);
logger.info("----三级列表END---\n{}",listThree);
for (BOReportNode nodeThree : listThree) {
boolean isfoldThree = nodeThree.isFold();
String idThree = nodeThree.getId();
if (isfoldThree) {
// 四级列表
String querySQLFour = infoStoreQuery + idThree + " order by si_name asc";
List<BOReportNode> listFour = getResources(infoStore, querySQLFour);
logger.info("----四级列表END{}---\n", listFour);
for (BOReportNode nodeFour : listFour) {
boolean isfoldFour = nodeFour.isFold();
String idFour = nodeFour.getId();
if (isfoldFour) {
//五级列表
//为五级列表设置属性,设置子节点集合
String querySQLFive = infoStoreQuery + idFour + " order by si_name asc";
logger.info("五级查询sql{}", querySQLFive);
List<BOReportNode> listFive = getResources(infoStore, querySQLFive);
logger.info("----五级列表END---\n{}", listFive);
for (BOReportNode nodeFive : listFive) {
boolean isfoldFive = nodeFive.isFold();
String idFive = nodeFive.getId();
if (isfoldFive) {
//六级列表
//为六级列表设置属性,设置子节点集合
String querySQLSix = infoStoreQuery + idFive + " order by si_name asc";
logger.info("六级查询sql{}", querySQLSix);
List<BOReportNode> listSix = getResources(infoStore, querySQLSix);
logger.info("----六级列表END---\n{}", listSix);
for (BOReportNode nodeSix : listSix) {
boolean isfoldSix = nodeSix.isFold();
String idSix = nodeSix.getId();
if (isfoldSix) {
//六级列表
//为六级列表设置属性,设置子节点集合
String querySQLSeven = infoStoreQuery + idSix + " order by si_name asc";
List<BOReportNode> node7 = getResources(infoStore, querySQLSeven);
logger.info("----七级列表END---\n{}", node7);
}
}
}
}
}
}
}
}
}
}
}
}
} catch (Exception e) {
e.printStackTrace();
res = false;
}
return res;
}
/**
* @param infoStore
* @param infoStoreQuery 执行SQL
* @return
* @throws Exception
*/
public List<BOReportNode> getResources(IInfoStore infoStore, String infoStoreQuery) throws SDKException, Exception {
List<BOReportNode> list = new ArrayList<BOReportNode>();
try {
IInfoObjects infoObjects = infoStore.query(infoStoreQuery);
for (Object object : infoObjects) {
IInfoObject myReportWithParentFolder = (IInfoObject) object;
int id = myReportWithParentFolder.getID();
String text = myReportWithParentFolder.getTitle();
String kind = myReportWithParentFolder.getKind();
String cuid = myReportWithParentFolder.getCUID();
Date updates = myReportWithParentFolder.getUpdateTimeStamp();
int parentID = myReportWithParentFolder.getParentID();
BOReportNode node = new BOReportNode();
Map<String, Object> pd = new HashMap<>();
pd.put("cuid", cuid);
pd.put("text", text);
pd.put("flag", "1");
pd.put("modifytime", updates);
pd.put("parenetid", parentID);
pd.put("report_id", id);
if (kind.equals("Folder")) {
node.setId(id + "");
node.setCUID(cuid);
node.setText(text);
//boolean isKind = true;
node.setIsFold(true);
if (!text.equals("根文件夹")) {
//文件夹 数据库reportType值为2
pd.put("reporttype", "2");
//int rnum = (Integer)dao.update("BOReportMapper.updateReport", pd);
//if(rnum<=0){
// dao.save("BOReportMapper.insertReport", pd);
//}
logger.info("文件夹--{}", pd);
}
} else if (kind.equals("Webi") || kind.equals("AFDashboardPage")) {
//Webi 数据库reportType值为0
pd.put("reporttype", "0");
//int rnum = (Integer)dao.update("BOReportMapper.updateReport", pd);
//if(rnum<=0){
// dao.save("BOReportMapper.insertReport", pd);
//}
logger.info("Webi--{}", pd);
} else if (kind.equals("XL.XcelsiusEnterprise")) {
//XL.XcelsiusEnterprise显示为Dashboard 数据库reportType值为1
pd.put("reporttype", "1");
//int rnum = (Integer)dao.update("BOReportMapper.updateReport", pd);
//if(rnum<=0){
// dao.save("BOReportMapper.insertReport", pd);
//}
logger.info("Dashboard--{}", pd);
} else if (kind.equals("CrystalReport")) {
//CrystalReport显示为CR 数据库reportType值为3
pd.put("reporttype", "3");
//int rnum = (Integer)dao.update("BOReportMapper.updateReport", pd);
//if(rnum<=0){
// dao.save("BOReportMapper.insertReport", pd);
//}
logger.info("CrystalReport--{}", pd);
}
//根据文件名 过滤 临时文件
if (!"~WebIntelligence".equals(text) && node != null) {
list.add(node);
}
}
} catch (Exception e) {
e.printStackTrace();
}
return list;
}
}
如果仅仅是通过java登陆报表,那么需要的jar如下
bcm.jar
biplugins.jar
ceaspect.jar
cecore.jar
celib.jar
ceplugins_core.jar
ceplugins_cr.jar
cereports.jar
cesession.jar
com.springsource.org.aspectj.weaver-1.6.8.RELEASE.jar
corbaidl.jar
cryptojFIPS.jar
ebus405.jar
Flash.jar
logging.jar
SL_plugins.jar
TraceLog.jar
Xcelsius.jar
如果需要登陆和同步功能,那么需要的jar如下
bcm.jar
biplugins.jar
cdz_cluster_mgmt_types_idl.jar
ceaspect.jar
cecore.jar
celib.jar
ceplugins_core.jar
ceplugins_cr.jar
cereports.jar
cesession.jar
com.springsource.org.aspectj.weaver-1.6.8.RELEASE.jar
corbaidl.jar
cryptojFIPS.jar
CrystalEnterpriseRepository.jar
CrystalEnterpriseRepositoryService.jar
CrystalReportsRuntime.jar
CrystalReportsSDK.jar
CTPlugin_idl.jar
cvom.jar
dsl_desktop_plugin.jar
dsl_engine.jar
ebus405.jar
Flash.jar
GenericContainer_idl.jar
GenericContainer_proxy.jar
guice-1.0.jar
inproc_container.jar
logging.jar
org.eclipse.emf.common_2.4.0.v200902171115.jar
org.eclipse.emf.ecore.xmi_2.4.1.v200902171115.jar
org.eclipse.emf.ecore_2.4.2.v200902171115.jar
org.eclipse.equinox.common_3.4.0.v20080421-2006.jar
org.eclipse.equinox.registry_3.4.0.v20080516-0950.jar
org.eclipse.osgi_3.4.3.R34x_v20081215-1030.jar
rebean.common.jar
rebean.wi.adapter.jar
rebean.wi.jar
rebean.wi.model.jar
rebean.wi.server.jar
rebean.wi.server.requests.jar
rom.jar
sdk.core.jar
sdk.core.server.common.jar
sdk.core.server.corba.jar
sdk.core.server.jar
sdk.core.session.cms.jar
sdk.core.session.jar
SL_plugins.jar
TraceLog.jar
webi_proxies.jar
webreporting-jsf.jar
webreporting.jar
Xcelsius.jar
POM.xml
这里是因为,jar不在maven仓库里面,需要本地引入,打包的时候注意设置
<configuration>
<includeSystemScope>true</includeSystemScope>
</configuration>
jar我上传了,点击这里
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>bcm</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/bcm.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>biplugins</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/biplugins.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>ceaspect</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/ceaspect.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>cecore</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/cecore.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>celib</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/celib.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>ceplugins_core</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/ceplugins_core.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>ceplugins_cr</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/ceplugins_cr.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>cereports</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/cereports.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>cesession</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/cesession.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>com.springsource.org.aspectj.weaver-1.6.8.RELEASE</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/com.springsource.org.aspectj.weaver-1.6.8.RELEASE.jar
</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>corbaidl</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/corbaidl.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>cryptojFIPS</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/cryptojFIPS.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>ebus405</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/ebus405.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>Flash</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/Flash.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>logging</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/logging.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>SL_plugins</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/SL_plugins.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>TraceLog</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/TraceLog.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>Xcelsius</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/Xcelsius.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>rebeancommon</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/rebean.common.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>rebeanadapter</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/rebean.wi.adapter.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>sdkcore</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/sdk.core.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>rebean.wi</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/rebean.wi.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>rebean.wi.model</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/rebean.wi.model.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>guice</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/guice-1.0.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>sdk.core.session</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/sdk.core.session.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>sdk.core.server.common</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/sdk.core.server.common.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>sdk.core.server.corba</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/sdk.core.server.corba.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>sdk.core.server</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/sdk.core.server.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>sdk.core.session.cms</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/sdk.core.session.cms.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>sdk.core.session</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/sdk.core.session.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>rom</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/rom.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>rebean.wi.server</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/rebean.wi.server.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>rebean.wi.server.requests</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/rebean.wi.server.requests.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>inproc_container</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/inproc_container.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>CTPlugin_idl</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/CTPlugin_idl.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>cvom</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/cvom.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>dsl_desktop_plugin</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/dsl_desktop_plugin.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>dsl_engine</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/dsl_engine.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>org.eclipse.emf.common_2.4.0</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/org.eclipse.emf.common_2.4.0.v200902171115.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>org.eclipse.emf.ecore.xmi</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/org.eclipse.emf.ecore.xmi_2.4.1.v200902171115.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>org.eclipse.emf.ecore</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/org.eclipse.emf.ecore_2.4.2.v200902171115.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>org.eclipse.equinox.common</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/org.eclipse.equinox.common_3.4.0.v20080421-2006.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>org.eclipse.equinox.registry</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/org.eclipse.equinox.registry_3.4.0.v20080516-0950.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>org.eclipse.osgi</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/org.eclipse.osgi_3.4.3.R34x_v20081215-1030.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>cdz_cluster_mgmt_types_idl</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/cdz_cluster_mgmt_types_idl.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>GenericContainer_idl</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/GenericContainer_idl.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>GenericContainer_proxy</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/GenericContainer_proxy.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>webi_proxies</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/webi_proxies.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>webreporting-jsf</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/webreporting-jsf.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>webreporting</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/webreporting.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>CrystalEnterpriseRepository</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/CrystalEnterpriseRepository.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>CrystalEnterpriseRepositoryService</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/CrystalEnterpriseRepositoryService.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>CrystalReportsRuntime</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/CrystalReportsRuntime.jar</systemPath>
</dependency>
<dependency>
<groupId>sap.com</groupId>
<artifactId>CrystalReportsSDK</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/lib/CrystalReportsSDK.jar</systemPath>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<includeSystemScope>true</includeSystemScope>
</configuration>
</plugin>
</plugins>
</build>