開源OA系統搭建教程:在服務或代理中實現sftp的上傳
一、 功能介紹
通過在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 {
var StandardFileSystemManager = Java .type( 'org.apache.commons.vfs2.impl.StandardFileSystemManager' );
var manager = new StandardFileSystemManager ();
manager.init();
print( "ok---------------1" )
var NameValuePair = Java .type( 'org.apache.commons.vfs2.provider.sftp.SftpFileSystemConfigBuilder' );
var sftpBuilder = NameValuePair .getInstance();
var FileSystemOptions = Java .type( 'org.apache.commons.vfs2.FileSystemOptions' );
var opts = new FileSystemOptions ();
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);
var File = Java .type( 'java.io.File' );
var fileObj = new File (localDires);
var localFile = manager.resolveFile(fileObj.getAbsolutePath());
var remoteFile = manager.resolveFile(sftpUri, opts);
var Selectors = Java .type( 'org.apache.commons.vfs2.Selectors' );
localFile.copyFrom(remoteFile, Selectors . SELECT_SELF );
print( "ok---------------3" );
} catch (e) {
print( "sftp上傳錯誤" );
print(e);
}
"xxxx" ;
三、執行介面
執行介面結果如圖:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31563356/viewspace-2795355/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SFTP服務搭建FTP
- CentOS7系統搭建SFTP教程。CentOSFTP
- java實現sftp檔案的上傳下載JavaFTP
- 傳說中的開源 vs 現實中的開源
- 使用SecureCRT的SFTP將檔案上傳到Liunx系統上SecurecrtFTP
- 在nginx上搭建php服務NginxPHP
- CentOS上搭建SFTPCentOSFTP
- sftp 上傳類FTP
- PHP實現代理服務功能PHP
- 在Mac系統上安裝redis服務MacRedis
- 在海外代理IP服務中,如何使用代理IP
- Rust中實現使用者上傳功能的開源專案Rust
- win10如何設定ccproxy代理服務工具_win10系統ccproxy代理服務工具操作教程Win10
- 基於windows系統上搭建git-server服務WindowsGitServer
- 如何快速搭建Linux系統中Samba服務LinuxSamba
- OA辦公系統之CRM系統,充分實現代理商往來管理(一)
- 請大家推薦個開源的OA系統
- Ubuntu16.04開啟SFTP服務UbuntuFTP
- 在 Java 中利用 redis 實現 LBS 服務JavaRedis
- 利用基於samba服務的cifs檔案系統實現共享資源Samba
- 在CentOS上利用mailx搭建郵件服務CentOSAI
- Win10系統下如何開啟或關閉印表機服務【圖文教程】Win10
- .NET 實現的互動式 OA 系統
- YARP實現Dapr服務呼叫的反向代理
- 在 Linux 系統中如何管理 systemd 服務Linux
- 在Github上,如何成為一個為開源服務的園丁Github
- 在Ubuntu上開啟SSH服務Ubuntu
- 《如何將windows上的軟體包或檔案上傳到linux服務上》WindowsLinux
- 使用unbound在RHEL7上搭建DNS服務DNS
- 在Linux作業系統上使用光碟搭建yum源Linux作業系統
- OA系統價格太昂貴?來用開源專案搭建一個吧!
- Win10系統下開啟或關閉定位服務的方法Win10
- 免費OA系統,點晴OA以務實理念做產品
- 在Linux中,如何配置和管理系統服務?Linux
- Kotlin + Netty 在 Android 上實現 Socket 的服務端KotlinNettyAndroid服務端
- 網校系統搭建服務:線上教育直播系統開發目前面臨的困境
- 在Linux中,如何把系統中不用服務關掉?Linux
- 使用官方開源專案搭建自有Overleaf服務