Heim  >  Artikel  >  Java  >  Wie kann ich von einer Aktionsklasse generierte PDF-Dateien mit Ajax herunterladen und öffnen?

Wie kann ich von einer Aktionsklasse generierte PDF-Dateien mit Ajax herunterladen und öffnen?

Susan Sarandon
Susan SarandonOriginal
2024-10-30 20:20:30541Durchsuche

How Can I Download and Open PDF Files Generated by an Action Class Using Ajax?

PDF-Dateien mit Ajax abrufen und öffnen

Um eine von einer Aktionsklasse generierte PDF-Datei über Ajax herunterzuladen und anzuzeigen, kann der folgende Ansatz verwendet werden genutzt werden:

Stellen Sie in der Aktionsklasse sicher, dass der Inhaltstyp korrekt auf „application/pdf“ eingestellt ist und dass der gewünschte Dateiname im Attribut „contentDisposition“ angegeben ist:

<code class="java">public String execute() {
    ...
    ...
    File report = signedPdfExporter.generateReport(xyzData, props);

    inputStream = new FileInputStream(report);
    contentDisposition = "attachment=\"" + report.getName() + "\"";
    contentType = "application/pdf";
    return SUCCESS;
}</code>

Konfigurieren Sie im Ajax-Aufruf die Anforderung, um die Stream-Antwort effektiv zu verarbeiten:

<code class="javascript">$.ajax({
    type: "POST",
    url: url,
    data: wireIdList,
    cache: false,
    success: function(data) {
        // Convert the response data to a Blob object
        var blob = new Blob([data]);
        // Create a link element to trigger the download
        var link = document.createElement('a');
        link.href = window.URL.createObjectURL(blob);
        // Set the desired file name for download
        link.download = "filename_with_extension.pdf";
        // Simulate a click event to initiate the download
        link.click();
        // Remove the Blob URL once the download completes
        window.URL.revokeObjectURL(blob);
    },
    error: function (XMLHttpRequest, textStatus, errorThrown) {
        alert('Error occurred while opening fax template' + getAjaxErrorString(textStatus, errorThrown));
    }
});</code>

Durch die Integration dieses Ansatzes kann die von der Aktionsklasse generierte PDF-Datei erfolgreich mit Ajax heruntergeladen und geöffnet werden.

Das obige ist der detaillierte Inhalt vonWie kann ich von einer Aktionsklasse generierte PDF-Dateien mit Ajax herunterladen und öffnen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn