web-dev-qa-db-ja.com

JSch経由のSFTPがエラー4をスローしています:失敗

WindowsからUnixサーバーにファイルをSFTPで転送しようとすると、特有の問題が発生します。エラー「スタックトレース」は-

4: Failure
    at com.jcraft.jsch.ChannelSftp.throwStatusError(ChannelSftp.Java:2846)
    at com.jcraft.jsch.ChannelSftp.checkStatus(ChannelSftp.Java:2459)
    at com.jcraft.jsch.ChannelSftp._sendCLOSE(ChannelSftp.Java:2465)
    at com.jcraft.jsch.ChannelSftp._put(ChannelSftp.Java:683)
    at com.jcraft.jsch.ChannelSftp.put(ChannelSftp.Java:475)
    at com.jcraft.jsch.ChannelSftp.put(ChannelSftp.Java:365)

他のフォーラムでたくさん検索しましたが、根本的な原因を見つけることができませんでした。もう1つ確認しました。ファイル名は、SFTPを実行しようとしていますが、*。XMLに変更すると* .xmlになり、SFTPは「成功」します。非常に奇妙なことに問題を特定できませんでした。 JSch Java APIを使用してこれを試しています。しかし、WinSCPフロントエンドを試しているときに同じ問題が発生しました。

11
s4ik4t
10
Martin Prikryl

私は同じ問題に直面していました。 SFTPサービスが実行されていることを確認してください。そして、それがすでに実行されている場合は、このサービスを再起動することでうまくいくはずです。

1

私も同じ問題を抱えていました。すべてを試しましたが、タイムアウトを30秒と思っていたものに設定していましたが、実際には30ミリ秒でした。 30000msに変更すると、問題が解決しました。

session.setTimeout(30000);
0
MikeKulls