Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Join us to spark ideas for how to put the latest capabilities into action. Register here!
cancel
Showing results for 
Search instead for 
Did you mean: 
NRENAULT1648139979
Contributor
Contributor

FTPS error on tFTPput file to server

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)

Labels (2)
1 Solution

Accepted Solutions
Anonymous
Not applicable

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

https://stambia.org/kb/16-execution-issues/730-ftps-severs-forcing-to-reuse-ssl-tls-connection-throw...

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

View solution in original post

4 Replies
Anonymous
Not applicable

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

Anonymous
Not applicable

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

https://stambia.org/kb/16-execution-issues/730-ftps-severs-forcing-to-reuse-ssl-tls-connection-throw...

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

NRENAULT1648139979
Contributor
Contributor
Author

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

 

 

Anonymous
Not applicable

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