The S3 connector for APS does not work with GovCloud, though GovCloud is in the enum region list of the SDK. The regions is not set for the s3 client therefore it defaults to something else. APS does not provide bucket location/region or endpoint properties to set.
There are a few main issues:
1 > We do not set the region, the region defaults to default provider and in this case fails with GovCloud. The regions are enumerated so can be set from this.
2 > AmazonS3Client is deprecated. We are using a deprecated method for s3 client.
3 > version sdk is outdated: aws-java-sdk-s3-1.11.335.jar (22.214.171.124 APS), current version 1.11.473
Customer (Jeff Potts provided a fix, which workS by getting and setting the region from the list of enum regions in the source code (com.activiti.content.storage.s3.AmazonS3ContentStorage) with the deprecated AmazonS3Client method.
But in actuality this should be fixed to use the non-deprecated AmazonS3ClientBuilder:
- set S3 configuration for APS using GovCloud bucket
APS 126.96.36.199 uses
so, s3 version 1.11.335 : http://central.maven.org/maven2/com/amazonaws/aws-java-sdk-s3/1.11.335/
Looking at the sources jar for 1.11.335 sdk s3, it includes US_GovCloud("us-gov-west-1") in the enum Region list. So the region is available (enumerated) in the aws-java-sdk-s3 that is in use. But it does not work with our implementation.
The AmazonS3Client is deprecated. Instead the AmazonS3ClientBuilder should be used.