Tôi có một servlet ghi tệp pdf dưới dạng ByteArrayOutputStream vào luồng đầu ra của servlet. Nếu tôi mở URL servlet, trình duyệt sẽ mở tệp. Nhưng nếu xảy ra lỗi trên servlet, trình duyệt sẽ mở một tệp pdf trống với thông báo lỗi. Gửi lỗi thông qua ServletResponse trình duyệt mở trang lỗi mặc định.Làm cách nào để mở tệp bằng JavaScript?
Tôi muốn gửi thông báo lỗi mà không chuyển hướng đến trang lỗi hoặc mở tệp pdf không hợp lệ.
tôi đã cố gắng:
new Ajax.Request('/pdfservlet', {
onSuccess: function(response) {
docWindow = window.open('','title');
docWindow.document.open('application/pdf');
docWindow.document.write(response);
docWindow.document.close();
},
onFailure: function(response) {
alert(response);
}
});
Nhưng, onSuccess mở ra một trang với [đối tượng đối tượng]
Làm thế nào tôi có thể mở một tập tin PDF sử dụng JavaScript?
tính năng này không mở ứng dụng pdf. mở một trang với% PDF-1.6 % 1 0 obj <
Tôi đã thêm một giải pháp mới, nó tương tự như những gì rde6173 đề xuất, nhưng dựa trên bộ nhớ đệm của trình duyệt. –
trình duyệt không lưu vào bộ nhớ cache. pdf được yêu cầu hai lần. –