AWS S3 signing error

Hi there,

I migrated my local file storage to AWS S3 and I get the following error when uploading a new file to it (credentials seems valid).

java.lang.NullPointerException
	at com.haulmont.cuba.core.app.filestorage.amazon.auth.AWS4SignerBase.sign(AWS4SignerBase.java:235)
	at com.haulmont.cuba.core.app.filestorage.amazon.auth.AWS4SignerForChunkedUpload.computeSignature(AWS4SignerForChunkedUpload.java:137)
	at com.haulmont.cuba.core.app.filestorage.amazon.AmazonS3FileStorage.saveStream(AmazonS3FileStorage.java:82)
	at com.haulmont.cuba.core.sys.remoting.LocalFileExchangeServiceBean.uploadFile(LocalFileExchangeServiceBean.java:35)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
	at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:85)
	at com.haulmont.cuba.core.sys.ServiceInterceptor.aroundInvoke(ServiceInterceptor.java:117)
	at sun.reflect.GeneratedMethodAccessor128.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:629)
	at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:618)
	at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:70)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:168)
	at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)
	at com.sun.proxy.$Proxy262.uploadFile(Unknown Source)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.haulmont.cuba.core.sys.remoting.LocalServiceInvokerImpl.invoke(LocalServiceInvokerImpl.java:94)
	at com.haulmont.cuba.web.sys.remoting.LocalServiceProxy$LocalServiceInvocationHandler.invoke(LocalServiceProxy.java:154)
	at com.sun.proxy.$Proxy52.uploadFile(Unknown Source)
	at com.haulmont.cuba.client.sys.FileLoaderClientImpl.saveStreamLocally(FileLoaderClientImpl.java:186)
	at com.haulmont.cuba.client.sys.FileLoaderClientImpl.saveStream(FileLoaderClientImpl.java:87)
	at com.haulmont.cuba.client.sys.FileLoaderClientImpl.saveStream(FileLoaderClientImpl.java:71)
	at com.haulmont.cuba.gui.upload.FileUploading.uploadFileIntoStorage(FileUploading.java:273)
	at com.haulmont.cuba.gui.upload.FileUploading.putFileIntoStorage(FileUploading.java:233)
	at com.company.helium.web.substancedocument.SubstanceDocumentEdit.lambda$init$0(SubstanceDocumentEdit.java:49)
	at com.haulmont.bali.events.EventRouter.fireEvent(EventRouter.java:45)
	at com.haulmont.cuba.web.gui.components.WebFileUploadField.fireFileUploadSucceed(WebFileUploadField.java:470)

My environment:

Windows 10
Oracle jdk1.8.0_181
Cuba platform: platform-6.9.5

Any ideas ?

Thanks !!

Alejandro

Hi,
Did you setup the property cuba.amazonS3.region in the core application properties? Error says that cuba.amazonS3.region is empty.