Hi, I am working on a project where we are using webMethods IS 6.0.1 to communicate to external vendors using FTP. There has been a very frequent problem of ftp failure during login, cd, ls or put/get. The suggested approach for this is to retry putting/getting file multiple times so that one of the retry gets successful.
I have implemented the same logic and I am retrying to put/get the file in the same instance (same flow).
So if my current flow is
and if my ftp fails in “put/get” then I am doing following.
The main reason of failure during put/get is that it could not able to get the data port thru which the data is transferred.
My question here is…
Do we need to logout and then re-login to ftp server and then do get/put OR it should be ok even if we directly do get/put.
Its bit difficult to test out this scenario during testing as it is very spontaneous and occurs once in a while.
Has any body dealt with such a scenario and has a resolution for this.
Thanks for the help.
FTP Services of webMethods are as such very much reliable, unless the network connection you operate on is not stable.
A few questions for you:
Do you use a firewall between webMethods server and your ftp server? what are the settings on firewall?
Does your firewall restrict you to get an ftp data connection on certain ports?
As I understand, you do not have a login issue. It is always with put and get. It is very likely that it is at the firewall level.
Thanks Chirag, We do have a firewall between wm server and ftp server. The wm server is an NT server which “some times” does not get the data port during ls/get/put.
It is definately a firewall issue but the network guys says that it is the issues with Microsoft NT server that when it tries to get a higher port sometimes it fails.
So we are trying to fix this problem at the application level.
Now i think you should try
- with dataport parameter of webMethods’ login service (and specify ports that can be used by your firewall)
- to Use Passive mode of transfer
I have not used them, but as per documentation, it should help you.
Is your problem solved now? or not yet?
As far as what I understand, dataport at server end is always fixed, it is normally the application that determines receiving ports.