4.1. PDF帳票出力API¶
PDF帳票出力APIで発生するトラブルとその解決方法について説明します。
関連する現象
- エラーコード「–11」が発生する
- エラーコード「–23」が発生する
- エラーコード「–100」が発生する
- エラーコード「–103」が発生する
- エラーコード「–104」が発生する
- エラーコード「–515」が発生する
- エラーコード「–516」が発生する
- エラーコード「–999」が発生する
- エラーコード「–1012」が発生する
- java.lang.NoClassDefFoundError が発生する
- java.lang.UnsatisfiedLinkError が発生する
- PDFIllegalLicenseException が発生する
- 運用を開始してからしばらくするとPDF帳票が出力されなくなる
- PDF帳票の文字が文字化けする
- PDF帳票の文字の位置がずれる
- PDF帳票の文字が想定していたフォントと異なる
- PDF帳票にフォントが埋め込まれていない
4.1.1. エラーコード「–11」が発生する¶
現象¶
連票形式 IODBDOC のPDF帳票出力時にエラーコード「-11」が発生します。
発生条件¶
- 連票形式 IODBDOC のPDF帳票出力時
原因¶
カラムデータに「null」が指定されています。
4.1.2. エラーコード「–23」が発生する¶
現象¶
次のいずれかの現象が発生します。
- 単票形式 IODOC のPDF帳票出力時にエラーコード「-23」が発生します。
- 連票形式 IODBDOC のPDF帳票出力時にエラーコード「-23」が発生します。
発生条件¶
次のバージョンで単票形式 IODOC のPDF帳票出力実行時
- 1.9.3.X
- 1.9.4.0
- 1.9.4.0.X
連票形式 IODBDOC のPDF帳票出力実行時
原因¶
次のいずれかの原因が考えられます。
単票形式 IODOC のPDF帳票出力時の場合
連携エンジン IOWebDOC の不具合です。次のバージョンで発生する可能性があります。
- 1.9.3.X
- 1.9.4.0
- 1.9.4.0.X
連票形式 IODBDOC のPDF帳票出力時の場合
明細表を持たない帳票レイアウトを使用しています。
解決方法¶
次のいずれかの対応を行ってください。
単票形式 IODOC のPDF帳票出力時の場合
連携エンジン IOWebDOC をアップデートしてください。
移行手順については、「 IM-PDFDesigner for Accel Platform 移行ガイド 」-「 intra-mart Accel Platform のアップデート 」を参照してください。
連票形式 IODBDOC のPDF帳票出力時の場合
連票形式 IODBDOC は明細表をメインに扱うツールのため、明細表を持たない帳票レイアウトで帳票を作成した場合、エラーが発生します。
連票形式 IODBDOC は、行数可変の明細表の扱いに適しています。
そのため、明細表を持たない、または、行数固定の明細表を扱う帳票の場合は、単票形式 IODOC での作成を検討してください。
また、連票形式 IODBDOC では、データ項目変数を1つ以上定義することで、明細表を扱う帳票レイアウトとして見なされます。
当該帳票レイアウトを引き続き連票形式 IODBDOC で作成する場合は、データ項目変数がデータブロック以外でも使用できることを利用し、定義されている外部変数をデータ項目変数に変更してください。
外部変数を1つだけデータ項目変数に変更する場合は、次の通りです。
- 「データ設定」画面-「データ数」を「1」と設定します。
- 「外部変数設定」画面から変更する外部変数を削除します。
- 変更する外部変数の「項目属性編集」画面-「基本属性」タブから、「データタイプ」を「データ項目変数」へ変更、「データ」を「$1」へ変更します。
- 変更する外部変数へ渡していたデータを、データ項目変数へ渡すよう指定します。
コラム
データ項目変数を1つ以上定義した際に、データを渡さない、または、渡すデータの数が一致していない状態で帳票作成を行った場合、エラーが発生します。
そのため、定義したデータ項目変数と渡すデータの数が同じになるようにしてください。
回避方法¶
ありません。
復旧方法¶
ありません。
4.1.3. エラーコード「–100」が発生する¶
現象¶
PDF帳票出力時にエラーコード「-100」が発生します。
原因¶
次のいずれかの原因が考えられます。
- 入出力先のディスク容量が不足している。
- 入出力先のディレクトリ、または、ファイルに対するアクセス権限が不足している。
- 入出力先のファイルを別プロセスで使用している。
- 連票形式 IOCELA の帳票レイアウトファイルの改行コードがCRLFになっている。( Linux 環境のみ)
- 帳票レイアウトファイルで定義したカラム数と、埋め込み用データファイルのカラム数が一致していない。
解決方法¶
次のいずれかの対策が考えられます。
入出力先のディスク容量が不足している場合
入出力先のディスク容量を増やしてください。
入出力先のディレクトリ、または、ファイルに対するアクセス権限が不足している場合
入出力先のディレクトリ、または、ファイルに対するアクセス権限を変更してください。
入出力先のファイルを別プロセスで使用している場合
入出力先のファイルを使用している別プロセスを終了してください。
連票形式 IOCELA の帳票レイアウトファイルの改行コードがCRLFになっている場合( Linux 環境のみ)
連票形式 IOCELA の帳票デザインツールは、改行コードがCRLFの帳票レイアウトファイルを出力します。帳票レイアウトファイル(.clf)の改行コードをCRLFからLFに変更してください。
帳票レイアウトファイルで定義したカラム数と、埋め込み用データファイルのカラム数が一致していない場合
帳票レイアウトファイルで定義したカラム数と、埋め込み用データファイルのカラム数を同じにしてください。
回避方法¶
ありません。
復旧方法¶
ありません。
4.1.4. エラーコード「–103」が発生する¶
現象¶
PDF帳票出力時にエラーコード「-103」が発生します。
発生条件¶
- 帳票デザインツール IOWebDOC 環境構築直後の動作確認時(バージョンアップ含む)
原因¶
次のいずれかの原因が考えられます。
- 連携エンジン IOWebDOC の実行権限が不足している。
- 連携エンジン IOWebDOC と 帳票デザインツール IOWebDOC のバージョンが合致していない。
解決方法¶
次のいずれかの対策が考えられます。
連携エンジン IOWebDOC の実行権限が不足している場合
連携エンジン IOWebDOC のbinディレクトリと配下のファイルに実行権限を付与してください。
連携エンジン IOWebDOC と 帳票デザインツール IOWebDOC のバージョンが合致していない場合
正しい組み合わせで運用してください。バージョンの組み合わせについては、「 IM-PDFDesigner for Accel Platform セットアップガイド 」-「 帳票デザインツール・連携エンジンバージョン 」を参照してください。
回避方法¶
ありません。
復旧方法¶
ありません。
4.1.5. エラーコード「–104」が発生する¶
現象¶
PDF帳票出力時にエラーコード「-104」が発生します。
発生条件¶
- 帳票デザインツール IOWebDOC 環境構築直後の動作確認時(バージョンアップ含む)
原因¶
連携エンジン IOWebDOC の環境変数が正しく設定されていません。
4.1.6. エラーコード「–515」が発生する¶
現象¶
連票形式 IODBDOC のPDF帳票出力時にエラーコード「-515」が発生します。
発生条件¶
- 連票形式 IODBDOC のPDF帳票出力時
原因¶
帳票レイアウトファイルで定義したカラム数より多くカラムデータが設定されています。
4.1.7. エラーコード「–516」が発生する¶
現象¶
連票形式 IODBDOC のPDF帳票出力時にエラーコード「-516」が発生します。
発生条件¶
- 連票形式 IODBDOC のPDF帳票出力時
4.1.8. エラーコード「–999」が発生する¶
現象¶
連票形式 IODBDOC のPDF帳票出力時にエラーコード「-999」が発生します。
発生条件¶
- 連票形式 IODBDOC のPDF帳票出力時
原因¶
帳票レイアウトファイルで定義したカラム数と設定されているカラムデータの数が一致していません。
4.1.9. エラーコード「–1012」が発生する¶
現象¶
PDF帳票出力時にエラーコード「-1012」が発生します。
発生条件¶
- 連携エンジン IOWebDOC 環境構築直後の動作確認時(バージョンアップ含む)
原因¶
連携エンジン IOWebDOC のJavaライブラリのライセンスが無効です。
4.1.10. java.lang.NoClassDefFoundError が発生する¶
発生条件¶
- 連携エンジン IOWebDOC 環境構築直後の動作確認時(バージョンアップ含む)
原因¶
次のいずれかの原因が考えられます。
- 連携エンジン IOWebDOC のJavaライブラリが正しく設定されていない。
- OpenJDK、または、Oracle JDK に必要なJavaライブラリが含まれていない。(分散構成でのみ発生します。)
解決方法¶
次のいずれかの対応を行ってください。
連携エンジン IOWebDOC のJavaライブラリを正しく設定してください。
Javaライブラリの設定方法については、次を参照してください。
スタンドアローン構成の場合
Windows の場合
Linux の場合
分散構成の場合
Windows の場合
Linux の場合
次の手順で、OpenJDK、または、Oracle JDK に必要なJavaライブラリを設定してください。
次の jar ファイルをダウンロードします。
- javax.activation-api-1.2.0.jar ( https://mvnrepository.com/artifact/javax.activation/javax.activation-api )
- jaxb-api-2.3.1.jar ( https://mvnrepository.com/artifact/javax.xml.bind/jaxb-api )
- jaxb-core-2.3.0.1.jar ( https://mvnrepository.com/artifact/com.sun.xml.bind/jaxb-core )
- jaxb-impl-2.3.2.jar ( https://mvnrepository.com/artifact/com.sun.xml.bind/jaxb-impl )
Apache Tomcat を停止します。
ダウンロードした jar ファイルを、次のフォルダに配置します。
(Apache Tomcat のインストールフォルダ)/webapps/iowebdoc/WEB-INF/lib
回避方法¶
ありません。
復旧方法¶
ありません。
4.1.11. java.lang.UnsatisfiedLinkError が発生する¶
発生条件¶
- 連携エンジン IOWebDOC 環境構築直後の動作確認時(バージョンアップ含む)
原因¶
連携エンジン IOWebDOC の環境変数が正しく設定されていません。
4.1.12. PDFIllegalLicenseException が発生する¶
発生条件¶
- 帳票デザインツール IOWebDOC 環境構築直後の動作確認時(バージョンアップ含む)
原因¶
IM-PDFDesigner for Accel Platform のライセンスが無効です。
解決方法¶
有効なライセンスを登録してください。
ライセンスの登録方法については、「 intra-mart Accel Platform セットアップガイド 」-「 ライセンスの登録 」を参照してください。
回避方法¶
ありません。
復旧方法¶
ありません。
4.1.13. 運用を開始してからしばらくするとPDF帳票が出力されなくなる¶
現象¶
運用を開始してからしばらくするとPDF帳票が出力されなくなります。
発生条件¶
- 通常運用でのPDF帳票出力時。
原因¶
次のいずれかの原因が考えられます。
- 連携エンジン IOWebDOC が動作するために必要なメモリ空き容量が不足している。
- 一時ディレクトリに大量のファイルが残っているため一時ファイルが作成できない。
解決方法¶
次のいずれかの対応を行ってください。
連携エンジン IOWebDOC が動作するために必要な空きメモリ容量が不足している場合
連携エンジン IOWebDOC はアプリケーションサーバ(JVM)とは別のメモリ領域も使用します。空きメモリ容量が不足している場合はメモリの増設などを検討してください。
必要な空きメモリ容量については、「 IM-PDFDesigner for Accel Platform リリースノート 」-「 システム要件 」を参照してください。
一時ディレクトリに大量のファイルが残っているため一時ファイルが作成できない場合
一時ディレクトリに大量のファイルが残っている場合はファイルを削除してください。IM-PDFDesigner for Accel Platform は次の一時ディレクトリを使用します。
- OSの一時ディレクトリ
- Javaの一時ディレクトリ(java.io.tmpdir)
- intra-mart Accel Platform の一時ディレクトリ
回避方法¶
ありません。
復旧方法¶
ありません。
4.1.14. PDF帳票の文字が文字化けする¶
発生条件¶
- 通常運用でのPDF帳票出力時。
原因¶
次のいずれかの原因が考えられます。
PDF帳票の「英数字/日本語」以外の文字が文字化けして表示される場合
フォント埋め込みが無効になっています。
固定文字は正しく表示されるが、プログラムから渡す文字が文字化けして表示される場合
PDF帳票出力時の文字エンコード形式が指定されていません。
解決方法¶
次のいずれかの対応を行ってください。
PDF帳票の「英数字/日本語」以外の文字が文字化けして表示される場合
フォント埋め込みを有効にしてください。設定方法については、次を参照してください。
Windows の場合
Linux の場合
固定文字は正しく表示されるが、プログラムから渡す文字が文字化けして表示される場合
PDF帳票出力時の文字エンコード形式を指定するようプログラムを修正してください。
修正内容については、「 IM-PDFDesigner for Accel Platform API ドキュメント 」を参照してください。
次はプログラムの修正例です。
var pdf = new IODoc(iodPath, ""); pdf.setCharset( "UnicodeLittle" ); // 後続処理を記載
回避方法¶
ありません。
復旧方法¶
ありません。
4.1.15. PDF帳票の文字の位置がずれる¶
現象¶
PDF帳票の文字の位置がずれて表示されます。
発生条件¶
- 連携エンジン IOWebDOC 環境構築直後の動作確認時(バージョンアップ含む)
原因¶
フォント埋め込みが無効になっています。
4.1.16. PDF帳票の文字が想定していたフォントと異なる¶
現象¶
PDF帳票の文字が想定していたフォントと異なるフォントで表示されます。
発生条件¶
- 連携エンジン IOWebDOC 環境構築直後の動作確認時(バージョンアップ含む)
- 通常運用でのPDF帳票出力時。
4.1.17. PDF帳票にフォントが埋め込まれていない¶
現象¶
PDF帳票にフォントが埋め込まれていません。
発生条件¶
- フォント埋め込みの確認時