2014-09-19 34 views
0

我在創建租戶之前嘗試連接OpenStack。它在「openstack-client-3.2.1.jar」中給出從OpenStackClient.request()OpenStack在連接時拋出NullPointerException

的代碼和堆棧跟蹤開始的時候是如下:

UsernamePassword usernamePassword = new UsernamePassword(userA,passA) 
com.woorea.openstack.keystone.model.Access access = 
    keystone 
    .tokens() 
    .authenticate(usernamePassword) 
    .execute(); 

的堆棧跟蹤是:

[java] java.lang.NullPointerException 
[java]  at com.woorea.openstack.base.client.OpenStackClient.request(OpenStackClient.java:51) 
[java]  at com.woorea.openstack.base.client.OpenStackClient.execute(OpenStackClient.java:66) 
[java]  at com.woorea.openstack.base.client.OpenStackRequest.execute(OpenStackRequest.java:98) 
[java]  at vep.openstack.OpenStackConnector.addUser(OpenStackConnector.java:624) 
+0

我查看包的源文件並從堆棧跟蹤,執行com.woorea.openstack.base.client.OpenStackClient中的第51行時發生異常: 'return connector.request(request);' 類型'OpenStackClientConnector連接器'的變量'connector'可能不會被初始化,然後我可能需要這樣做。 參考jar的源代碼[http://grepcode.com/file/repo1.maven.org/maven2/com.woorea/openstack-client/3.2.1/com/woorea/openstack/base/client/OpenStackClient。 java#OpenStackClient.execute%28com.woorea.openstack.base.client.OpenStackRequest%29] – copycat 2014-09-19 16:24:25

回答

0

可變userA爲空。你需要正確地初始化它。

+0

不,兩者都保持正確的值。我剛剛檢查過。感謝您指出了我沒有注意到的可能性。 – copycat 2014-09-19 16:31:58

1

據需要添加以下所列的三個庫中的一個(即,開棧的客戶端的連接器):

Jersey的連接器

jersey2連接器

RestEasy的連接器

相關問題