2016-05-11 1 views
1

グループのメンバーを読み込むためにこのメソッドを書くのはかなり賢明だと思いました。しかし、返される値は、共通の名前形式ではありません。Xpages:Javaのグループからすべてのメンバーを(ODAを使用して)取得し、その共通名を取得する方法

enter image description here

どのように私は簡単に一般的な名前でこれらの値をつかむか、簡単に一般的な名前にそれらを変換することができますか?

private void loadNetworkTeam() { 

     try { 
      Session session = Factory.getSession(); 
      Database tmpDB = session.getCurrentDatabase(); 
      Database tmpDB2 = session.getDatabase(tmpDB.getServer(), "names.nsf"); 
      View grpView = tmpDB2.getView("($VIMGroups)"); 

      Vector<Object> nTeam = new Vector<Object>(); 
      nTeam.addElement("NetWorkTeam");  
      Document grpDoc = grpView.getFirstDocumentByKey("Network Team"); 
      Item itm = grpDoc.getFirstItem("members");   
      networkTeam.addAll(itm.getValues()); 

     } catch (Exception e) { 
      XspOpenLogUtil.logError(e); 
     } 
    } 
+0

あなたへのODAを用意している場合、私は、Vectorオブジェクトを使用する必要が今までないと思います。私は疫病のようにそれを避けることをお勧めします。リスト、マップ、セットを使用する。 –

+0

David、Vectorの感情を傷つけないでください!彼らもコレクションです;-) - >そして彼らは決してシーケンスをつまずくことはありません – stwissel

+0

なぜベクトルの嫌いなのでしょう?私は議論についてもっと知っていなければ、私は立場を取ることができない。 –

答えて

6

使用クラスNameと共通名に階層名を変換するその方法getCommon()

例:

Item itm = grpDoc.getFirstItem("members"); 
List<String> networkTeam = new ArrayList<String>(); 
for (Object value : itm.getValues()) { 
    networkTeam.add(session.createName((String) value).getCommon()); 
} 
関連する問題