Pertanyaan Java 7 mencegah transfer FTP pada Windows Vista dan 7 jika firewall aktif. Ada ide?


Java 7 mencegah transfer FTP pada Windows Vista dan 7.

Di FTP, sebelum file ditransfer, PORT atau perintah PASV harus dikirim. Segera setelah salah satu perintah dikirim, Windows Firewall menutup soket yang mengirimnya. Ini hanya terjadi jika firewall aktif dan pengecualian untuk java.exe tidak ada. Saya menduga masalah ini terkait dengan Java 7 menggunakan Vista IP stack yang baru.

Adakah yang punya ide bagaimana memperbaiki atau mengatasi masalah ini? Kami mendistribusikan perpustakaan FTP Jawa sehingga kami jelas tidak dapat menambahkan pengecualian sendiri.

Pengecualian:

java.net.SocketException: Permission denied: recv failed

Info versi JRE:

java version "1.7.0"
Java(TM) SE Runtime Environment (build 1.7.0-b147)
Java HotSpot(TM) 64-Bit Server VM (build 21.0-b17, mixed mode)

FOLLOW-UP 1 (14 November 2011): Oracle telah menganalisis masalah dan telah menemukan bahwa itu tampaknya menjadi bug di Windows Firewall dan / atau tumpukan IPv6. Mereka berhasil mereplikasi masalah dengan aplikasi asli C (yaitu non-Java), jadi ini adalah bukti kuat bahwa bug tidak ada di Java. Mereka telah memberi tahu Microsoft, jadi bola ada di pengadilan mereka sekarang. Detail lebih lanjut dapat ditemukan di http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7077696

FOLLOW-UP 2 (27 Juli 2012): Kontak A (sangat membantu) di Oracle mengatakan kepada saya bahwa masalah ini sekarang telah meningkat di Microsoft. Kami berharap dapat segera melihat beberapa hasil.

FOLLOW-UP 3 (15 Agustus 2012): Kontak kami di Oracle telah memberi tahu kami bahwa Microsoft telah menerima bug dan sedang dalam proses memprioritaskannya.

FOLLOW-UP 4 (21 September 2012): Microsoft telah menghasilkan patch yang saat ini sedang diuji oleh Oracle. Tidak ada kabar tentang tanggal rilis.

FOLLOW-UP 5 (11 Oktober 2012): Sukses akhirnya! Microsoft telah merilis sebuah publik perbaikan terbaru. Mereka mengisyaratkan bahwa perbaikan akan dimasukkan dalam pembaruan perangkat lunak umum di masa mendatang:

"jika Anda tidak terlalu terpengaruh oleh masalah ini, kami sarankan Anda menunggu pembaruan perangkat lunak berikutnya yang berisi perbaikan terbaru ini."


75
2017-08-09 02:02


asal


Jawaban:


Kami menguji perbaikan terbaru Windows http://support.microsoft.com/kb/2754804 dan menegaskan bahwa itu menyelesaikan masalah.


14
2017-11-01 15:41



Masalahnya disebabkan oleh filter FTP stateful dari firewall. Sebagai solusi, Anda dapat menonaktifkannya dengan mengeksekusi netsh advfirewall set global StatefulFTP disable dengan hak administrator.


88
2017-10-05 07:16



Saya telah mengirimkan laporan bug ke Oracle, lihat bugs.sun.com/bugdatabase/view_bug.do?bug_id=7077696 

Mereka telah menandai prioritas sebagai rendah, yang membuat saya berpikir bahwa mereka tidak mengerti besarnya masalah, yaitu FTP rusak di Java / Windows. Saya lupa menyatakan secara eksplisit dalam laporan bug. Jika ada yang merasa harus memiliki prioritas lebih tinggi, silakan tambahkan komentar ke laporan bug Oracle.

Saya hanya memperhatikan bahwa Anda juga dapat 'memilih' untuk bug, jadi tolong beri suara jika Anda setuju itu signifikan.


15
2017-08-24 04:46



Solusi lain adalah memulai JVM dengan:

-Djava.net.preferIPv4Stack=true

14
2017-11-25 02:05



Masalah ini dapat ditunjukkan tanpa JDK7, firewall di Windows 7 memblokir protokol ftp ketika aplikasi menggunakan alamat IPv4 yang dipetakan IPv6. Lihat http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7077696untuk detail dan solusi lebih lanjut.


4
2017-11-14 10:11



Blog tentang masalah ini di sini: http://podzemski.com/2011/09/12/java-7-prevents-ftp-transfers-on-windows-when-firewall-is-on/

Mungkin itu akan menyebabkan beberapa tambahan kesadaran masalah.


2
2017-09-12 14:52



Sebenarnya TFTP di bawah JDK7 pada windows 7 juga memiliki masalah yang sama, perbaikan terbaru MS tidak menyelesaikan masalah FTP, tetapi masih tidak berfungsi untuk TFTP. Tampaknya Oracle harus melaporkan masalah yang sama ke MS dan mendapatkan perbaikan terbaru lainnya untuk menyelesaikan masalah TFTP juga.


2
2017-12-10 07:47



Bug yang sama dilaporkan di sini dengan kasus uji: Java 7 Socket Exception Bug forum. Ini masalah dengan Java 7


1
2017-09-02 20:09



Saya memiliki masalah yang sama dengan menggunakan IDE Eclipse Neon, JAVA 7 dan Windows 7 Professional. Mencoba mengunggah file PDF ke server FTP. Saya memecahkannya dengan menjalankan perintah berikut di CMD sebagai administrator:

C: \ Users \ pc01> netsh advfirewall set global StatefulFTP disable

0
2018-03-16 14:55