2013-07-20 3 views
0
내가

java.security.InvalidAlgorithmParameterException jClouds MS 푸른 물방울 넣어 동안 작동

context = new BlobStoreContextFactory().createContext(
        this.storageType, 
        this.storageAccount, 
        this.primaryAccessKey); 

    BlobStore blobStore = context.getBlobStore(); 
       Blob blob = blobStore.blobBuilder(fileName).payload(content).build(); //$NON-NLS-1$ 
       blobStore.putBlob(this.containerName, blob); 

내가 액세스 키를 관리에서 기본 액세스 키를 설정하고 풋 조작으로 jClouds AzureBlob API를 사용하여 문제를 직면하고

->에 대한 기본 액세스 키 내 스토리지 계정 그것은 위의 스택 트레이스 "ERROR/error_20130717022518962.xml"에서 오류

org.jclouds.http.HttpResponseException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty connecting to PUT https://mypackages.blob.core.windows.net/mycontainer/ERROR/error_20130717022518962.xml HTTP/1.1 
    at org.jclouds.http.internal.BaseHttpCommandExecutorService$HttpResponseCallable.call(BaseHttpCommandExecutorService.java:173) 
    at org.jclouds.http.internal.BaseHttpCommandExecutorService$HttpResponseCallable.call(BaseHttpCommandExecutorService.java:130) 
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)[:1.6.0_43] 
    at java.util.concurrent.FutureTask.run(FutureTask.java:138)[:1.6.0_43] 
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)[:1.6.0_43] 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)[:1.6.0_43] 
    at java.lang.Thread.run(Thread.java:662)[:1.6.0_43] 
    at org.jclouds.concurrent.config.ExecutorServiceModule$DescribingExecutorService.submit(ExecutorServiceModule.java:184) 
    at org.jclouds.http.internal.BaseHttpCommandExecutorService.submit(BaseHttpCommandExecutorService.java:127) 
    at org.jclouds.http.TransformingHttpCommandExecutorServiceImpl.submit(TransformingHttpCommandExecutorServiceImpl.java:54) 
    at org.jclouds.http.TransformingHttpCommandImpl.execute(TransformingHttpCommandImpl.java:73) 
    at org.jclouds.rest.internal.AsyncRestClientProxy.createListenableFutureForHttpRequestMappedToMethodAndArgs(AsyncRestClientProxy.java:198) 
    at org.jclouds.rest.internal.AsyncRestClientProxy.invoke(AsyncRestClientProxy.java:134) 
    at com.sun.proxy.$Proxy295.putBlob(Unknown Source) 
    at sun.reflect.GeneratedMethodAccessor107.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[:1.6.0_43] 
    at java.lang.reflect.Method.invoke(Method.java:597)[:1.6.0_43] 
    at org.jclouds.concurrent.internal.SyncProxy.invoke(SyncProxy.java:137) 
    at com.sun.proxy.$Proxy296.putBlob(Unknown Source) 
    at org.jclouds.azureblob.blobstore.AzureBlobStore.putBlob(AzureBlobStore.java:194) 
    at sun.reflect.GeneratedMethodAccessor105.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[:1.6.0_43] 
    at java.lang.reflect.Method.invoke(Method.java:597)[:1.6.0_43] 
    at com.google.inject.internal.DelegatingInvocationHandler.invoke(DelegatingInvocationHandler.java:37) 
    at com.sun.proxy.$Proxy287.putBlob(Unknown Source) 

다음 나에게주는

내가 BLOB 저장소에 넣어하려고하는 파일입니다.

실마리, 어떻게 해결하나요?

+0

내가 알고를로드하는 데,이 설정되어 있지 않은 1. 신뢰 할 수 없거나 액세스 할 수 없습니다. 그러나 이것은 월부터 일하고 갑자기 오류를주기 시작한 것입니다. 환경이나 코드에는 변화가 없습니다. 그러므로 이걸 좀 도와주세요. – blob

답변

0

이 문제는 하늘색 얼룩 저장을 위해 ReST PUT을 호출하는 실제 코드가 해결되었습니다. 어떻게 든 Java 기본 신뢰 저장소를로드 할 수 없습니다. 라인 아래에 추가하여

는 기본 cacert

System.setProperty("javax.net.ssl.trustStore",PATH_TO_CACERT); 
System.setProperty("javax.net.ssl.trustStorePassword",PASSWORD);