WebサービスからPDFドキュメントを取得し、それを一時フォルダーに保存して、AdobeReaderで開く署名付きアプレットを作成しました。ファイルをローカルに保存することは避けたいのですが、それを実現する方法が本当にわかりません(私はJavaアプレットの初心者です)。
ServletResponse
Webアプリケーション(つまり、単純なサーブレット)の場合は、PDFコンテンツを;に書き込むだけで済みます。次に、ブラウザはそれを一時フォルダに保存し、Adobe Reader(またはMIMEタイプに関連付けられているアプリケーション)で開きます。
これを行う同様の方法はありますか...Javaアプレットで?
これはこれまでの私のコードです:
public class MyListener implements ActionListener {
public void actionPerformed(ActionEvent event) {
// Retrieve the document contents
byte[] content = webService.getPdfDocument(...);
// Write to file
File f = new File("my-document-filename.pdf");
FileOutputStream fos = new FileOutputStream(f);
fos.write(content);
fos.close();
// Open the file
Desktop.getDesktop().open(new File("my-document-filename.pdf"));
}
}
Desktop.open (File)byte[]
の代わりに、File
?の代わりに渡すことができます。