[acao-it] path relativi in iReport e Aliandre

francois.robert at libero.it francois.robert at libero.it
Mon Jun 1 00:43:10 CEST 2015


Buona sera

Uno dei effetti colaterrali dei spostamenti di server (VIRTUAL_ACAO verso ONDA e poi a l'indietro) e stata la necessità di andare a modificare manualmente i reports usati da Aliandre *.jrxml e poi ricompilarli manualmente in *.jasper. Tali reports comportano dei riferimenti ai loghi del ACAO, del ENAC, della CAMO etc... sotto forma di paths UNC assoluti: Cioè il report contiene il nome del server stesso dove si trova. Se cambia server (e sparisce l'originale) non esce più il report (o al meglio esce senza logo)
In oltre, questi paths usano il backslash come separatore di cartelle e quindi se modifico con iReport  uno di questi files su una macchina Linux (eg il mio laptop) non funziona.

Mi piacerebbe eliminare questi due inconvenienti.

La prima cosa che ho notato e che su Windows, iReport (e Aliandre) capisce nello stesso modo il backslash del DOS e il forward slash di Unix. Cioè iReport/Aliandre su Windows accetta entrambi path UNC 
\\Virtual_acao\AreaDati\WEBSTART\Aliandre2014\Report\ACAO.jpg
o
//Virtual_acao/AreaDati/WEBSTART/Aliandre2014/Report/ACAO.jpg

(nel primo caso è più verboso perchè l'espressione Java specificata concretamente in iReport deve avere un escape sequence \\ per ogni \)

La seconda cosa che ho notato è che iReport accetta i paths relativi ma non le interpretta nello stesso modo di Aliandre.
Dal punto di vista di iReport, la cartella corrente (.) è quella dove si trova il file .jrxml che sta editando/compilando. 
Dal punto di vista di FXAliandre2015 invece no. Dopo un po di prove, ho scoperto che la cartella corrente (.) è quella specificata nello shortcut di Windows, sotto la voce "Da"

Per esempio, in iReport un report
\\Virtual_acao\AreaDati\WEBSTART\Aliandre2014\Report\FR_Test.jrxml che riferisce un logo ./ACAO.jpg (o in modo equivalente ACAO.jpg o .\ACAO.jpg ) fa vedere il file 
\\Virtual_acao\AreaDati\WEBSTART\Aliandre2014\Report\ACAO.jpg

Per avere lo stesso effetto in FXAliandre2015, bisogna specifcare nel suo shortcut di avviamento il valore "Da":
\\Virtual_acao\AreaDati\WEBSTART\Aliandre2014\Report

Questa logica è applicabile anche ai subreports.

In questa maniera diventa possibile (almeno in FXAliandre2015) eliminare i path assoluti e rendere portabile da un server a l'altro i nostri reports.

Dopo le dovute prove con i reports esistenti che riferiscono dei loghi e subreport, mi piacerebbe quindi sostituire i paths UNC assoluti DOS con questi path relativi Unix. 

François

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.acao.it/pipermail/it/attachments/20150601/d9bcc4e3/attachment.html>


More information about the It mailing list