Skip to main content
Announcements
Accelerate Your Success: Fuel your data and AI journey with the right services, delivered by our experts. Learn More
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Handle AWS Library Dependencies on job

Hello i have problem with using AWS SDK in my tJavaFlex code get this exception:

 

Exception in thread "main" java.lang.NoSuchMethodError: com.amazonaws.SDKGlobalConfiguration.isInRegionOptimizedModeEnabled()Z
at com.amazonaws.ClientConfigurationFactory.getConfig(ClientConfigurationFactory.java:35)
at com.amazonaws.client.builder.AwsClientBuilder.resolveClientConfiguration(AwsClientBuilder.java:167)
at com.amazonaws.client.builder.AwsClientBuilder.access$000(AwsClientBuilder.java:54)
at com.amazonaws.client.builder.AwsClientBuilder$SyncBuilderParams.<init>(AwsClientBuilder.java:478)
at com.amazonaws.client.builder.AwsClientBuilder.getSyncClientParams(AwsClientBuilder.java:419)
at com.amazonaws.client.builder.AwsSyncClientBuilder.build(AwsSyncClientBuilder.java:46)

 

After doing some googling, I found that this problem is because the AWS SDK dependencies, maybe because we are using sofware that is using old-Talend version (so don't tell to upgrade Talend version) so it still using old AWS SDK version. However, i have try to edit routine libraries in routines and setup routine libraries in code and see the libraries already installed in routines and jobs but in runtime the tJavaFlex still refers to old AWS SDK.

 

How to manage tJavaFlex component to use specific libraries/dependencies correctly?

Labels (1)
1 Solution

Accepted Solutions
Anonymous
Not applicable
Author

Already found solution need to change all the component dependencies in the folder plugins -> xxxlocalprovider -> components -> [Your Components] -> [component_name]_java.xml

 

Then import all the needed dependencies from external modules

View solution in original post

3 Replies
Anonymous
Not applicable
Author

Already found solution need to change all the component dependencies in the folder plugins -> xxxlocalprovider -> components -> [Your Components] -> [component_name]_java.xml

 

Then import all the needed dependencies from external modules

Anonymous
Not applicable
Author

Hi ,

 

Thanks for your post. It is helpful!

 

Could you please help me in knowing how you are handling AWS encryption through talend.

If you give me any sample talend job then that would be very useful.

Also would like to know about how you are using jars/libraries of AWS SDK in talend?

 

YPMAL
Contributor III
Contributor III

Could you please help me in knowing how you are handling AWS encryption through talend.

In there are two types of encryption

1) clientside

check encrypt box. give kms key.

2)serverside

check serverside encryption box give kms key

 

do not use both encryption at a time.

use JCE policies by replacing those jars in C:\Program Files\Java\jre1.8.0_77\lib\security

1)local_policy.jar

2)US_export_policy.jar

 

 

Also would like to know about how you are using jars/libraries of AWS SDK in talend?

download AWS SDK from aws website. size will be more than 300 MB

extract and rename aws-java-sdk-1.11.507.jar to requested sdk jar version name from component.