Netbeans, IReports e Xmlbeans

Ciao a tutti, in questo periodo mi sono avvicinato al mondo dei reports con JasperReports. Come realizzare un report tramite JasperReports ?

In pratica quando realizzate un report dovete definire un template che per JasperReports è un file xml in cui schema si trova a questo link: http://jasperreports.sourceforge.net/xsd/jasperreport.xsd

Il template è comunemente detto file jrxml che deve essere compilato in formato jasper. La realizzazione del template è aiutata da un plugin per Netbeans che permette di fare un drag and drop degli elementi anche se alla fine andrete di sicuro a modificare il file template a mano

Fatto sta che nel file potete mettere direttamente delle query che restituiscono tabelle con i rispettivi nomi di colonne a cui associare delle variabili che potete usare per creare le intestazioni per le tabelle o grafici che andrete ad inserire nel vostro template.

Le query possono anche essere esterne e questo ritengo sia un bene ma la particolarità è che una volta fissato un template e compilato nel formato jasper sarà quello una volta per sempre. Supponendo che si vuole creare un report per ogni tabella di un database si pensa subito al fatto che il numero delle colonne puo’ variare.

Percio’ stavo pensando perchè non prendere lo schema e generare il jar con Xmlbeans per poter creare il template al volo in java?

Nel fare cio’ ho avuto un intoppo, l’elemento Text è definito come complexType nel seguente modo:

<element name=”text”>
<complexType mixed=”true”>
</complexType>
</element>

Cioè in pratica è vuoto e l’unico metodo che mi rimane per riempirli è usare l’istruzione set su un XmlObject o l’XmlCursor che prevede un XmlObject da inserire.

Nella realizzazione di un template jrxml questo campo viene riempito con valori CDATA. Ho notato che esistono dei metodi nella classe XmlOptions che servono per inserire CDATA e li ho provati ad usare ma senza successo, magari ho sbagliato qualcosa.

Ci riproverò.

Nota:

http://markmail.org/message/ykiztut4p2tcalfh#query:node.setKey+page:1+mid:dhr2i74v7rkjf4ti+state:results

Advertisements

One thought on “Netbeans, IReports e Xmlbeans

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s