- PR -

Servletを使いPDFファイルを出力する

投稿者投稿内容
karei
常連さん
会議室デビュー日: 2004/06/01
投稿数: 20
投稿日時: 2004-07-27 17:03
いつもお世話になっております。

現在、Servletを使いPDFファイルを出力するロジックをテスト
していますが、うまくいっていません。
原因として、Eclipseに対して、PDFのlibの設定がうまくいっ
ていないと思っていますが、自己解決できません。
Eclipseに対して、PDFのlibの設定方法を、ご存知方がいましたら
教えて頂けないでしょうか?
(EclipseのVersionは2.1.1です。)
K
大ベテラン
会議室デビュー日: 2004/04/07
投稿数: 174
投稿日時: 2004-07-27 17:12
引用:

現在、Servletを使いPDFファイルを出力するロジックをテスト
していますが、うまくいっていません。


うまくいっていない、とはどういう状態でしょうか?
Eclipse上でコンパイルエラーが消えないのか、それとも実行はできるが正しく出力
されないのか?

引用:

原因として、Eclipseに対して、PDFのlibの設定がうまくいっ
ていないと思っていますが、自己解決できません。


なぜ、それが原因だと思ったのでしょうか?
そもそもPDFのlibとはなにを指しているのでしょうか?

等等、質問する際には回答が得られるようにできるだけ詳細な情報を載せましょう。
質問の仕方を覚えるというのは非常に大事なことだと思います。
karei
常連さん
会議室デビュー日: 2004/06/01
投稿数: 20
投稿日時: 2004-07-27 20:39
mogeさん書き込みありがとうございます。
言葉たらずなところがあり失礼しました。
内容としては以下のような状態です。

■やりたいこと
Servletで、PDFファイルを作成したJSPファイルを表示したい。

■環境
Eclipse(2.1.1)+TOMCAT(ver4.1.27)

■PDFライブラリの設置
PDFライブラリ(iText.jar、iTextAsian.jar)
を、c:\j2sdk1.4.2\jre\lib\extフォルダに配置しました。

■エラー
EclipseでTOMCATを起動し、ブラウザで
PDFファイルを作成したJSPを表示させると、下記のようなエラーがでます。

HTTP Status500

C:\app\eclipse\workspace\geography\work\org\apache\jsp\jsp\Sample354_jsp.java:8: パッケージ com.lowagie.text は存在しません。
import com.lowagie.text.*;

-----------------------------------
com.lowagie.text.*がうまくインポートされていなくて
エラーが出ています。
EclipseでPDFライブラリをどのように、設定すればいいのかを知りたかったのです。
よろしくお願いします。
ひろひろ
常連さん
会議室デビュー日: 2004/07/23
投稿数: 36
投稿日時: 2004-07-27 21:14
はじめまして。
引用:

■PDFライブラリの設置
PDFライブラリ(iText.jar、iTextAsian.jar)
を、c:/j2sdk1.4.2/jre/lib/extフォルダに配置しました。


おそらくこのディレクトリにパスが通ってないのではないでしょうか?
これが駄目なのであれば%TomcatHome%/libの下に入れるとか
%TomcatHome%/webapps/%アプリ名%/WEB-INF/libの下に入れるなどしてみてはいかがでしょう。

ぼんじぃ
ベテラン
会議室デビュー日: 2004/05/21
投稿数: 70
投稿日時: 2004-07-27 21:14
とりあえず
C:/app/eclipse/workspace/geography/WEB-INF/lib配下に
iText.jarとiTextAsian.jarをコピーしてみてください。
karei
常連さん
会議室デビュー日: 2004/06/01
投稿数: 20
投稿日時: 2004-07-27 21:27
書き込みしてくださった
みなさん、ありがとうございます。
今日は、もう自宅に帰っているので
明日、会社でためしてみます。
本当に助かります。
taku
ぬし
会議室デビュー日: 2002/11/12
投稿数: 918
お住まい・勤務地: 墨田区→中野区
投稿日時: 2004-07-28 09:27
引用:

ひろひろさんの書き込み (2004-07-27 21:14) より:
はじめまして。
引用:

■PDFライブラリの設置
PDFライブラリ(iText.jar、iTextAsian.jar)
を、c:/j2sdk1.4.2/jre/lib/extフォルダに配置しました。


おそらくこのディレクトリにパスが通ってないのではないでしょうか?


 ここって、勝手にクラスパスが設定されると思うんですけど・・・。
だから、ここにはあまり無闇に、jarファイルを置かないようにしてるかと。
Eclipseを使うと違う?

引用:

ひろひろさんの書き込み (2004-07-27 21:14) より:
これが駄目なのであれば%TomcatHome%/libの下に入れるとか
%TomcatHome%/webapps/%アプリ名%/WEB-INF/libの下に入れるなどしてみてはいかがでしょう。


 よけいな突込みかもしれませんが、Tomcat4.xですから、
TOMCAT_HOMEではなく、CATALINA_HOMEです。
PDFのライブラリーなので、
「CATALINA_HOME/common/lib」においた方が良い気がします。
karei
常連さん
会議室デビュー日: 2004/06/01
投稿数: 20
投稿日時: 2004-07-28 09:55
お世話になります。

書込みして下さった皆様のおかげで、PDFファイルを埋め込んだ
JSP(Sample354.jsp)の実行をしたときのエラーはなくなりました。
しかし、Sample354.jspの表示は真っ白い画面になってしまいます。
本来であれば、Sample354.jspの中(IEブラウザ)にPDFファイルが
表示されるはずなのですが。。。
(PDFファイルそのものは、指定したディレクトリにできており正しく作成されています)
宜しければ、jspの表示が真っ白くなる原因を教えて頂けないでしょうか?
(このSample354.jspは参考書のソースなので間違っていないと思っているのですが。。。)

===== Sample354.jsp =====
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ page import="java.io.*" %>
<%@ page import="com.lowagie.text.*" %>
<%@ page import="com.lowagie.text.pdf.PdfWriter" %>
<%@ page import="com.lowagie.text.pdf.PdfContentByte" %>
<%@ page import="com.lowagie.text.pdf.BaseFont" %>
<%
Document document=new Document(PageSize.A4,72,72,35,35);
PdfWriter.getInstance(document,(new FileOutputStream("c:\\app\\eclipse\\workspace\\geography\\pdf\\sample354.pdf")));
document.open();
BaseFont bfg=BaseFont.createFont("HeiseiKakuGo-W5","UniJIS-UCS2-HW-H",false);
Font font12g=new Font(bfg,12);
Font font24g=new Font(bfg,24);
BaseFont bfm=BaseFont.createFont("HeiseiMin-W3","UniJIS-UCS2-HW-H",false);
Font font12m=new Font(bfm,12);

Paragraph parag1=new Paragraph("申込書",font24g);
parag1.setAlignment(Element.ALIGN_CENTER);
document.add(parag1);

Paragraph parag2=new Paragraph("市役所スポーツ振興課御中",font12g);
parag2.setAlignment(Element.ALIGN_LEFT);
document.add(parag2);

Paragraph parag3=new Paragraph("体育館の利用をお願いします。利用人数20人。",font12m);
parag3.setAlignment(Element.ALIGN_LEFT);
document.add(parag3);

document.close();
%>
<html><head>
<title>Sample354</title>
<meta http-equiv="Expires" content="0">
</head><body>
<embed src="sample354.pdf" width="100%" height="100%">
</body></html>

スキルアップ/キャリアアップ(JOB@IT)