コンテンツにスキップ
getnextpdf.com

エラーリファレンス

これは、NextPDF Core が送出する例外を領域別に整理したリファレンス一覧です。各カテゴリーページでは、クラスごとに、いつ送出されるか、どのような構造化データを保持するか、どのように復旧するかを記載しています。特定のクラスを捕捉するのではなく症状を診断したい場合は、代わりにトラブルシューティングガイドから始めてください。これらは観察できる現象に沿って整理されています。

  • ほとんどの例外は単一の基底クラス NextPdfException を継承するため、1 つの catch ブロックでファミリー全体を捕捉できます。
  • NextPdfExceptionコンテキスト対応 です。getContext(): array を宣言する ContextAwareExceptionInterface を実装しています。多くのサブクラスは getContext() をオーバーライドして構造化された診断キーを返します。それ以外は空のデフォルトを継承し、メッセージと型付きゲッターを通じて詳細を公開します。
  • 少数の低レベル例外は、NextPdfException ではなく PHP の \RuntimeException を直接継承します。これらは コンテキスト対応ではなく、詳細を public readonly プロパティに保持します。各カテゴリーページで明示的に示しています。
  • …Violation という名前の 2 つの準拠型(ComplianceViolationRuleViolation)は 値オブジェクト であり、例外ではありません。送出されることなく検出結果を記述します。

NextPdfException は、\RuntimeException を継承し ContextAwareExceptionInterface を実装する抽象クラスです。コントラクトは小さなものです。

interface ContextAwareExceptionInterface
{
/** @return array<string, mixed> structured, log-safe diagnostic context */
public function getContext(): array;
}

したがって、防御的なハンドラーは次のようになります。

use NextPDF\Exception\NextPdfException;
try {
// … NextPDF operation …
} catch (NextPdfException $e) {
$logger->error($e->getMessage(), $e->getContext());
// getContext() returns [] when a subclass does not override it;
// the message and any typed getters still carry the detail.
}

一部の失敗は素の \RuntimeException として表面化するため(カテゴリーごとの注記を参照)、念には念を入れた境界では \RuntimeException も捕捉し、具象型を検査するとよいでしょう。

  • Core and general errors — ドキュメント、マージ、アクセシビリティ、e-invoice、色空間、値オブジェクト、strict モードの失敗、および共有された基底型。
  • Security, signing, and PKI errors — 署名の作成と検証、タイムスタンプ、PKI のパスおよび名前制約の検証、ハッシュ計算、完全性、そして PKCS#11。
  • Rendering and I/O errors — HTML レイアウトとページドメディア、フォントとテキストシェイピング、ライターとリーダー、そして XMP メタデータ。
  • Runtime and support errors — HTTP トランスポート、レジリエンス(サーキットブレーカー、機能低下モード)、可観測性、そしてマニフェストの処理。
  • Accelerator errors — オプションのアクセラレーションサイドカートランスポート。
  • Compliance errors — 条項ハッシュの要件と準拠ライフサイクル。