tutorials.de Buch-Aktion 05/2012
Seite 2 von 2 ErsteErste 12
ERLEDIGT
NEIN
ANTWORTEN
19
ZUGRIFFE
1258
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #16
    Avatar von vfl_freak
    vfl_freak vfl_freak ist offline Mitglied Diamant
    Registriert seit
    Aug 2007
    Ort
    Niedersachsen
    Beiträge
    2.161
    Moin,

    ah, ok ... dann scheint das ja möglicherweise doch zu gehen.
    Der einzige nennenswerte Unterschied sind wohl die Zeilen mit "setHeader".
    Da Du die Funktion doppelt aufrufst, wird möglicherweise der erste Eintrag durch den zweiten überschrieben (nur so als Idee) !

    Ob sich durch diesen Code das Downloadfenster öffnen sollte, kann ich Dir leider nicht sagen!

    Gruß
    Klaus
    swordwolt bedankt sich. 
    Es ist noch kein Meister vom Himmel gefallen - sonst hätte man schon längst seine Leiche gefunden !!

    Falls ich helfen konnte, wäre eine Bewertung oder ein Danke nett ;-)
    -------------------------------------------------------------------------------------------------
    Ich beantworte keine Fragen per PN !!
    Stellt Eure Fragen im Forum - dann haben alle etwas davon !!

  2. #17
    swordwolt swordwolt ist offline Mitglied
    Registriert seit
    Dec 2011
    Beiträge
    11
    Der header sieht nach dem Aufrufen so aus:

    Antwort-Header
    Content-Description File Transfer
    Content-Disposition attachment;filename=downloadfilename.pdf
    Content-Type application/pdf
    Server Jetty(6.1.26)
    Transfer-Encoding chunked
     

  3. #18
    Avatar von vfl_freak
    vfl_freak vfl_freak ist offline Mitglied Diamant
    Registriert seit
    Aug 2007
    Ort
    Niedersachsen
    Beiträge
    2.161
    Moin,

    oh, sorry ...
    klar - Description und Disposition - wer lesen kann ist klar im Vorteil!

    Hast Du outputByte während der Schleife mal im Debugger beobachtet ?

    Gruß
    Klaus
     
    Es ist noch kein Meister vom Himmel gefallen - sonst hätte man schon längst seine Leiche gefunden !!

    Falls ich helfen konnte, wäre eine Bewertung oder ein Danke nett ;-)
    -------------------------------------------------------------------------------------------------
    Ich beantworte keine Fragen per PN !!
    Stellt Eure Fragen im Forum - dann haben alle etwas davon !!

  4. #19
    swordwolt swordwolt ist offline Mitglied
    Registriert seit
    Dec 2011
    Beiträge
    11
    So da mein Problem leider immer noch nicht gelöst ist und es langsam für mich knapp wird brauche ich dringend eure Hilfe und werde alle Sachen hier nochmal zusammenfassen.


    Mein Quellcode:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    
    @Controller
    public class AjaxDocumentDownloadController
    {
        
        @RequestMapping(value = "/master/download", method = RequestMethod.GET)
        public void download( @RequestParam(value = "folderPath", required = true) String folderPath, HttpServletRequest request, HttpServletResponse response ) throws Exception
        {
            response.setContentType("application/pdf");
            response.setHeader("Content-Description", "File Transfer");
            response.setHeader("Content-Disposition", "attachment;filename=downloadfilename.pdf");
            StringBuffer sb = new StringBuffer("whatever string you like");
            InputStream in = new ByteArrayInputStream(sb.toString().getBytes("UTF-8"));
            ServletOutputStream out = response.getOutputStream();
            
            byte[] outputByte = new byte[24];
            // copy binary connect to output stream
            while (in.read(outputByte, 0, 24) != -1)
            {
                out.write(outputByte, 0, 24);
            }
            in.close();
            out.flush();
            out.close();
        }
    }


    Dieser Controller wird von einem Klick auf einen Button aufgerufen und soll mir eine pdf Datei mit dem Inhalt "whatever string you like" bereitstellen.
    Diese soll dann von dem Nutzer über den gewohnten Internetbrowserdownload an eine von ihme gewählte lokale Stelle auf seinem Rechner gespeichert werden.

    Frage:
    Ist dies wirklich der gesammte Quellcode um dies auszuführen?


    Wenn ich nun auf den Button klicke gibt Firebug folegendes aus

    Header:
    bytestream Beispiel-header_firebug.png

    Antwort:
    bytestream Beispiel-antwort_firebug.png

    Im Debugmodus von eclipse erscheint folgendes:

    Request:
    bytestream Beispiel-request_eclipse_debug.png

    Response:
    bytestream Beispiel-response_eclipse_debug.png

    StringBuffer:
    bytestream Beispiel-stringbuffer_eclipse_debug.png

    Input:
    bytestream Beispiel-inputstream_eclipse_debug.png

    Output:
    bytestream Beispiel-output_eclipse_debug.png

    Outputbyte:
    bytestream Beispiel-outputbyte_eclipse_debug.png

    In dieser Reihenfolge.


    Problem:

    Der Browser ruft kein Downloadfenster auf ( Dies wo der Benutzer den Speicherort wählt).
     

  5. #20
    swordwolt swordwolt ist offline Mitglied
    Registriert seit
    Dec 2011
    Beiträge
    11
    Okay der Code ist richtig.

    Der Fehler war das JQuery die Antwort nicht verarbeiten konnte.

    Lösung:

    document.location.href="url";
     

Ähnliche Themen

  1. Bytestream in PHP?
    Von alphaChill im Forum PHP
    Antworten: 6
    Letzter Beitrag: 25.02.11, 15:11
  2. Antworten: 1
    Letzter Beitrag: 06.11.07, 22:27
  3. Laufzeitoptimierung BufferedImage->Bytestream
    Von swalbking im Forum Java
    Antworten: 0
    Letzter Beitrag: 10.07.07, 09:16
  4. SWT Beispiel
    Von tinella im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 2
    Letzter Beitrag: 03.02.06, 16:47
  5. php & oo => ein Beispiel
    Von barney_hh im Forum PHP
    Antworten: 3
    Letzter Beitrag: 27.04.05, 14:57