2016-05-09 20 views
3

muss ein Rookies Problem sein:xpages verwaltete Bean-Eigenschaft eines Arrays gibt die Referenz anstelle der Werte

in einer verwalteten Bean möchte ich Werte eines mehrwertig Noten Artikel in einer Bean Variable setzen:

mein snippet geht so:

private String[] typevalues; 

public void setTypevalues(String[] typevalues) { 
    this.typevalues = typevalues; 
} 

public String[] getTypevalues() { 
    return typevalues; 
} 

und in der loadPreferences Funktion ich mag etw:

 Vector <String> vt = profdoc.getItemValue("ideetypes"); 
     typevalues = vt.toArray(new String[vt.size()]); 

(hat keinen besseren Weg finden, einen getItemValue Vektor in ein Array zu bringen)

auf dem XPage meinen Prüfgegenstand:

   <xp:text escape="true" id="computedField1" 
        value="#{APr.typevalues}"> 
       </xp:text> 

nicht die Werte dieses String Array nicht zeigt, aber es ist Referenz wie [Ljava.lang.String; @ 74987498

Vermisse ich etw, oder ist ein String [] Array der falsche Container für eine solche Bean-Eigenschaft?

Vielen Dank im Voraus, Uwe

+0

ja, verwenden Sie die Arraylist Art und Weise, wie Howard schlägt. Oder wenn Sie ODA verwenden, können Sie den Vektorteil überspringen. profdoc.getItemValue ("ideetypes", List.class) –

+0

danke Frank - ok, ODA wäre eine andere Option, wir haben es bisher nicht implementiert –

+0

uff - ist das so ein dummer Q. dass es downvoted ist ... ?! –

Antwort

3

Ich mag mit Arraylist und nicht Arrays. Dann können Sie Folgendes verwenden, um von einem Vektor in die ArrayList zu konvertieren.

Collections.list(rtnVector.elements()) 

Howard

+0

danke Howard, Ich habe die Definition von typevalues ​​in ArrayList geändert und den Vektor zugewiesen mit: typevalues ​​= new ArrayList (vt); . Jetzt kann ich die Eigenschaft auf der xpage verwenden :-) –

+0

Großartig! Froh, dass ich Helfen kann! Howard – Howard