Docusignapi 如何解决;请求服务器“时出错”;使用docusign运行简单邮件请求时

Docusignapi 如何解决;请求服务器“时出错”;使用docusign运行简单邮件请求时,docusignapi,Docusignapi,获取错误异常:com.docusign.esign.client.ApiException:错误 请求服务器时,收到一个未成功的HTTP代码401,其中包含 响应正文:“{”错误代码“:“合作伙伴身份验证失败”, “消息”:“未找到或禁用指定的积分器密钥。 未指定积分器密钥。“}” 在运行下面的示例代码时,不知道如何解决这个问题。有人能帮我解决这个错误吗 public class DocuSignExample { public static void main(String[] a

获取错误异常:com.docusign.esign.client.ApiException:错误 请求服务器时,收到一个未成功的HTTP代码401,其中包含 响应正文:“{”错误代码“:“合作伙伴身份验证失败”,
“消息”:“未找到或禁用指定的积分器密钥。 未指定积分器密钥。“}”

在运行下面的示例代码时,不知道如何解决这个问题。有人能帮我解决这个错误吗

public class DocuSignExample {


    public static void main(String[] args) {
        byte[] fileBytes = null;

        String pathToDocument = "/TestFile.pdf";

        try
        {
            String currentDir = System.getProperty("user.dir");

            // read file from a local directory
            Path path = Paths.get(currentDir + pathToDocument);
            fileBytes = Files.readAllBytes(path);
        }
        catch (IOException ioExcp)
        {
            // TODO: handle error
            System.out.println("Exception: " + ioExcp);
            return;
        }

        // create an envelope that will store the document(s), field(s), and recipient(s)
        EnvelopeDefinition envDef = new EnvelopeDefinition();
        envDef.setEmailSubject("Please sign this document sent from Java SDK)");

        // add a document to the envelope
        Document doc = new Document();  
        String base64Doc = Base64.getEncoder().encodeToString(fileBytes);
        doc.setDocumentBase64(base64Doc);
        doc.setName("TestFile"); // can be different from actual file name
        doc.setFileExtension(".pdf"); // update if different extension!
        doc.setDocumentId("1");

        List<Document> docs = new ArrayList<Document>();
        docs.add(doc);
        envDef.setDocuments(docs);

        // add a recipient to sign the document, identified by name and email we used above
        Signer signer = new Signer();
        signer.setEmail("dijo@gmail.com");
        signer.setName("dijo francis");
        signer.setRecipientId("1");


        // create a |signHere| tab somewhere on the document for the signer to sign
        // here we arbitrarily place it 100 pixels right, 150 pixels down from top
        // left corner of first page of first envelope document
        SignHere signHere = new SignHere();
        signHere.setDocumentId("1");
        signHere.setPageNumber("1");
        signHere.setRecipientId("1");
        signHere.setXPosition("100");
        signHere.setYPosition("150");

        // can have multiple tabs, so need to add to envelope as a single element list
        List<SignHere> signHereTabs = new ArrayList<SignHere>();      
        signHereTabs.add(signHere);
        Tabs tabs = new Tabs();
        tabs.setSignHereTabs(signHereTabs);
        signer.setTabs(tabs);

        // add recipients (in this case a single signer) to the envelope
        envDef.setRecipients(new Recipients());
        envDef.getRecipients().setSigners(new ArrayList<Signer>());
        envDef.getRecipients().getSigners().add(signer);

        // send the envelope by setting |status| to "sent". To save as a draft set to "created" instead
        envDef.setStatus("sent");

        try
        {
            // instantiate a new EnvelopesApi object
            EnvelopesApi envelopesApi = new EnvelopesApi();
            // call the createEnvelope() API
            EnvelopeSummary envelopeSummary = envelopesApi.createEnvelope("46e16c10-69f0-4258-b1ff-1ab5c61f2619", envDef);
            System.out.println("Envelope has been sent to " + signer.getEmail());
            System.out.println("EnvelopeSummary: " + envelopeSummary);
        }
        catch (com.docusign.esign.client.ApiException ex)
        {
            System.out.println("Exception: " + ex);
        }
    }
}
公共类文档示例{
公共静态void main(字符串[]args){
byte[]fileBytes=null;
字符串pathToDocument=“/TestFile.pdf”;
尝试
{
字符串currentDir=System.getProperty(“user.dir”);
//从本地目录读取文件
Path Path=Path.get(currentDir+pathToDocument);
fileBytes=Files.readAllBytes(路径);
}
捕获(IOException ioExcp)
{
//TODO:句柄错误
System.out.println(“异常:+ioExcp”);
返回;
}
//创建一个信封,用于存储文档、字段和收件人
EnvelopedDefinition envDef=新的EnvelopedDefinition();
setEmailSubject(“请签署从JavaSDK发送的此文档”);
//将文档添加到信封中
单据单据=新单据();
字符串base64Doc=Base64.getEncoder().encodeToString(fileBytes);
文件setDocumentBase64(base64Doc);
doc.setName(“TestFile”);//可以与实际文件名不同
doc.setFileExtension(“.pdf”);//如果扩展名不同,则更新!
文件setDocumentId(“1”);
列表文档=新建ArrayList();
docs.add(doc);
环境定义文件(文件);
//添加一个收件人来签署我们上面使用的名称和电子邮件标识的文档
签名者签名者=新签名者();
signer.setEmail(“dijo@gmail.com");
签名人:setName(“dijo francis”);
签名人setRecipientId(“1”);
//在文档的某个位置创建| signHere |选项卡,供签名者签名
//在这里,我们任意将其放置在100像素的右边,从顶部向下150像素
//第一个信封文件第一页的左角
SignHere SignHere=新的SignHere();
signHere.setDocumentId(“1”);
signHere.setPageNumber(“1”);
signHere.setRecipientId(“1”);
signHere.setXPosition(“100”);
在此处签名。设置位置(“150”);
//可以有多个选项卡,因此需要将其作为单个元素列表添加到信封中
List signHereTabs=new ArrayList();
signHereTabs.add(signHere);
制表符=新制表符();
tabs.setSignHereTabs(signHereTabs);
签名者。设置选项卡(选项卡);
//将收件人(在本例中为单个签名者)添加到信封中
setRecipients(新收件人());
envDef.getRecipients().setSigners(新ArrayList());
envDef.getRecipients().getSigners().add(签名者);
//通过将| status |设置为“sent”发送信封。将另存为草稿集改为“created”
环境定义设置状态(“已发送”);
尝试
{
//实例化一个新的EnvelopesApi对象
EnvelopesApi EnvelopesApi=新的EnvelopesApi();
//调用createEnvelope()API
信封摘要信封摘要=信封API.createEnvelope(“46e16c10-69f0-4258-b1ff-1ab5c61f2619”,envDef);
System.out.println(“信封已发送至”+signer.getEmail());
System.out.println(“信封摘要:+信封摘要”);
}
catch(com.docusign.esign.client.ApiException)
{
System.out.println(“异常:+ex”);
}
}
}

这很可能是集成密钥的问题。我建议大家看看这段最近的视频,它讲述了集成密钥以及如何配置它们-

这条消息有问题。检查您的API密钥是否仍然有效并且设置正确。@JM-AGMS感谢JM,现在我在线程“main”com.sun.jersey.API.client.ClientHandlerException中收到错误
异常:grant\u type=authorization\u code
缺少代码?你能帮我解决这个错误吗?我不确定你正在使用的SDK是什么,但是当你使用RESTAPI时,你有一些方法来准备你的请求。看这个。