jclouds-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexandr Porunov <alexandr.poru...@gmail.com>
Subject Re: Can not create SwiftApi with tempauth
Date Wed, 14 Sep 2016 18:35:33 GMT
Thank you. I forced to use Gson 2.5  but now I have problems with regions.

When I use:

Set<String> regions = swiftApi.getConfiguredRegions();


I get an error:

Request processing failed; nested exception is
org.jclouds.http.HttpResponseException: command: POST
http://192.168.0.58:8080/auth/v1.0/tokens HTTP/1.1 failed with
response: HTTP/1.1 400 Bad Request; content: [<html><h1>Bad
Request</h1><p>The server could not comply with the request since it
is either malformed or otherwise incorrect.</p></html>]] with root
cause
org.jclouds.http.HttpResponseException: command: POST
http://192.168.0.58:8080/auth/v1.0/tokens HTTP/1.1 failed with
response: HTTP/1.1 400 Bad Request; content: [<html><h1>Bad
Request</h1><p>The server could not comply with the request since it
is either malformed or otherwise incorrect.</p></html>]
        at org.jclouds.openstack.swift.v1.handlers.SwiftErrorHandler.handleError(SwiftErrorHandler.java:46)
        at org.jclouds.http.handlers.DelegatingErrorHandler.handleError(DelegatingErrorHandler.java:65)
        at org.jclouds.http.internal.BaseHttpCommandExecutorService.shouldContinue(BaseHttpCommandExecutorService.java:136)
        at org.jclouds.http.internal.BaseHttpCommandExecutorService.invoke(BaseHttpCommandExecutorService.java:105)
        at org.jclouds.rest.internal.InvokeHttpMethod.invoke(InvokeHttpMethod.java:90)
        at org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:73)
        at org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:44)
        at org.jclouds.rest.internal.DelegatesToInvocationFunction.handle(DelegatesToInvocationFunction.java:156)
        at org.jclouds.rest.internal.DelegatesToInvocationFunction.invoke(DelegatesToInvocationFunction.java:123)
        at com.sun.proxy.$Proxy111.authenticateWithTenantNameAndCredentials(Unknown
Source)
        at org.jclouds.openstack.keystone.v2_0.functions.AuthenticatePasswordCredentials.authenticateWithTenantName(AuthenticatePasswordCredentials.java:43)
        at org.jclouds.openstack.keystone.v2_0.functions.AuthenticatePasswordCredentials.authenticateWithTenantName(AuthenticatePasswordCredentials.java:31)
        at org.jclouds.openstack.keystone.v2_0.functions.internal.BaseAuthenticator.apply(BaseAuthenticator.java:79)
        at org.jclouds.openstack.keystone.v2_0.functions.internal.BaseAuthenticator.apply(BaseAuthenticator.java:36)
        at com.google.common.cache.CacheLoader$FunctionToCacheLoader.load(CacheLoader.java:148)
        at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3524)
        at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2317)
        at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2280)
        at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2195)
        at com.google.common.cache.LocalCache.get(LocalCache.java:3934)
        at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3938)
        at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4821)
        at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:4827)
        at org.jclouds.openstack.keystone.v2_0.config.KeystoneAuthenticationModule$2.get(KeystoneAuthenticationModule.java:234)
        at org.jclouds.openstack.keystone.v2_0.config.KeystoneAuthenticationModule$2.get(KeystoneAuthenticationModule.java:231)
        at org.jclouds.openstack.keystone.v2_0.suppliers.LocationIdToURIFromAccessForTypeAndVersion.get(LocationIdToURIFromAccessForTypeAndVersion.java:94)
        at org.jclouds.openstack.keystone.v2_0.suppliers.LocationIdToURIFromAccessForTypeAndVersion.get(LocationIdToURIFromAccessForTypeAndVersion.java:54)
        at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier$SetAndThrowAuthorizationExceptionSupplierBackedLoader.load(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:73)
        at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier$SetAndThrowAuthorizationExceptionSupplierBackedLoader.load(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:57)
        at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3524)
        at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2317)
        at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2280)
        at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2195)
        at com.google.common.cache.LocalCache.get(LocalCache.java:3934)
        at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3938)
        at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4821)
        at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.get(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:119)
        at org.jclouds.location.suppliers.derived.RegionIdsFromRegionIdToURIKeySet.get(RegionIdsFromRegionIdToURIKeySet.java:45)
        at org.jclouds.location.suppliers.derived.RegionIdsFromRegionIdToURIKeySet.get(RegionIdsFromRegionIdToURIKeySet.java:33)
        at com.google.common.base.Suppliers$SupplierComposition.get(Suppliers.java:67)
        at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier$SetAndThrowAuthorizationExceptionSupplierBackedLoader.load(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:73)
        at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier$SetAndThrowAuthorizationExceptionSupplierBackedLoader.load(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:57)
        at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3524)
        at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2317)
        at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2280)
        at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2195)
        at com.google.common.cache.LocalCache.get(LocalCache.java:3934)
        at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3938)
        at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4821)
        at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.get(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:119)
        at org.jclouds.rest.internal.DelegatesToInvocationFunction.getInstanceOfTypeWithQualifier(DelegatesToInvocationFunction.java:277)
        at org.jclouds.rest.internal.DelegatesToInvocationFunction.lookupValueFromGuice(DelegatesToInvocationFunction.java:234)
        at org.jclouds.rest.internal.DelegatesToInvocationFunction.handle(DelegatesToInvocationFunction.java:152)
        at org.jclouds.rest.internal.DelegatesToInvocationFunction.invoke(DelegatesToInvocationFunction.java:123)
        at com.sun.proxy.$Proxy114.getConfiguredRegions(Unknown Source)
        at com.fyfine.loader.controller.PersonController.getRegions(PersonController.java:112)
        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:497)
        at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:221)
        at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:136)
        at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:114)
        at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827)
        at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738)
        at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
        at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
        at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
        at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
        at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:622)
        at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
        at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
        at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
        at org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:87)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
        at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:77)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
        at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:108)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:522)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:349)
        at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:1110)
        at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
        at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:785)
        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1425)
        at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
        at java.lang.Thread.run(Thread.java:745)


Here is an spring's output:

{"timestamp":1473877865201,"status":500,"error":"Internal Server
Error","exception":"org.jclouds.http.HttpResponseException","message":"command:
POST http://192.168.0.58:8080/auth/v1.0/tokens HTTP/1.1 failed with
response: HTTP/1.1 400 Bad Request; content: [<html><h1>Bad
Request</h1><p>The server could not comply with the request since it is
either malformed or otherwise incorrect.</p></html>]","path":"/get_regions"}

Can you help me please with this error?

Best regards,
Alexandr

On Wed, Sep 14, 2016 at 9:13 PM, Ignasi Barrera <nacx@apache.org> wrote:

> If you use Spring Boot 1.4, then you might be affected by JCLOUDS-1160
> [1], as it comes with a Gson version newer than the one supported by
> jclouds. See the issue and the linked one for more details.
>
> If that is your case, is there any chance you can force a version of
> Gson <= 2.5?
>
>
>
> [1] https://issues.apache.org/jira/browse/JCLOUDS-1160
>
> On 14 September 2016 at 20:07, Alexandr Porunov
> <alexandr.porunov@gmail.com> wrote:
> > I use 1.9.2 version of jclouds as in the example.
> > Here is my gradle dependencies:
> >
> > compile group: 'org.apache.jclouds.driver', name: 'jclouds-slf4j',
> version:
> > '1.9.2'
> > compile group: 'org.apache.jclouds.driver', name: 'jclouds-sshj',
> version:
> > '1.9.2'
> > compile group: 'org.apache.jclouds.api', name: 'openstack-swift',
> version:
> > '1.9.2'
> > compile group: 'org.apache.jclouds.labs', name: 'openstack-marconi',
> > version: '1.9.2'
> >
> >
> > I don't use gson. But I use spring-boot framework. It may use gson. I am
> not
> > sure. But I don't see it in External Libraries.
> >
> > Also I tried to use:
> > SwiftApi swiftApi = ContextBuilder.newBuilder("openstack-swift")
> >                 .endpoint("http://192.168.0.58:8080/auth/v1.0")
> >                 .credentials("admin:admin", "admin")
> >                 .buildApi(SwiftApi.class);
> >
> > It shows the same error.
> >
> > My OpenStack Swift works if I use curl:
> >
> > //authenticate
> > curl -v -H 'X-Auth-User: admin:admin' -H 'X-Auth-Key: admin'
> > http://192.168.0.58:8080/auth/v1.0/
> >
> > //check containers
> > curl -v -H 'X-Storage-Token: AUTH_tk1411104de43046aca9b371c27c3b1fad'
> > http://192.168.0.58:8080/v1/AUTH_admin/
> >
> > //create a container
> > curl -v -H 'X-Storage-Token: AUTH_tk1411104de43046aca9b371c27c3b1fad'
> -X PUT
> > http://192.168.0.58:8080/v1/AUTH_admin/mycontainer
> >
> > //upload file
> > swift -A http://192.168.0.58:8080/auth/v1.0/ -U admin:admin -K admin
> upload
> > mycontainer some_file
> >
> > //get file
> > curl -v -H 'X-Auth-Token: AUTH_tk1411104de43046aca9b371c27c3b1fad' -X
> GET
> > http://192.168.0.58:8080/v1/AUTH_admin/mycontainer/some_file
> >
> > Sincerely,
> > Alexandr
> >
> >
> > On Wed, Sep 14, 2016 at 8:56 PM, Ignasi Barrera <nacx@apache.org> wrote:
> >>
> >> Which version of jclouds are you using? Are you using Gson too in your
> >> project? In that case, which version of Gson are you using?
> >>
> >> On 14 September 2016 at 19:45, Alexandr Porunov
> >> <alexandr.porunov@gmail.com> wrote:
> >> > Hello,
> >> >
> >> > How to use jclouds with OpenStack Swift?
> >> >
> >> > Here is my code:
> >> > SwiftApi swiftApi = ContextBuilder.newBuilder("openstack-swift")
> >> >                 .endpoint("http://192.168.0.58:8080/v1/")
> >> >                 .credentials("admin:admin", "admin")
> >> >                 .buildApi(SwiftApi.class);
> >> >
> >> > I use tempauth in OpenStack Swift. Here is my configs:
> >> > [filter:tempauth]
> >> > use = egg:swift#tempauth
> >> > user_admin_admin = admin .admin .reseller_admin
> >> > user_test_tester = testing .admin
> >> > user_test2_tester2 = testing2 .admin
> >> > user_test_tester3 = testing3
> >> >
> >> > I can not create swiftApi because I always get next error:
> >> > Exception in thread "main" java.lang.reflect.
> InvocationTargetException
> >> >         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:497)
> >> >         at
> >> >
> >> > org.springframework.boot.loader.MainMethodRunner.run(
> MainMethodRunner.java:48)
> >> >         at
> >> > org.springframework.boot.loader.Launcher.launch(Launcher.java:87)
> >> >         at
> >> > org.springframework.boot.loader.Launcher.launch(Launcher.java:50)
> >> >         at
> >> > org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:58)
> >> > Caused by: java.lang.NoSuchMethodError:
> >> >
> >> > com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.<
> init>(Lcom/google/gson/internal/ConstructorConstructor;Lcom/google/gson/
> FieldNamingStrategy;Lcom/google/gson/internal/Excluder;)V
> >> >         at
> >> >
> >> > org.jclouds.json.internal.DeserializationConstructorAndR
> eflectiveTypeAdapterFactory.<init>(DeserializationConstructorAndR
> eflectiveTypeAdapterFactory.java:116)
> >> >         at
> >> > org.jclouds.json.config.GsonModule.provideGson(GsonModule.java:129)
> >> >         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:497)
> >> >         at
> >> > com.google.inject.internal.ProviderMethod.get(
> ProviderMethod.java:104)
> >> >         at
> >> >
> >> > com.google.inject.internal.InternalFactoryToProviderAdapter.get(
> InternalFactoryToProviderAdapter.java:40)
> >> >         at
> >> >
> >> > com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(
> ProviderToInternalFactoryAdapter.java:46)
> >> >         at
> >> >
> >> > com.google.inject.internal.InjectorImpl.callInContext(
> InjectorImpl.java:1031)
> >> >         at
> >> >
> >> > com.google.inject.internal.ProviderToInternalFactoryAdapter.get(
> ProviderToInternalFactoryAdapter.java:40)
> >> >         at com.google.inject.Scopes$1$1.get(Scopes.java:65)
> >> >         at
> >> >
> >> > com.google.inject.internal.InternalFactoryToProviderAdapter.get(
> InternalFactoryToProviderAdapter.java:40)
> >> >         at
> >> >
> >> > com.google.inject.internal.SingleParameterInjector.inject(
> SingleParameterInjector.java:38)
> >> >         at
> >> >
> >> > com.google.inject.internal.SingleParameterInjector.getAll(
> SingleParameterInjector.java:62)
> >> >         at
> >> >
> >> > com.google.inject.internal.ConstructorInjector.construct(
> ConstructorInjector.java:84)
> >> >         at
> >> >
> >> > com.google.inject.internal.ConstructorBindingImpl$Factory.get(
> ConstructorBindingImpl.java:254)
> >> >         at
> >> >
> >> > com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(
> ProviderToInternalFactoryAdapter.java:46)
> >> >         at
> >> >
> >> > com.google.inject.internal.InjectorImpl.callInContext(
> InjectorImpl.java:1031)
> >> >         at
> >> >
> >> > com.google.inject.internal.ProviderToInternalFactoryAdapter.get(
> ProviderToInternalFactoryAdapter.java:40)
> >> >         at com.google.inject.Scopes$1$1.get(Scopes.java:65)
> >> >         at
> >> >
> >> > com.google.inject.internal.InternalFactoryToProviderAdapter.get(
> InternalFactoryToProviderAdapter.java:40)
> >> >         at
> >> > com.google.inject.internal.FactoryProxy.get(FactoryProxy.java:54)
> >> >         at
> >> >
> >> > com.google.inject.internal.InternalInjectorCreator$1.
> call(InternalInjectorCreator.java:204)
> >> >         at
> >> >
> >> > com.google.inject.internal.InternalInjectorCreator$1.
> call(InternalInjectorCreator.java:198)
> >> >         at
> >> >
> >> > com.google.inject.internal.InjectorImpl.callInContext(
> InjectorImpl.java:1024)
> >> >         at
> >> >
> >> > com.google.inject.internal.InternalInjectorCreator.
> loadEagerSingletons(InternalInjectorCreator.java:198)
> >> >         at
> >> >
> >> > com.google.inject.internal.InternalInjectorCreator.injectDynamically(
> InternalInjectorCreator.java:179)
> >> >         at
> >> >
> >> > com.google.inject.internal.InternalInjectorCreator.build(
> InternalInjectorCreator.java:109)
> >> >         at com.google.inject.Guice.createInjector(Guice.java:95)
> >> >         at
> >> > org.jclouds.ContextBuilder.buildInjector(ContextBuilder.java:402)
> >> >         at
> >> > org.jclouds.ContextBuilder.buildInjector(ContextBuilder.java:326)
> >> >         at org.jclouds.ContextBuilder.buildApi(ContextBuilder.java:
> 644)
> >> >         at org.jclouds.ContextBuilder.buildApi(ContextBuilder.java:
> 636)
> >> >         at com.fyfine.loader.Application.main(Application.java:26)
> >> >         ... 8 more
> >> >
> >> > Please, help me connect to OpenStack Swift
> >> >
> >> > Sincerely,
> >> > Alexandr
> >
> >
>

Mime
View raw message