Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi,
talend v8.0.1.2021.1109_1610
java 11.0.13
simple job with tFTPconnection --> tFTPfile_Exist ->tFTPput
using ftp : it's works !
using ftps : it's not working.
tFTPconnection OK --> tFTPfile_Exist -> true -> tFTPput
So connection is ok (we create de jks file and use it)
we check if a directory exist and componant send true (we see the log on the server).
but when the transfert start and error ocur
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.talend.ftp.SSLSessionReuseFTPSClient (file:/D:/Talend/TOS_DI-8.0.1/studio/configuration/.m2/repository/org/talend/components/lib/commons-net-ftps-proxy/3.6.1-talend-20200902/commons-net-ftps-proxy-3.6.1-talend-20200902.jar) to field sun.security.ssl.SSLSessionContextImpl.sessionHostPortCache
WARNING: Please consider reporting this to the maintainers of org.talend.ftp.SSLSessionReuseFTPSClient
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
Exception in component tFTPPut_1 (test)
javax.net.ssl.SSLHandshakeException: Remote host terminated the handshake
at java.base/sun.security.ssl.SSLSocketImpl.handleEOF(SSLSocketImpl.java:1538)
at java.base/sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:1377)
at java.base/sun.security.ssl.SSLSocketImpl.readHandshakeRecord(SSLSocketImpl.java:1278)
at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:401)
at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:373)
at org.apache.commons.net.ftp.FTPSClient.
openDataConnection(FTPSClient.java:646)
at org.apache.commons.net.ftp.FTPClient.
openDataConnection(FTPClient.java:785)
at org.apache.commons.net.ftp.FTPClient.listNames(FTPClient.java:2905)
at org.apache.commons.net.ftp.FTPClient.listNames(FTPClient.java:2956)
at i_cfdp.test_0_1.test.tFTPPut_1Process(test.java:869)
at i_cfdp.test_0_1.test.tFTPFileExist_1Process(test.java:717)
at i_cfdp.test_0_1.test.tFTPConnection_2Process(test.java:565)
at i_cfdp.test_0_1.test.runJobInTOS(test.java:1207)
at i_cfdp.test_0_1.test.main(test.java:1045)
Caused by: java.io.EOFException: SSL peer shut down incorrectly
at java.base/sun.security.ssl.SSLSocketInputRecord.read(SSLSocketInputRecord.java:483)
at java.base/sun.security.ssl.SSLSocketInputRecord.readHeader(SSLSocketInputRecord.java:472)
at java.base/sun.security.ssl.SSLSocketInputRecord.decode(SSLSocketInputRecord.java:160)
at java.base/sun.security.ssl.SSLTransport.decode(SSLTransport.java:110)
at java.base/sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:1369)
if on server side we disable ssl session resumption it's work but we cannot stay without this option.
So is someone that have this problem and have a solution ?
tell me if you want more informations.
regards
Nicolas
(sorry for bad english)
Hello,
I saw this workaround before:
System.setProperty("jdk.tls.useExtendedMasterSecret", "false");
https://www.oracle.com/technetwork/java/javase/8u161-relnotes-4021379.html
http://bugs.java.com/view_bug.do?bug_id=JDK-8148421 and
Since 1.8u161 users or higher need to configure their java settings and set
It's not safe to add this by default in our ftp components, however, you could add a tJava component executed before the ftp connection and
call the code below in this tJava component.
System.setProperty("jdk.tls.useExtendedMasterSecret", "false");
Let us know if it helps.
Best regards
Sabrina
Have you followed the steps here?
https://community.talend.com/s/article/Specifying-a-keystore-file-of-a-tFTPConnection-with-FTPS-support-JXZHQ?language=en_US
Hello,
I saw this workaround before:
System.setProperty("jdk.tls.useExtendedMasterSecret", "false");
https://www.oracle.com/technetwork/java/javase/8u161-relnotes-4021379.html
http://bugs.java.com/view_bug.do?bug_id=JDK-8148421 and
Since 1.8u161 users or higher need to configure their java settings and set
It's not safe to add this by default in our ftp components, however, you could add a tJava component executed before the ftp connection and
call the code below in this tJava component.
System.setProperty("jdk.tls.useExtendedMasterSecret", "false");
Let us know if it helps.
Best regards
Sabrina
Hi,
With the indication of Sabrina , it's works . ftps file transfert succeded.
Thanks a lot !
last words , in the job log we have these warning :
----
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.talend.ftp.SSLSessionReuseFTPSClient (file:/D:/Talend/TOS_DI-8.0.1/studio/configuration/.m2/repository/org/talend/components/lib/commons-net-ftps-proxy/3.6.1-talend-20200902/commons-net-ftps-proxy-3.6.1-talend-20200902.jar) to field sun.security.ssl.SSLSessionContextImpl.sessionHostPortCache
WARNING: Please consider reporting this to the maintainers of org.talend.ftp.SSLSessionReuseFTPSClient
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
----
can you send this to the maintener ?
Regards,
Nicolas
Hello,
These error messages are Java side and it appears like this is a known warning with Open Zulu JDK11 regarding the Reflection packages in Java. This warning is telling you that this is a feature that might be restricted (or not available) in the future. This typically will not prevent the Job from running or completing.
Hope it helps.
Best regards
Sabrina