Sto lavorando a un progetto che mira a sostituire il nostro generatore di PDF corrente con JasperReports Server. Il piano è utilizzare l'API REST/HTTP per raggiungere un alto livello di astrazione tra i sistemi.Passaggio del contenuto durante la generazione del report JasperServer utilizzando l'API REST
In modo ottimale, non vogliamo consentire a JasperReports Server di estrarre i dati dal database, poiché ciò ignorerebbe la registrazione e l'autorizzazione esistenti nell'architettura dell'applicazione chiamante. Invece, vorremmo iniziare con l'estrazione del contenuto nell'applicazione chiamante, e poi passare quel contenuto a JasperReports Server.
Abbiamo fatto un bel po 'di ricerche e la mancanza di risultati rilevanti indica che questo non è il modo in cui solitamente si usa JasperReports Server. I parametri di input nei tutorial che abbiamo trovato sono in genere valori scalari (interi, booleani o stringhe) e non strutture o oggetti complessi. Inoltre, sembra che più o meno ogni campione presuppone che si desidera consentire a JasperReports Server di connettersi a un database.
Se è possibile passare in strutture complesse (come una serie di mappe, dove alcuni elementi della mappa sono matrici o mappe stesse), qual è la migliore pratica per farlo? Non ho idea di come una tale struttura debba essere formattata nel corpo della richiesta. L'API SOAP è più adatta?
Se ciò non è affatto come si dovrebbe progettare una soluzione JasperReports Server, quali prodotti/soluzioni alternative sono più adatti?
Grazie in anticipo per qualsiasi input.
È possibile utilizzare l'operatore 'get' per ottenere il file modello del report (JRXML). Successivamente è possibile passare al report tutto ciò che si desidera (con l'aiuto dell'API JasperReports). Ad esempio, puoi passare Bean come origine dati o passare Map come parametro. –
Grazie per la risposta, Alex. Come ho appena scritto qui sotto, ho deciso di seguire un altro approccio. Indipendentemente da ciò, non sono sicuro di vedere il punto nel recupero del JRXML usando l'API HTTP ... – MaxH