2016-04-21 9 views
0

Ich verwende den Quarz zum Erstellen des Zeitplans und führen Sie den Job. Allerdings muss ich den Jaspis-Bericht in einem der Jobs generieren und senden. Ich weiß, dass Jaspis-Server verwendet werden kann, um den Bericht zu planen, aber ich habe geplant, in meiner Java-Anwendung erstellt. Wie kann man den Bericht mit Java-Anwendung erstellen?Zeitplan Jaspis-Bericht mit Quartz-Scheduler

ich über den Link lesen - Jasper Report scheduler

Kurz gesagt, wie ein Jaspis-Server fragt den Bericht zu erstellen und Quarz Job eine E-Mail an bestimmten Benutzer senden lassen.

public class MyJob implements Job { 

@Override 
public void execute(JobExecutionContext context) throws JobExecutionException { 

    System.out.println("Context : " + context.toString()); 

    //Can we create the jasper report here and then send using email, I have jasper server but I wanted to use the separate job to process the report and send. 

} 
+0

Wenn Sie diesen Job getrennt von JasperServer ausführen müssen, müssen Sie die Datei '.jasper' oder' .jrxml' aus dem Bericht Ihres Servers zur Anwendung hinzufügen und dann vom Quartz-Job aus aufrufen. – sanluck

+0

Wenn Sie es nur aus dem Job, aber nicht separat aufrufen müssen, können Sie den Bericht von JasperServer über die REST-API aufrufen und dann alles tun, was Sie im Quartz-Job wollen. – sanluck

+0

OK. Wie kann man den Quartz Scheduler in Jasper Server integrieren? Ich habe bereits mehrere Scheduler und mehrere Jobs erstellt. Jetzt muss ich den Jasper-Bericht mit dem geplanten Job senden. Da du erwähnt hast, dass ich es mit einer separaten Instanz machen kann, wie kann ich Jasper Server meinen Zeitplan wissen lassen und den Job aufrufen – Santosh

Antwort

1

Sie können Sie JapserServer über REST-API zugreifen und machen den Rest der Arbeit in den Quarz-Scheduler.
1) Starten Sie den Quarz-Job. Authentifizieren
2) auf Jasper Server (here is documentation)
3) Rufen Sie den Bericht über REST-API (documentation)
4) Holen Sie sich das Ergebnis und tun, was Sie wollen (zum Beispiel an E-Mail gesendet werden).
5) Quarzauftrag beenden.

+0

Danke, ich werde das versuchen und den Beitrag aktualisieren. – Santosh