Assembler Service API(Webサービス)を使用してDDXドキュメントを検証します。
プロジェクトファイルを含めます。
MTOMを使用するMicrosoft .NETプロジェクトを作成します。 次のWSDL定義を使用していることを確認します。http://localhost:8080/soap/services/AssemblerService?WSDL&lc_version=9.0.1
.
localhostをformsサーバーのIPアドレスに置き換えます。
PDFアセンブラクライアントを作成します。
AssemblerServiceClient
オブジェクトを作成するには、そのオブジェクトのデフォルトのコンストラクタを使用します。
System.ServiceModel.EndpointAddress
コンストラクターを使用してAssemblerServiceClient.Endpoint.Address
オブジェクトを作成します。 WSDLをAEM Formsサービスに指定するstring値を渡します(例:http://localhost:8080/soap/services/AssemblerService?blob=mtom
)。 lc_version
属性を使用する必要はありません。 この属性は、サービス参照を作成する際に使用されます。
AssemblerServiceClient.Endpoint.Binding
フィールドの値を取得してSystem.ServiceModel.BasicHttpBinding
オブジェクトを作成します。 戻り値を BasicHttpBinding
にキャストします。
System.ServiceModel.BasicHttpBinding
オブジェクトのMessageEncoding
フィールドをWSMessageEncoding.Mtom
に設定します。 この値により、MTOMが使用されます。
次のタスクを実行して、基本的なHTTP認証を有効にします。
AssemblerServiceClient.ClientCredentials.UserName.UserName
に割り当てます。AssemblerServiceClient.ClientCredentials.UserName.Password
に割り当てます。HttpClientCredentialType.Basic
をフィールドBasicHttpBindingSecurity.Transport.ClientCredentialType
に割り当てます。BasicHttpSecurityMode.TransportCredentialOnly
をフィールドBasicHttpBindingSecurity.Security.Mode
に割り当てます。既存のDDXドキュメントの参照。
BLOB
オブジェクトを作成します。BLOB
オブジェクトは、DDXドキュメントの保存に使用されます。System.IO.FileStream
オブジェクトを作成します。System.IO.FileStream
オブジェクトの内容を格納するバイト配列を作成します。 System.IO.FileStream
オブジェクトのLength
プロパティを取得して、バイト配列のサイズを決定できます。System.IO.FileStream
オブジェクトのRead
メソッドを呼び出し、読み取るバイト配列、開始位置、ストリーム長を渡すことで、バイト配列にストリームデータを入力します。BLOB
オブジェクトにMTOM
プロパティを割り当て、バイト配列の内容を指定します。DDXドキュメントを検証するための実行時オプションを設定します。
AssemblerOptionSpec
オブジェクトを作成します。AssemblerOptionSpec
オブジェクトのvalidateOnly
データメンバーに値trueを割り当てることで、DDXドキュメントの検証をAssemblerサービスに指示する実行時オプションを設定します。AssemblerOptionSpec
オブジェクトのlogLevel
データメンバーに文字列値を割り当てます。 DDXドキュメントを検証する場合は、検証プロセスに役立つ詳細情報をログファイルに書き込む必要があります。 その結果、FINE
またはFINER
の値を指定できます。 設定できる実行時オプションについて詳しくは、AEM FormsAPIリファレンスのAssemblerOptionSpec
クラス参照を参照してください。検証を実行します。
AssemblerServiceClient
オブジェクトのinvokeDDX
メソッドを呼び出し、次の値を渡します。
BLOB
オブジェクトです。Map
オブジェクトの値null
です。AssemblerOptionSpec
オブジェクト。invokeDDX
メソッドは、DDXドキュメントが有効かどうかを指定する情報を含むAssemblerResult
オブジェクトを返します。
検証結果をログファイルに保存します。
System.IO.FileStream
オブジェクトを作成します。 ファイル名の拡張子が.xmlであることを確認します。AssemblerResult
オブジェクトのjobLog
データメンバの値を取得して、ログ情報を格納するBLOB
オブジェクトを作成します。BLOB
オブジェクトの内容を格納するバイト配列を作成します。 BLOB
オブジェクトのMTOM
フィールドの値を取得して、バイト配列を入力します。System.IO.FileStream
オブジェクトを渡し、System.IO.BinaryWriter
オブジェクトを作成します。System.IO.BinaryWriter
オブジェクトのWrite
メソッドを呼び出し、バイト配列を渡すことで、バイト配列の内容をPDFファイルに書き込みます。DDXドキュメントが無効な場合は、OperationException
がスローされます。 catchステートメント内では、OperationException
オブジェクトのjobLog
メンバの値を取得できます。
関連トピック