View Full Version : [JAVA] Libreria: generare un report HTML partendo da un XML
Ciao a tutti.
Questa non è una domanda, volevo solo presentarvi la libreria che sto scrivendo e magari raccogliere qualche critica e suggerimento :banned:
ecco il LINK (http://code.google.com/p/jxreport/)
Tale libreria prende in in input un file XML e genera un file HTML (standalone, non ha bisogno di nessuna libreria per visualizzare grafici, ecc)
QUI (http://code.google.com/p/jxreport/downloads/detail?name=test.xml) trovate un file XML di esempio, che restituisce come output QUESTO (http://code.google.com/p/jxreport/downloads/detail?name=test.html) file html.
Per provarla voi stessi, potete scaricare il JAR (http://code.google.com/p/jxreport/downloads/detail?name=jxreport.jar) ed eseguirlo da terminale:
java -jar jxreport.jar test.xml test.html
Grazie per il tempo :)
sottovento
20-09-2012, 07:01
Wow! Complimenti!
E' davvero ottima ed utile.
C'e' gia anche della documentazione?
Ciao a tutti.
Questa non è una domanda, volevo solo presentarvi la libreria che sto scrivendo e magari raccogliere qualche critica e suggerimento :banned:
ecco il LINK (http://code.google.com/p/jxreport/)
Tale libreria prende in in input un file XML e genera un file HTML (standalone, non ha bisogno di nessuna libreria per visualizzare grafici, ecc)
QUI (http://code.google.com/p/jxreport/downloads/detail?name=test.xml) trovate un file XML di esempio, che restituisce come output QUESTO (http://code.google.com/p/jxreport/downloads/detail?name=test.html) file html.
Per provarla voi stessi, potete scaricare il JAR (http://code.google.com/p/jxreport/downloads/detail?name=jxreport.jar) ed eseguirlo da terminale:
java -jar jxreport.jar test.xml test.html
Grazie per il tempo :)
Certo :)
Trovi diverse informazioni nella Home del progetto
http://code.google.com/p/jxreport/
E poi documentazione più specifica nella sezione Wiki:
http://code.google.com/p/jxreport/w/list
sottovento
20-09-2012, 12:29
Si, l'ho vista,grazie. Hai fatto le cose in modo che siano semplici da usare, un bel lavoro.
Quello che volevo sapere e' se ci sono possibilita' aggiuntive offerte da qualche api, quali personalizzazioni dei grafici (sfondi, pattern, legende), oppure api per avere solo una "parte" del documento html (potrei essere interessato ad inserire questo documento in un altro), ....
Don't get me wrong, hai fatto un ottimo lavoro. Sono solo curioso
Certo :)
Trovi diverse informazioni nella Home del progetto
http://code.google.com/p/jxreport/
E poi documentazione più specifica nella sezione Wiki:
http://code.google.com/p/jxreport/w/list
Allora:
per quanto riguarda la visualizzazione o no della leggenda c'è l'apposito xml tag
<showlegend>true</showlegend>
Per quanto riguarda sfondi, dimensioni, padding, ecc puoi usare i CSS:
<css>
<cssRule>
<ruleName>padding</ruleName>
<ruleValue>20px 0px</ruleValue>
</cssRule>
</css>
Per inserire il report in un altro documento HTML ho già previsto dei metodi java che però non ho ancora implementato, lo farò a breve :stordita:
Prevedo anche di fare in modo che i grafici possano essere creati da Java code, se non si vuole far uso dell'XML insomma
E ovviamente accetto ogni tipo di suggerrimento, soprattutto riguardo ulteriori feature da implementare :)
Premetto che sicuramente aggiungerò altri tipi di grafici
sottovento
20-09-2012, 13:50
Allora:
<cut>
E ovviamente accetto ogni tipo di suggerrimento, soprattutto riguardo ulteriori feature da implementare :)
Premetto che sicuramente aggiungerò altri tipi di grafici
Riguardo i suggerimenti per future feature: non ho mai trovato un pacchetto di grafica che permetta di plottare degli eventi, a mo' di impulsi.
Mi spiego:
- ascisse = tempo
- ordinate = {0, 1}
Tutto qui. Certe volte mi piacerebbe sapere quando un evento parte e quanto dura, oppure semplicemente quando e' successo senza che la durata sia necessaria....
Altro suggerimento (ma qui andiamo nel sofisticato, ma sei bravo e me lo concedo :D ): hai pensato alla possibilita' di plottare piu' curve sullo stesso grafico? E piu' curve sullo stesso grafico ma con ordinate diverse?
Si lo so, ti sto complicando la vita, ma solo perche' ho davvero apprezzato il tuo software. :cool:
ahah grazie :D
Comunque non so se hai letto nella Home del progetto, ma il motore di rendering dei grafici non l'ho scritto io, ma uso jqPlot http://www.jqplot.com/ (anche perchè ce ne sono così tanti che sarebbe stato stupido scriverne un altro)..
Per quanto riguarda l'avere più curve in uno stesso grafico è già fattibile, si tratta dell'ultimo chart nell'html di esempio, in fondo alla pagina.
Ecco l'xml:
<lineChart id="chart5">
<title>Line Chart Title</title>
<showLegend>true</showLegend>
<line>
<lineLabel>First Line</lineLabel>
<lineColor>orange</lineColor>
<lineWidth>5</lineWidth>
<showLine>true</showLine>
<markerOptions>
<style>diamond</style>
<color>black</color>
</markerOptions>
<point>
<X>1</X>
<Y>2</Y>
</point>
<point>
<X>2</X>
<Y>3</Y>
</point>
<point>
<X>4</X>
<Y>5</Y>
</point>
</line>
<line>
<lineLabel>Second Line</lineLabel>
<lineWidth>6</lineWidth>
<showLine>true</showLine>
<lineColor>blue</lineColor>
<markerOptions>
<style>square</style>
<color>black</color>
</markerOptions>
<point>
<X>2</X>
<Y>5</Y>
</point>
<point>
<X>3</X>
<Y>8</Y>
</point>
<point>
<X>1</X>
<Y>4</Y>
</point>
</line>
</lineChart>
sottovento
23-09-2012, 08:40
ahah grazie :D
Comunque non so se hai letto nella Home del progetto, ma il motore di rendering dei grafici non l'ho scritto io, ma uso jqPlot http://www.jqplot.com/ (anche perchè ce ne sono così tanti che sarebbe stato stupido scriverne un altro)..
Per quanto riguarda l'avere più curve in uno stesso grafico è già fattibile, si tratta dell'ultimo chart nell'html di esempio, in fondo alla pagina.
Ecco l'xml: <cut>
Si, l'avevo letto. Grazie per l'esempio, ti sembrera' banale ma non c'ero arrivato.
Penso che trovero' presto un modo per usare il tuo codice :D
ahaha bene mi fa piacere,
in realtà ci sono altre modifiche che non ho ancora committato.
E comunque penso di lavorarci molto nelle prossime settimane, in questi giorni sono un po' indaffarato perchè manca poco al ritorno in Italia (sono stato qualche mese all'estero) e ho tanto da fare con valigie, saluti, ecc
Comunque se ti viene in mente qualche feeture da aggiugnere scrivi pure :)
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.