-
Notifications
You must be signed in to change notification settings - Fork 364
Closed
Description
Hello,
does the Identity API support Keystone V3 for e.g. accessing users / projects / etc. In general, the identity() API of openstack4j seems to be Keystone V2 based in terms of terminology.
In my case, I am trying to access the identity service as follows (using OpenStack4j 2.11):
os.identity().users().getByName(aclUser)
and I am getting in my OpenStack environment with Keystone V3 the following exception pointing to some format incompatibility:
com.fasterxml.jackson.databind.JsonMappingException: Root name 'users' does not match expected ('user') for type [simple type, class org.openstack4j.openstack.identity.domain.KeystoneUser]
at [Source: org.glassfish.jersey.message.internal.EntityInputStream@75fc8df; line: 1, column: 2]
at com.fasterxml.jackson.databind.JsonMappingException.from(JsonMappingException.java:148)
at com.fasterxml.jackson.databind.ObjectReader._unwrapAndDeserialize(ObjectReader.java:1439)
at com.fasterxml.jackson.databind.ObjectReader._bind(ObjectReader.java:1229)
at com.fasterxml.jackson.databind.ObjectReader.readValue(ObjectReader.java:676)
at com.fasterxml.jackson.jaxrs.base.ProviderBase.readFrom(ProviderBase.java:777)
at org.glassfish.jersey.message.internal.ReaderInterceptorExecutor$TerminalReaderInterceptor.invokeReadFrom(ReaderInterceptorExecutor.java:257)
at org.glassfish.jersey.message.internal.ReaderInterceptorExecutor$TerminalReaderInterceptor.aroundReadFrom(ReaderInterceptorExecutor.java:229)
at org.glassfish.jersey.message.internal.ReaderInterceptorExecutor.proceed(ReaderInterceptorExecutor.java:149)
at org.glassfish.jersey.message.internal.MessageBodyFactory.readFrom(MessageBodyFactory.java:1124)
at org.glassfish.jersey.message.internal.InboundMessageContext.readEntity(InboundMessageContext.java:851)
at org.glassfish.jersey.message.internal.InboundMessageContext.readEntity(InboundMessageContext.java:783)
at org.glassfish.jersey.client.ClientResponse.readEntity(ClientResponse.java:326)
at org.glassfish.jersey.client.InboundJaxrsResponse$1.call(InboundJaxrsResponse.java:111)
at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
at org.glassfish.jersey.internal.Errors.process(Errors.java:228)
at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:399)
at org.glassfish.jersey.client.InboundJaxrsResponse.readEntity(InboundJaxrsResponse.java:108)
at org.openstack4j.connectors.jersey2.HttpResponseImpl.readEntity(HttpResponseImpl.java:113)
at org.openstack4j.core.transport.HttpEntityHandler.handle(HttpEntityHandler.java:65)
at org.openstack4j.core.transport.HttpEntityHandler.handle(HttpEntityHandler.java:24)
at org.openstack4j.connectors.jersey2.HttpResponseImpl.getEntity(HttpResponseImpl.java:63)
at org.openstack4j.openstack.internal.BaseOpenStackService$Invocation.execute(BaseOpenStackService.java:189)
at org.openstack4j.openstack.internal.BaseOpenStackService$Invocation.execute(BaseOpenStackService.java:183)
at org.openstack4j.openstack.identity.internal.UserServiceImpl.getByName(UserServiceImpl.java:104)
Regards, Eric
Metadata
Metadata
Assignees
Labels
No labels