2013-01-04 150 views
0

我有一個JRuby將其視爲「集合」的sun.security.x509.X509CertImpl對象。由於該集合可能包含多個x509證書,因此我試圖迭代集合並打印出所有的證書。JRuby遍歷集合

有人可以提供一些關於如何實現這一點請指點。

問候,

卡爾

回答

0

你試試這個?

your_object.each{|each|puts each} 

這將打印集合中的每個元素。

+0

是的,我試過了。它會拋出以下類型的錯誤:TypeError:無法將Java :: SunSecurityX509 :: X509CertImpl轉換爲字符串 – user1513388

+1

那麼'puts each.to_s'或'puts each.toString()'然後呢? – akuhn

+0

不幸的是同樣的問題! TypeError:無法將Java :: SunSecurityX509 :: X509CertImpl轉換爲字符串 – user1513388

0

在我的代碼

cert_chain = key_store.getX509CertificateChain(key_alias) 

=>的Java :: JavaUtil ::收藏集:: UnmodifiableRandomAccessList

這是一個集合,你可以使用標準的Ruby方法

cert_chain.size 

=> 4

cert_chain[0] 

=> Java :: SunSecurityX509 :: X509CertImpl

你不能迭代它作爲一個集合,因爲它不是一個。

cert_chain[0].publicKey 

=>的Java :: SunSecurityRsa :: RSAPublicKeyImpl