0

私は Adob​​e Echo サインに取り組んでいます。彼らの Web サイトからサンプル コードをダウンロードしました。このサンプル コードを使用してドキュメントを送信しています。sendDocument メソッドにコードが欠落しているため、変更しました。SoapHeader Exception を与えていますが、InnerException には何もありません。

{"apiActionId=XHZI4WF4BV693YS"}

以下は、ドキュメントを送信する私のコードです

 public static void sendDocument(string apiKey, string fileName, string recipient)
        {
            ES = new EchoSignDocumentService16();
            FileStream file = File.OpenRead(fileName);
            secure.echosign.com.FileInfo[] fileInfos = new secure.echosign.com.FileInfo[1];
            fileInfos[0] = new secure.echosign.com.FileInfo(fileName, null, file);
            SenderInfo senderInfo = null;
            string[] recipients = new string[1];
            recipients[0] = recipient;
            DocumentCreationInfo documentInfo = new DocumentCreationInfo(
                recipients,
                "Test from SOAP: " + fileName,
                "This is neat.",
                fileInfos,
                SignatureType.ESIGN,
                SignatureFlow.SENDER_SIGNATURE_NOT_REQUIRED
            );

            DocumentKey[] documentKeys;
            senderInfo = new SenderInfo(recipient, "password", "APIKEY");
            documentKeys = ES.sendDocument(apiKey, senderInfo, documentInfo);
            Console.WriteLine("Document key is: " + documentKeys[0].documentKey);
        }

この行で例外を与える

 documentKeys = ES.sendDocument(apiKey, senderInfo, documentInfo);

Adobe Echo Signのサンプルコードを提案できる人はいますか?

4

1 に答える 1

0

ログインのアカウント ページに、確認できる API ログがあります。リクエストのログ エントリを確認すると、詳細情報が見つかる場合があります。

コードにすぐに問題があることはわかりませんが、EchoSign API ガイドには、「tos」フィールドは非推奨であり、代わりに受信者フィールドを使用する必要があると記載されています。これは、パラメーター化されたコンストラクターを使用できないことを意味します。ドキュメント作成情報をそのまま作成してみてください (これは C# ですが、Java が必要な場合は簡単に理解できるはずです)。

RecipientInfo[] recipientInfo = new RecipientInfo[1];
recipientInfo[0] = new RecipientInfo
{
    email = "recipient",
    role = RecipientRole.SIGNER,
    roleSpecified = true 
};

DocumentCreationInfo documentCreationInfo = new DocumentCreationInfo
{
    recipients = recipientInfo,
    name = "Test from SOAP: " + fileName,
    message = "This is neat.",
    fileInfos = fileInfos,
    signatureType = SignatureType.ESIGN,
    signatureFlow = SignatureFlow.SENDER_SIGNATURE_NOT_REQUIRED
};

recipientInfo 配列を使用する場合、roleSpecified フィールドを true に設定する必要があるように見えることに注意してください。この小さなフィールドは何年にもわたって私をつまずかせ、あなたと同様のエラーを受け取っていました.

于 2013-07-22T00:51:37.943 に答える