7 返信 最新の回答 日時: Jun 2, 2005 1:12 PM ユーザー:(yusuke00)

    Readerでのフォーム送信について

      Reader 7.0をスタンドアロンで使用してPDF表示した場合、WEBサーバへのデータ送信時にサーバスクリプトの記述によってReaderが適切に動作しない
        • 1. Re: Readerでのフォーム送信について
          Level 1
          情報不足。

          「スタンドアロンで使用してPDF表示」しているのに「WEBサーバへのデータ送信」って? 普通「スタンドアロン」とはネットワークに接続されていない状態をいうのでは?
          「WEBサーバ」の種類とかは?
          「WEBサーバ」ということはブラウザを使っているということなのか?
          「サーバスクリプトの記述」とは具体的には?
          「Readerが適切に動作しない」って、何をもって適切であるか否かを判断しているのか?

          新しいトピックを作成するときに、以下の事項が書かれています。

          > トピック内容をより理解するために必要な基本情報 (使用OSとそのバージョン・使用アプリケーションとそのバージョン)また、ご質問内容に関連する環境情報(マシン・メモリ・HDD・グラフィックカードなど)の情報をできるだけ記載するよ うにしてください。
          • 2. Re: Readerでのフォーム送信について
            Level 1
            Adobe Readerをスタンドアロンで起動して表示したPDFからサブミットフォームアクションを用いてWEBサーバへテキストフィールドのデータを送信しています。WEBサーバ側のスクリプトは Java Servletです。この際に、サーバスクリプトでは受信したデータをHTMLで表示しようとしているのですが、AdobeReaderから「Cannot handle content type:text/html;charset=Shift_JIS」と警告され正しく処理ができません。

            ちなみに、WEBブラウザのプラグインとしてAdobeReaderでPDFを表示した場合には正しく処理されます。

            スクリプトのコードは以下のようになっています。

            i public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {


            i res.setContentType("text/html; charset=Shift_JIS");


            i PrintWriter rw = res.getWriter();

            i rw.println("<!DOCTYPE HTML PUBLIC
            i ¥"-//W3C//DTD HTML 4.0//EN¥">");

            i rw.println("<HTML>");

            i rw.println("<HEAD>");

            i rw.println("<META http-equiv=¥"Content-Type¥"
            i content=¥"text/html; charset=Shift_JIS¥">");

            i rw.println("<TITLE>JAVA Servlet
            i Test</TITLE>");

            i rw.println("</HEAD>");

            i rw.println("<BODY>");

            i rw.println("<P>テスト</P>");

            i rw.println(res.getParameter("NAME"));

            i rw.println("</BODY>");

            i rw.println("</HTML>");

            i ・

            i ・


            AdobeReaderをスタンドアロンで起動させてデータ送信をさせた場合に、送信結果を正しく日本語を正しくHTML表示するためにはどのようにすればよいのでしょうか?

            同じような現象で解決をされた方、もしくは解決方法をご存知の方がいらっしゃいましたら、是非ご教示ください。お願いいたします。

            [クライアント環境]
            Windows XP(SPなし)
            Adobe Reader 7.0

            [サーバ環境]
            Windows Server 2003
            Tomcat 4.1
            JDK 1.4.2
            • 3. Re: Readerでのフォーム送信について
              Level 1
              私にはなんとも理解しにくいのだが。

              > AdobeReaderをスタンドアロンで起動させて

              #1でも書いたが、スタンドアロンって一般にはネットワークに接続しない状況を指す言葉のはずと思うが?
              仮にこれを「PC内のハードディスクにあるPDFをそのままAdobe Readerで開く」と解釈して話を進める。

              どうやらPDFフォーム機能でWEBサーバーにデーターを渡したいらしいが、そうであるならPDFのフォームをいじっていることになる。となると、それはAdobe Readerでは実現できないから、Acrobatフォーラムで扱う話ではないのか?

              データーの送り手であるPDF文書側の話がスポンと抜け落ちていて意味不明。

              WEBブラウザでプラブイン表示させてデーター通信をおこなうのは、ブラウザに依存しているから可能であって、同じPDF文書だからブラウザ無しでそのままできるというわけにもいくまい。その あたりの仕組みをどう実現しているのか分からない。

              PDFのフォーム機能のなにをどう使っているのかを説明しないと意味ないと思う。もちろん、このフォーラムではなくAcrobatフォーラムということになるはず。

              WEBサーバーにちゃんとデーターが渡っていることがはっきりしていて尚且つJava Servletで日本語を表示できないというなら、それはJava Servletの掲示板でやってもらうべきでは?
              • 4. Re: Readerでのフォーム送信について
                Level 1
                brazilさん返信ありがとうございます。

                > AdobeReaderをスタンドアロンで起動させて

                はネットワークに接続できる環境でAdobeReaderを単独起動させた状態を示しています。誤解を招く表現をしてしまい申し訳ありません。

                PDFファイル内にはテキストフィールドとサブミットフォームアクションを付加したボタンフィールドを配置しました。このPDFファイルを上記の状態で起動させたAdobeReader上で表 示させて、テキストフィールド内のデータをHTTP形式でWEBサーバへ送信しています。

                返信の内容からAdobeReader単体ではWEBサーバへのデータ送信はできないと受けとれるのですが、逆に言うと、AdobeReaderに表示されたPDFからサブミットフォームアク ションを用いてデータ送信を行うためにはWEBブラウザにプラグインした状態でなければ実現できないということになるのでしょうか?

                AcrobatとReaderの機能の違いをお聞きするようで、初歩的な質問となってしまい大変恐縮ではありますが、ご教授いただけると幸いです。
                よろしくお願いいたします。
                • 5. Re: Readerでのフォーム送信について
                  Level 1
                  > スタンドアロンって一般にはネットワークに接続しない状況を指す言葉のはずと思うが?

                  観点によります。ハードウェアとしてみれば上記の通りでしょうが、機能的に独立した状態を指す場合もあります。例えばEthernetに接続しているがNTドメインに参加していないWindo wsサーバを「スタンドアロンサーバ」と呼んだりします。
                  とは言え、質問者の言う「スタンドアロン」がどんな状態を指すのかは私にも解りません。
                  #と書いたところで、質問者の説明がありました。
                  • 6. Re: Readerでのフォーム送信について
                    Level 1
                    > PDFファイル内にはテキストフィールドとサブミットフォームアクションを付加したボタンフィールドを配置しました。

                    これだとAcrobatフォーラムで扱う内容ではないの? PDFにテキストフィールドやボタンフィールドを貼り付けて、そこにサブミットフォームアクションを設定するのにAdobe Readerでは無理。

                    「サブミットフォームアクション」の詳細な内容を記したものをAcrobatファーラムに再投稿すべきでしょう。
                    • 7. Re: Readerでのフォーム送信について
                      Level 1
                      書き込みありがとうございます。

                      テキストフィールドとサブミットフォームアクションを付加したボタンフィールドを配置したPDFファイルはAcrobatで作成しました。そのPDFファイルをAdobeReaderで表示し 、データ送信を行った際に「Cannot handle content type:text/html;charset=Shift_JIS」といった警告が出されます。

                      一応、AdobeReaderからのサブミットフォーム時に生じている問題でしたのでこちらのフォーラムに投稿させていただきました。同じことをAcrobatで行った場合には同現象は生じて おりません。

                      Acrobatフォーラムにも同様の内容を投稿してみようかと思います。