Microsoft
Software
Hardware
Network
Frage : servlet Downloadakte mit dem Javascript ermöglicht
Hallo, ist
This, was ich achieve.
I habe einen Klientenseitencode benötige, der ein servlet mit Parametern benennt. Das servlet erhält die Parameter und verarbeitet ihn. Eine Zip Datei erzeugen und sie zurück zu Klienten für Download dann senden. „Außer als“ Fenster erscheint. Es laufen lässt großes mit kleiner Downloadakte, weil „außer als“ Fenster sofort herauskommt. Aber mit größerer Downloadakte, möchte ich ein Wartefenster haben, also weiß der Benutzer, dass etwas herunterladen. Zu diesem Zweck muss ich irgendein Javascript vom servlet zurück führen, um dem Klienten zu erklären, dass die Zip Datei erzeugte getan, also das Wartefenster closed.
This sein kann ist das Stück des Codes, den ich verwende. Ich in der Lage bin, die Zip Datei herunterzuladen, aber ich kann nicht, ich Javascript in der Antwort einschließen kann? Ich versucht mehrfachen Bedienerstoß, aber entsprechend etwas Forschung, arbeitet IE nicht für mehrfachen Bedienerstoß. Übrigens benutzt meine Vorderseite smartgwt. Dank viel!
response.setContentType („t
ext/html“)
;
ServletOutputStream heraus = Null;
Versuch {
heraus = response.getOutputStream ()
;
//out.write ((„").getBy
tes ());
//out.write ((„").getBy
tes ());
//
//out.write ((„").ge
tBytes ());
//
//out.write ((„").getB
ytes ());
} Fang (Ausnahme e) {
e.printStackTrace ();
}
List
exportList = neues ArrayList
();
Schnur selectedRec = request.getParameter (reque
st.getPara
meter („nam
e“));
Schnur fileId = "";
Versuch {
JSONTokener tok = neues JSONTokener (selectedRec);
JSONArray jarray = neues JSONArray (tok);
für (int I = 0; I < jarray.length (); i++) {
Schnurweg = jarray.getString (i);
logger.debug („jarray“ + „ist“ i + + Weg);
int Art = path.split („/").length;
fileId = path.split („/") [2];
wenn (Art == 3) {
exportList.add („file=“ + Weg);
} sonst wenn (Art == 5) {
exportList.add („document= "
+ Weg);
} sonst wenn (Art == 7) {
exportList.add („page=“ + Weg);
}
}
} Fang (JSONException e) {
logger.error („Exportstörung“, e);
e.printStackTrace ();
}
Versuch {
HashMap
outMap =
ExportUtils.getContentFrom
Repo („expo
rt“, exportList);
// schreiben zu den Reißverschluss file
ByteArrayOutputStream baos = zum ExportUtils.zipFiles (outMa
p);
response.setHeader („Conten
t-Disposit
ion“, „Zubehör; filename= "
+ fileId +“ .zip ");
Versuch {
//OutputStream heraus = response.getOutputStream ()
;
out.write (baos.toByteArray
());
//out.write ((„").ge
tBytes ());
out.flush ();
} Fang (IOException e) {
e.printStackTrace ();
}
} Fang (Ausnahme e) {
logger.error („Exportstörung“, e);
e.printStackTrace ();
}
Antwort : servlet Downloadakte mit dem Javascript ermöglicht
Sie können den Weg/URL der Akte mit einigen Mitteilungen (Größe, Dateiname,…) zuerst zurückbringen zum Browser dann zur Verfügung stellte der Browser, der eine gültige Mitteilung und URL-Anfang herunterladen die Akte mit dem URL empfängt
Weitere Lösungen
Wort-Presse, die Frage bewirtet
asp.net: Mein Problem ist, benutze ich einen ajax Ergänzung Kalender, um BeginDate u. EndDate Werte einzutragen
Silverlight 4 UI Ereignisse
wie kann ich irgendeine Bildentschließung online ändern und sie zum lokalen PC dann innen sparen??
ZFS Sicherungshilfe Ubuntu 10.0.4 LTS
Form-Frage für Kristallreports
Betreffend INOTES in Lotos 8.5
Mühen, die ZWISCHEN Logik erhalten zu arbeiten
Spannungs-Sensor ermittelte einen Ausfall auf Bediener DELL-PowerEdge 2650
broadcom NIC teaming