[ https://issues.apache.org/jira/browse/JCLOUDS-1104?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16328435#comment-16328435 ]
ASF subversion and git services commented on JCLOUDS-1104: ---------------------------------------------------------- Commit 34114dea002958b2d0504da27150585ad58678d3 in jclouds's branch refs/heads/master from [~nacx] [ https://git-wip-us.apache.org/repos/asf?p=jclouds.git;h=34114de ] JCLOUDS-1104: Extension namespaces are deprecated and can be null > RouterApi call don't find namespace field > ----------------------------------------- > > Key: JCLOUDS-1104 > URL: https://issues.apache.org/jira/browse/JCLOUDS-1104 > Project: jclouds > Issue Type: Bug > Components: jclouds-labs-openstack > Affects Versions: 1.9.1, 1.9.2, 2.0.0 > Environment: ovn-developing Devstack Openstack > Reporter: Giuseppe Tricomi > Priority: Blocker > Labels: openstack-keystone, openstack-neutron > Fix For: 2.0.0 > > > It is impossible work with router interface because inside the extension is > missing the namespace field. > I tried to create a new Router on openstack thorugh jcloud, but when i try to > retireve RouterApi with: > >Optional<RouterApi> t = neutronApi.getRouterApi(region); > >routerApi =t.get(); > I got an exception: " Exception in thread "main" > com.google.common.util.concurrent.UncheckedExecutionException: > java.lang.NullPointerException: namespace " > I report here some output to make simplier the understanding and the > resolution of the problem: > This is the output of routerApi.get(): > " ..... > 5:39:57.504 [main] DEBUG jclouds.headers - << Content-Length: 3002 > 15:39:57.505 [main] DEBUG jclouds.wire - << "{"extensions": [{"alias": > "security-group", "updated": "2012-10-05T10:00:00-00:00", "name": > "security-group", "links": [], "description": "The security groups > extension."}, {"alias": "availability_zone", "updated": > "2015-01-01T10:00:00-00:00", "name": "Availability Zone", "links": [], > "description": "The availability zone extension."}, {"alias": > "network_availability_zone", "updated": "2015-01-01T10:00:00-00:00", "name": > "Network Availability Zone", "links": [], "description": "Availability zone > support for network."}, {"alias": "net-mtu", "updated": > "2015-03-25T10:00:00-00:00", "name": "Network MTU", "links": [], > "description": "Provides MTU attribute for a network resource."}, {"alias": > "auto-allocated-topology", "updated": "2016-01-01T00:00:00-00:00", "name": > "Auto Allocated Topology Services", "links": [], "description": "Auto > Allocated Topology Services."}, {"alias": "provider", "updated": > "2012-09-07T10:00:00-00:00", "name": "Provider Network", "links": [], > "description": "Expose mapping of virtual networks to physical networks"}, > {"alias": "binding", "updated": "2014-02-03T10:00:00-00:00", "name": "Port > Binding", "links": [], "description": "Expose port bindings of a virtual port > to external application"}, {"alias": "quotas", "updated": > "2012-07-29T10:00:00-00:00", "name": "Quota management support", "links": [], > "description": "Expose functions for quotas management per tenant"}, > {"alias": "agent", "updated": "2013-02-03T10:00:00-00:00", "name": "agent", > "links": [], "description": "The agent management extension."}, {"alias": > "subnet_allocation", "updated": "2015-03-30T10:00:00-00:00", "name": "Subnet > Allocation", "links": [], "description": "Enables allocation of subnets from > a subnet pool"}, {"alias": "dhcp_agent_scheduler", "updated": > "2013-02-07T10:00:00-00:00", "name": "DHCP Agent Scheduler", "links": [], > "description": "Schedule networks among dhcp agents"}, {"alias": > "rbac-policies", "updated": "2015-06-17T12:15:12-00:00", "name": "RBAC > Policies", "links": [], "description": "Allows creation and modification of > policies that control tenant access to resources."}, {"alias": > "external-net", "updated": "2013-01-14T10:00:00-00:00", "name": "Neutron > external network", "links": [], "description": "Adds external network > attribute to network resource."}, {"alias": "router", "updated": > "2012-07-20T10:00:00-00:00", "name": "Neutron L3 Router", "links": [], > "description": "Router abstraction for basic L3 forwarding between L2 Neutron > networks and access to external networks via a NAT gateway."}, {"alias": > "extra_dhcp_opt", "updated": "2013-03-17T12:00:00-00:00", "name": "Neutron > Extra DHCP opts", "links": [], "description": "Extra options configuration > for DHCP. For example PXE boot options to DHCP clients can be specified (e.g. > tftp-server, server-ip-address, bootfile-name)"}, {"alias": "extraroute", > "updated": "2013-02-01T10:00:00-00:00", "name": "Neutron Extra Route", > "links": [], "description": "Extra routes configuration for L3 router"}]}" > Exception in thread "main" > com.google.common.util.concurrent.UncheckedExecutionException: > java.lang.NullPointerException: namespace > at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2201) > 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.v2_0.functions.PresentWhenExtensionAnnotationNamespaceEqualsAnyNamespaceInExtensionsSet.apply(PresentWhenExtensionAnnotationNamespaceEqualsAnyNamespaceInExtensionsSet.java:71) > at > org.jclouds.openstack.v2_0.functions.PresentWhenExtensionAnnotationNamespaceEqualsAnyNamespaceInExtensionsSet.apply(PresentWhenExtensionAnnotationNamespaceEqualsAnyNamespaceInExtensionsSet.java:45) > .... > " > This is the output of neutronApi listExtensions: > "....... > 16:08:40.674 [main] DEBUG jclouds.wire - << "{"extensions": [{"alias": > "security-group", "updated": "2012-10-05T10:00:00-00:00", "name": > "security-group", "links": [], "description": "The security groups > extension."}, {"alias": "availability_zone", "updated": > "2015-01-01T10:00:00-00:00", "name": "Availability Zone", "links": [], > "description": "The availability zone extension."}, {"alias": > "network_availability_zone", "updated": "2015-01-01T10:00:00-00:00", "name": > "Network Availability Zone", "links": [], "description": "Availability zone > support for network."}, {"alias": "net-mtu", "updated": > "2015-03-25T10:00:00-00:00", "name": "Network MTU", "links": [], > "description": "Provides MTU attribute for a network resource."}, {"alias": > "auto-allocated-topology", "updated": "2016-01-01T00:00:00-00:00", "name": > "Auto Allocated Topology Services", "links": [], "description": "Auto > Allocated Topology Services."}, {"alias": "provider", "updated": > "2012-09-07T10:00:00-00:00", "name": "Provider Network", "links": [], > "description": "Expose mapping of virtual networks to physical networks"}, > {"alias": "binding", "updated": "2014-02-03T10:00:00-00:00", "name": "Port > Binding", "links": [], "description": "Expose port bindings of a virtual port > to external application"}, {"alias": "quotas", "updated": > "2012-07-29T10:00:00-00:00", "name": "Quota management support", "links": [], > "description": "Expose functions for quotas management per tenant"}, > {"alias": "agent", "updated": "2013-02-03T10:00:00-00:00", "name": "agent", > "links": [], "description": "The agent management extension."}, {"alias": > "subnet_allocation", "updated": "2015-03-30T10:00:00-00:00", "name": "Subnet > Allocation", "links": [], "description": "Enables allocation of subnets from > a subnet pool"}, {"alias": "dhcp_agent_scheduler", "updated": > "2013-02-07T10:00:00-00:00", "name": "DHCP Agent Scheduler", "links": [], > "description": "Schedule networks among dhcp agents"}, {"alias": > "rbac-policies", "updated": "2015-06-17T12:15:12-00:00", "name": "RBAC > Policies", "links": [], "description": "Allows creation and modification of > policies that control tenant access to resources."}, {"alias": > "external-net", "updated": "2013-01-14T10:00:00-00:00", "name": "Neutron > external network", "links": [], "description": "Adds external network > attribute to network resource."}, {"alias": "router", "updated": > "2012-07-20T10:00:00-00:00", "name": "Neutron L3 Router", "links": [], > "description": "Router abstraction for basic L3 forwarding between L2 Neutron > networks and access to external networks via a NAT gateway."}, {"alias": > "extra_dhcp_opt", "updated": "2013-03-17T12:00:00-00:00", "name": "Neutron > Extra DHCP opts", "links": [], "description": "Extra options configuration > for DHCP. For example PXE boot options to DHCP clients can be specified (e.g. > tftp-server, server-ip-address, bootfile-name)"}, {"alias": "extraroute", > "updated": "2013-02-01T10:00:00-00:00", "name": "Neutron Extra Route", > "links": [], "description": "Extra routes configuration for L3 router"}]}" > Exception in thread "main" java.lang.NullPointerException: namespace > at > com.google.common.base.Preconditions.checkNotNull(Preconditions.java:229) > at > org.jclouds.openstack.v2_0.domain.Extension.<init>(Extension.java:127) > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) > ...." -- This message was sent by Atlassian JIRA (v7.6.3#76005)