2012-04-30 9 views
0

私はApacheのコモンズJavaライブラリを使用してファイルをftpサーバーに格納しようとしています。私はcommons-net-3.0.1.jarを使用しています。私は、サーバーへのファイル、呼び出しapacheを使用してftpサーバーにファイルを保存します。コモンズが動作しません。

StoreFile()常にfalse

リターンを押ししようとすると、これまでの問題があります。例外をスローしません。何もない、ただ黙って返信する。もし私がftpコマンドを使ってftpサーバに接続し、putコマンドを使ってファイルを保存することを意味する、Linuxシステムの通常の "ftp"クライアントを使って手動でファイルをプッシュしようとすると、ファイルがサーバに置かれます。

私はそれをデバッグする方法も知らない。問題とその解決策をどのように知ることができるか教えてください。

サーバーログをチェックしましたが、私がJava経由でポストしようとしているときに、ログに425の応答コードが接続を確立できませんでした。しかし、私は手動でそれを使用して226の応答を示します。

+0

の両方で同じユーザー名とパスワードを使用していることを確認してください。少なくとも、Javaアプリケーションが必要な権限を持つ資格情報を使用していることを確認してください。あなたが使用しているコードを投稿することも役に立ちます。 – npinti

+0

'commons-net'はopensourceです。あなたはそのコードにデバッグしようとすることができます。 –

+0

@npinti: - 資格情報は同じです。サーバログには "Login successfull"と表示されます – Thebestshoot

答えて

0

注:FTPは、コード付きのサーバーとの間でデータをアップロード/ダウンロードするための信頼性の高いプロトコルではありません。信頼できるソリューションが必要な場合は、FTPはあなたのためではありません。代わりにsshを試してみてください。

ご質問にお答えください:SocketClientProtocolCommandListenerを追加してください(FTPこれを拡張)。 ProtocolCommandListener()protocolReplyReceived()

+0

私はこれをうまくやってみましたが、天気をデバッグするためのツールをいくつか持っていますか?データが正しく出るかどうか、そしてコマンドについては、私はこの問題をどうやって解決するのですか? 、もし私がこのコードを持っていなかったら? – Thebestshoot

+0

あなたのアプリにロギングフレームワークを追加する。これらのファイルは、アプリと共に配置できるファイルで設定できます。こうすることで、必要に応じてログを有効/無効にすることができます。つまり:FTPはプロダクションでの使用に適したプロトコルではありません。これは、自動エラー回復ではなく、人間のために設計されているので、同じ問題を何度も何度も修正するために毎週2時間を費やしています。 –

関連する問題