欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

开源OA系统搭建教程:在服务或代理中实现sftp的上传

程序员文章站 2022-03-03 11:58:30
...

 

 

开源OA系统搭建教程:在服务或代理中实现sftp的上传
            
    
    博客分类: O2OA二次开发手册企业信息化系统架构企业信息化系统 O2OAjava开源OA系统办公OA 

 

一、 功能介绍

 

通过在o2服务管理下的代理服务或接口服务中实现sftp上传。

 

 

 

二、以接口服务为例

 

    从菜单进入应用-服务管理-接口配置,新建一个接口代码如下:

 

/********************

 

this.entityManager; //实体管理器

 

this.applications; //访问系统内服务

 

this.requestText//请求正文

 

this.request//请求

 

this.currentPerson//当前用户

 

this.response//响应对象。通过this.response.setBody(data)设置响应内容

 

this.organization; //组织访问

 

this.org; //组织快速访问方法

 

this.service; //webSerivces客户端

 

********************/

 

try {

 

varStandardFileSystemManager = Java.type('org.apache.commons.vfs2.impl.StandardFileSystemManager');

 

var manager = newStandardFileSystemManager();

 

manager.init();

 

print("ok---------------1")

 

varNameValuePair = Java.type('org.apache.commons.vfs2.provider.sftp.SftpFileSystemConfigBuilder');

 

var sftpBuilder = NameValuePair.getInstance();

 

varFileSystemOptions = Java.type('org.apache.commons.vfs2.FileSystemOptions');

 

var opts = newFileSystemOptions();

 

sftpBuilder.setStrictHostKeyChecking(opts, "no");

 

sftpBuilder.setUserDirIsRoot(opts, true);

 

sftpBuilder.setTimeout(opts, 10000);

 

print("ok---------------2")

 

//sftp用户名

 

var sftpuser = "root";

 

//sftp密码

 

var sftppassword = "xxxxx";

 

//sftp主机ip

 

var sftphost = "xxxxxx";

 

//sftp远程目录

 

var remoteDownLoadPath = "/home/taizhangsftp/history.json";

 

//sftp本地目录

 

var localDires = "/data/o2server/local/temp/history.json";

 

var sftpUri = "sftp://"+sftpuser+":"+sftppassword+"@"+sftphost+remoteDownLoadPath;

 

print("sftpUri="+sftpUri);

 

varFile = Java.type('java.io.File');

 

var fileObj = newFile(localDires);

 

var localFile = manager.resolveFile(fileObj.getAbsolutePath());

 

var remoteFile = manager.resolveFile(sftpUri, opts);

 

varSelectors = Java.type('org.apache.commons.vfs2.Selectors');

 

localFile.copyFrom(remoteFile, Selectors.SELECT_SELF);

 

print("ok---------------3");

 

} catch (e) {

 

print("sftp上传错误");

 

print(e);

 

}

 

"xxxx";

 

 

 

三、运行接口

 

运行接口结果如图:

 

开源OA系统搭建教程:在服务或代理中实现sftp的上传
            
    
    博客分类: O2OA二次开发手册企业信息化系统架构企业信息化系统 O2OAjava开源OA系统办公OA 

 

开源OA系统搭建教程:在服务或代理中实现sftp的上传
            
    
    博客分类: O2OA二次开发手册企业信息化系统架构企业信息化系统 O2OAjava开源OA系统办公OA 

 

开源OA系统搭建教程:在服务或代理中实现sftp的上传
            
    
    博客分类: O2OA二次开发手册企业信息化系统架构企业信息化系统 O2OAjava开源OA系统办公OA