0

Javaでpdfファイルを開くためのJavaコードがあり、完全に実行されています。

コードは

    try {
        File pdfFile = new File("/Users/alkandari/Desktop/SMART/Fahim/test.pdf");
        if (pdfFile.exists()) {
            if (Desktop.isDesktopSupported()) {
                Desktop.getDesktop().open(pdfFile);
            } else {
                System.out.println("Awt Desktop is not supported!");
            }
        } else {
            System.out.println("File is not exists!");
        }
        System.out.println("Done");
    } catch (Exception ex) {
        ex.printStackTrace();
    }

ただし、これをいくつかのメソッドに入れ、showMyPDFFile()それを呼び出しようとするとcommandLink、pdfが開かれません。それは言いAwt Desktop is not supported!ます。

 <h:commandLink value="View PDF/ DOC"
 action="#{PersonalInformationDataBean.showMyPDFFile()}" />

なぜpdfが開かないのですか?

4

1 に答える 1

2

確認のために言っておきますが、あなたは Web アプリケーションを作成していますよね?

このDesktopクラスはローカル デスクトップを参照するため、ローカル GUI クライアント アプリケーション用ですサポートされていたとしても、クライアントのデスクトップではなく、サーバーのデスクトップで PDF を開くことになります。

基本的には、PDF ファイルに (URL として) 直接リンクする必要があるようです。もちろん、Web サーバー経由で PDF を利用できるようにする必要があります。

于 2012-07-29T20:04:19.150 に答える