Overview
Contains multiple Smart Services for interacting with a remote file server via SFTP, FTP, or SCP. Using these services, an Appian application can be configured to send and receive files, folders, and metadata in a process. Features support for zlib compression.
Key Features & Functionality
Smart Services included:
All smart services in the package use Secure Credentials Store.
meenakshikHi,What all possible values are being returned by output parameters 'Error' and 'Status'?I found datatype for both these parameters is TEXT. So it will be helpful if you can enlist all possible values returned by these 2 output parameters.Thank you!
Remote FIle Path has to be configured as a directory .Eg:/opt or /home/ubuntu where home and ubuntu are directories file name has to be configured in the parameter file name. We suspect Compass_" & text(now(),"MM_DD_YYYY") & ".zip" is a file name and it cannot be configured as a remote file path hence the error is thrown
raghulvishnudPlease check following (input: value):External System Key: appian-merlin-sftpUse Per User Credentials: FalsePrivate Key: Merlin Identity (details at end of the message)Server Hostname: test-secureftp.cna.comServer Port: 22Remote File Path: "Compass_" & text(now(),"MM_DD_YYYY") & ".zip"
Merlin Identity file:
-----BEGIN RSA PRIVATE KEY-----Proc-Type: 4,ENCRYPTEDDEK-Info: AES-128-CBC,2FF74BC9B27D3222AD7BF30470ABF1F2
KIgxvkwHuzXCwHO2ivNEWAtJK3vaDVHDWGnBkjV6WxJHDjCDW6hBYHJzF5fYxhyvOze6K8A+x+fskeZUogE0LRS4+GSjH4r1bjfvPKwvi9PrHyiEzVe9fRlMmLoAKVFsC2XpyrHnDs7XbP2Jv4WATOKemtMzYSIJgGef5iJPkqqvQINGd3jFW/AsXMkZPcHMjJgP4e+AQxg28bWRhod3W5wIJEUDYB49hPzFzDbBFSOUSymTn00buMhxS+IzNAcptr9mKJ0AdbRBF0KFsdeRp4fPy5OzkxCk3hUYcThbJ0ilBt8NaqoxQ9ieZPBeQH7KosG1Hp8cwKbVm4Lj6nwuEBkqfzbM61Iya3InRPMunK5TWX9qNuPodO6kUZdkW/vx4x9wGH72S4j1nTxOjrLs9t9t8RCyYxw/VYHkqC8v3iUc/1NNfpl33D4CsIyQZB4zKN7ghBn1XxeaH9rd7cnUt2Or9WqP36TchUDAaxVW8EvGUgG2LYr0sl64K5AEZQlKJt3uPBhG8UZaRJIP3hC+fNLvPlvSzRfYVfU0sjC7dcIA6It0N6oLmNf4IgsKOTt0ihNkFKTKz8SxrUmKTdsCy4Ux8K4Cbe7bRaCDKUQlaZZQuqWl3z2xZ9AaJYOLfDXOj+DvMNPzjhRYyrKXQxFJHxrr7DU2rSuEBcXvmCcRKyMrAXmOYT8hxE8njwBTGvHYYkQ1VYlRWR1D5lETZo+opYWvnko5tfY8p128m6HIEBO3dMaUHNhIVayJXpvqG5mVJ80/jgS5OSR/Iac/qiPp7/6GSbcZcSoMNm6g/9Oded2BhDhkehyBZmT1rn2l+XrETRNL87APeLFT3BdhX9HbFLPPzP2ayhoBGmcekRK4taFu4zoggavbKneIVRDoykwKCmmH7Px/kvfxPhcEs+MlqPYPTIagcxjef7VoTGhMTbTCbQzi4X7ol0vmusSsp/Y79Det8/0h+H79KFKLJSzSvBIummDkEfH98uJspsUfgy520FczkUNvqzirPApn9badfO2isDib1TMUge60e5KMO4M12k4YJDC4lzmc4p76Ih+17R3jkqawT/oJVjPxwOYC2EyO+iMp4N1tqpiV2Pab4En2T1V+1u038E5OwhWxWMAO2uQdTJaxWevWEV+t30AaWkXgN4EoR+5zGodFZKMpjd/ts6+nVs+eNx/mXjf/yWXxOt61/ICHlzh+d4fwasWAwm7YhEE7PmIJyI7jG/RHjTfzLPWth0qhuwycHlWQtPerimpAIYgI493tFWpFjzu3xxYH4FjgR+6rV6NEDAbSFpB1agheeOA8DU53YPjIZj0JL+pZqoVx0Q9sxwEBtijAUbQ1SeJxtyEPQ/kkDs0edPbqNx7GLOvjjVIV5EEu+TQZtomPVVWmGHQHIjP0RnLXgtheba5RjUf0MSENkGcLouKNRKB+YnitOysHOhoerPP35RtBeQA3IL9/nuZWkkMRkGQ4ORoYoCaz0hew9dxoKsebFOZ2R2+PE26KXbCvWrX7hT2rewo5pvrkVMY5qAkkZZHZoOultL4SEZI3Z1cUPqKYxFvi9+IWLGdEwPM9cDEMdxEAirEUwUSHkFMvJoO+-----END RSA PRIVATE KEY-----
The above-mentiioned node is supported in the plugin and works perfectly in our environment. Please share with us the configured inputs for the nodes for all the input parameters like remote file path and file name
raghulvishnudI'm sorry I didn't quite get that. Would you please rephrase?This is what current node type is I'm trying to use:Send File Over SFTP (com.appiancorp.a2.process.runtime.activities.sftp.SendFileOverSFTPwithSCSUsernameAndPasswordV3)
Please share us with our configurations on the node.In case of deprecated instances We have handled the code only after 2.0.0 versions, our plugin keys are SendFileOverSFTPwithSCSUsernameAndPasswordV3 and SendFileOverSFTPwithSCSUsernameAndPasswordV2.If you are referencing any other plugin keys ,for older instances please raise a support ticket with Appian to revert the plugin to the older 1.6.2 version
raghulvishnudPFA log file as you requested.
2021-09-03 12:33:49,943 [Appian Work Item - 18897 - execution02 : UnattendedJavaActivityRequest] ERROR com.appian.ps.plugins.sftpsmartservices.SendFileOverSFTP - Error transferring file to SFTP server 2: The system cannot find the path specified. at com.jcraft.jsch.ChannelSftp.throwStatusError(ChannelSftp.java:2873) at com.jcraft.jsch.ChannelSftp._put(ChannelSftp.java:594) at com.jcraft.jsch.ChannelSftp.put(ChannelSftp.java:540) at com.jcraft.jsch.ChannelSftp.put(ChannelSftp.java:492) at com.appian.ps.plugins.sftpsmartservices.SendFileOverSFTP.run(SendFileOverSFTP.java:150) at com.appiancorp.process.runtime.framework.DefaultActivityExecutor$1.lambda$call$0(DefaultActivityExecutor.java:131) at com.appiancorp.plugins.PluginUsageLogger.runWithPluginInformation(PluginUsageLogger.java:52) at com.appiancorp.process.runtime.framework.DefaultActivityExecutor$1.call(DefaultActivityExecutor.java:131) at com.appiancorp.process.runtime.framework.DefaultActivityExecutor$1.call(DefaultActivityExecutor.java:125) at com.appiancorp.common.ContextClassLoaderSwitcher.runInContext(ContextClassLoaderSwitcher.java:27) at com.appiancorp.process.runtime.framework.DefaultActivityExecutor.execute(DefaultActivityExecutor.java:125) at com.appiancorp.process.engine.UnattendedJavaActivityRequest.execute(UnattendedJavaActivityRequest.java:88) at com.appiancorp.process.engine.UnattendedJavaActivityRequestResponseCreator.getJavaActivityResultResponse(UnattendedJavaActivityRequestResponseCreator.java:21) at com.appiancorp.process.engine.UnattendedJavaActivityRequest.getJavaActivityResultResponse(UnattendedJavaActivityRequest.java:67) at com.appiancorp.process.engine.UnattendedJavaActivityRequest.execute0(UnattendedJavaActivityRequest.java:55) at com.appiancorp.common.persistence.data.AppianDataUserContextProvider.executeWithConsistentDataReads(AppianDataUserContextProvider.java:116) at com.appiancorp.process.engine.ProcessContinuationRequest.executeOuter(ProcessContinuationRequest.java:68) at com.appiancorp.process.engine.ContinuationRequest.execute(ContinuationRequest.java:123) at com.appiancorp.process.workpoller.UnattendedRequestHandlerBean.onMessage(UnattendedRequestHandlerBean.java:36) at com.appiancorp.process.workpoller.WorkItem.run(WorkItem.java:94) at org.springframework.jca.work.SimpleTaskWorkManager$DelegatingWorkAdapter.run(SimpleTaskWorkManager.java:239) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) 2021-09-03 12:37:31,431 [Timer-4] INFO com.appiancorp.cache.DatabaseAuxiliaryCache - Removing expired entries from db cache: uiState-auxiliary 2021-09-03 12:38:10,939 [Appian Timer - 1] WARN com.appiancorp.common.ObjectSynchronizer - 1 services were missing users. 2021-09-03 12:38:51,209 [Appian Work Item - 18898 - execution02 : UnattendedJavaActivityRequest] ERROR com.appian.ps.plugins.sftpsmartservices.SendFileOverSFTP - Error transferring file to SFTP server 2: The system cannot find the path specified. at com.jcraft.jsch.ChannelSftp.throwStatusError(ChannelSftp.java:2873) at com.jcraft.jsch.ChannelSftp._put(ChannelSftp.java:594) at com.jcraft.jsch.ChannelSftp.put(ChannelSftp.java:540) at com.jcraft.jsch.ChannelSftp.put(ChannelSftp.java:492) at com.appian.ps.plugins.sftpsmartservices.SendFileOverSFTP.run(SendFileOverSFTP.java:150) at com.appiancorp.process.runtime.framework.DefaultActivityExecutor$1.lambda$call$0(DefaultActivityExecutor.java:131) at com.appiancorp.plugins.PluginUsageLogger.runWithPluginInformation(PluginUsageLogger.java:52) at com.appiancorp.process.runtime.framework.DefaultActivityExecutor$1.call(DefaultActivityExecutor.java:131) at com.appiancorp.process.runtime.framework.DefaultActivityExecutor$1.call(DefaultActivityExecutor.java:125) at com.appiancorp.common.ContextClassLoaderSwitcher.runInContext(ContextClassLoaderSwitcher.java:27) at com.appiancorp.process.runtime.framework.DefaultActivityExecutor.execute(DefaultActivityExecutor.java:125) at com.appiancorp.process.engine.UnattendedJavaActivityRequest.execute(UnattendedJavaActivityRequest.java:88) at com.appiancorp.process.engine.UnattendedJavaActivityRequestResponseCreator.getJavaActivityResultResponse(UnattendedJavaActivityRequestResponseCreator.java:21) at com.appiancorp.process.engine.UnattendedJavaActivityRequest.getJavaActivityResultResponse(UnattendedJavaActivityRequest.java:67) at com.appiancorp.process.engine.UnattendedJavaActivityRequest.execute0(UnattendedJavaActivityRequest.java:55) at com.appiancorp.common.persistence.data.AppianDataUserContextProvider.executeWithConsistentDataReads(AppianDataUserContextProvider.java:116) at com.appiancorp.process.engine.ProcessContinuationRequest.executeOuter(ProcessContinuationRequest.java:68) at com.appiancorp.process.engine.ContinuationRequest.execute(ContinuationRequest.java:123) at com.appiancorp.process.workpoller.UnattendedRequestHandlerBean.onMessage(UnattendedRequestHandlerBean.java:36) at com.appiancorp.process.workpoller.WorkItem.run(WorkItem.java:94) at org.springframework.jca.work.SimpleTaskWorkManager$DelegatingWorkAdapter.run(SimpleTaskWorkManager.java:239) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)
raghulvishnud
SFTP node has been configured correctly as it was with earlier version. It had been working fine.
Also, being able to file over SFTP via SecureFX.
Need help urgently please.
The error means the file path configured is either not reachable/user does not have enough permissions to access the remote server location.Please check if you are able to send the file over SFTP from WinSCP and if the issues still persist please share with us the configuration of the node and the server log file
Thank you.
After upgrade to 2.2.1 and using new nodes to connect to SFTP I’ve started getting following error: “The system cannot find the path specified”.
Earlier(before upgrading) it’s been working fine with all same data fed to input parameters of deprecated nodes.
Any leads, please?
The status will have either - FAILED, SUCCESS
Error-Will have value only if some exceptions occur in code, will have the corresponding exception message as text
Hi Arpit
We cannot make a change for this issue as the absolute path is required in other cases and security concerns to provide relative path support. We will provide you with a changed .text file with the older code. Please replace the changes to smart service and make it a private deployment for your use case
raghulvishnudI've tried what we discussed yesterday in the meeting; it's not working.Would you please now help with another way? Like you mentioned adding Boolean in the plug-in.
Hi Arpit ,
As per our analysis, the code has been changed such that the remote file path will be the directory path of the file to create relative from the logged-in user.
Please try out the following "" and "/" in the remote file path and share us the results
raghulvishnudHi Raghul,Any update please?
raghulvishnudSure, I'll be waiting for the response.Thank you!
sure we will analyse and get back to you asap
raghulvishnudAs we spoke over call and requested for JARs. Here you go:stfp-535035.zip
Hi Arpit,
We assume you have passed the parent directory path(not including the file name which you are passing) for the remote file path and source document as an Appian document for the file to send parameters.
We would like to schedule a call on Monday via zoom.Please send us your contact information and time u would like to connect over the email to mail team.int.swatcustomdev@vuram.com .
It would also be helpful if you could share the log files and the error you are receiving in the same email
I tried fully qualified path as well but doesn’t work.
Please let me know how can I connect with you over a call.
There has been a lot of revisions made between 1.6.2 and 2.2.1. File to send now expects the Appian document location and Remote file path expects the path to the directory.Please find the below snapshot were the configurations were working
If still not working we can connect over call