Domino 9 und frühere Versionen > ND9: Entwicklung

Frage zu <xe:viewJsonService>

(1/1)

Tode:
Das ist eine XPage- Control, um eine View im Json- Format anzuzeigen. Die hat die Property systemColumns.

Lasse ich systemColumns WEG, dann zeigt er mir alle System- Columns an. Gebe ich z.B. 0 an, dann zeigt er mir eben die System Column 0 (in dem Fall die NoteID) an.
Was muss ich tun, damit er mir GAR KEINE systemColumns rendert, sondern nur die tatsächlich vorhandenen Columns?

ein systemColumns=false gibt es nicht, und Doku finde ich auch keine...

Tode:
ups, falsches Unterforum... bitte verschieben in "Entwicklung"...

HH:
@entryid scheint immer generiert zu werden, auch wenn man einen Leerstring bei systemColumns eingibt:

--- Code: ---<xe:this.systemColumns><![CDATA[#{javascript:""}]]></xe:this.systemColumns>

--- Ende Code ---

Man könnte versuchen diese Werte client-seitig zu entfernen.

Ich verwende aber statt dessen i.d.R. customRestService und generiere mit die Daten dann z.B. wie folgt:

--- Code: --- @SuppressWarnings("unchecked")
public String getEntitiesAsJson( ArrayList<Person> persons ) {
JSONArray jArray = new JSONArray() ;
try {
for( Integer i = 0 ; i < persons.size() ; i++ ) {
jArray.add( this.getEntityAsJsonObject( persons.get(i))) ;
}
} catch (Exception e) {
this.logger.logError( e) ;
}
return jArray.toJSONString() ;
}

@SuppressWarnings("unchecked")
private JSONObject getEntityAsJsonObject( Person p ) {
JSONObject jObj = new JSONObject() ;
try {
jObj.put( "id", p.getId() ) ;
jObj.put( "lastname", p.getLastname() ) ;
jObj.put( "firstname", p.getFirstname() ) ;
jObj.put( "praefix", p.getPraefix() ) ;
jObj.put( "suffix", p.getSuffix() ) ;
} catch (Exception e) {
this.logger.logError( e) ;
}
return jObj ;
}

--- Ende Code ---

Das ist relativ schnell gemacht und recht flexibel.

Gruß
Hubert

Tode:
Ja, das ist natürlich eine Möglichkeit. Ich habe jetzt aber mal beim Consumer meiner Daten angefragt, ihn stört das zusätzliche Attribut nicht, deshalb lasse ich es erst mal so. Deinen Code werde ich mir trotzdem für zukünftige Anforderungen mal merken. Danke!

Navigation

[0] Themen-Index

Zur normalen Ansicht wechseln