|
1 | | -# The Official DocuSign Java Client |
| 1 | +# The Official DocuSign eSignature Java Client SDK |
2 | 2 |
|
3 | 3 | [![Build status][travis-image]][travis-url] |
4 | 4 | [![Maven Central status][maven-image]][maven-url] |
5 | 5 |
|
6 | 6 | ## Requirements |
7 | | - |
8 | | -- Java 1.9+ |
9 | | -- Free [Developer Sandbox](https://go.docusign.com/sandbox/productshot/?elqCampaignId=16531) |
| 7 | +* Java 1.9+ |
| 8 | +* Free [developer account](https://go.docusign.com/sandbox/productshot/?elqCampaignId=16531) |
10 | 9 |
|
11 | 10 | ## Compatibility |
12 | | - |
13 | | -- Java 1.9+ |
14 | | - |
15 | | -## Note |
16 | | - |
17 | | -This open-source SDK is provided for cases where you would like to make additional changes that the SDK does not provide out-of-the-box. If you simply want to use the SDK with any of the examples shown in the [Developer Center](https://developers.docusign.com/esign-rest-api/code-examples), follow the installation instructions below. |
| 11 | +* Java 1.9+ |
18 | 12 |
|
19 | 13 | ## Installation |
| 14 | +This SDK is provided as open source, which enables you to customize its functionality to suit your particular use case. To do so, download or clone the repository. If the SDK’s given functionality meets your integration needs, or if you’re working through our [code examples](https://developers.docusign.com/docs/esign-rest-api/how-to/) from the [DocuSign Developer Center](https://developers.docusign.com/), you merely need to install it by following the instructions below. |
20 | 15 |
|
21 | | -Note: DocuSign uses **Eclipse** with **Maven** for testing purposes. |
| 16 | +**Note:** DocuSign uses Eclipse with Maven for testing purposes. |
22 | 17 |
|
23 | 18 | ### Maven: |
24 | | - |
25 | | -1. In Eclipse, create a new project by selecting **File** -> **New** -> **Project**. |
26 | | -2. In the **New Project Wizard** , expand **Maven** , then select **Maven Project.** |
| 19 | +1. In Eclipse, create a new project by selecting **File > New > Project**. |
| 20 | +2. In the New Project Wizard, expand **Maven,** then select **Maven Project.** |
27 | 21 | 3. Leave **Create a simple project** unchecked. |
28 | | -4. Select **Next** , then provide a unique **Group** and **Artifact Id**. |
29 | | -5. In the directory where you've saved your project, open the _pom.xml_ file. |
30 | | -6. In the _pom.xml_ file, locate the **dependencies** node. |
31 | | -7. Add: |
32 | | - |
33 | | -``` |
34 | | -<dependency> |
35 | | - <groupId>com.docusign</groupId> |
36 | | - <artifactId>docusign-esign-java</artifactId> |
37 | | - <version>3.11.0-RC2</version> |
38 | | -</dependency> |
39 | | -``` |
40 | | - |
41 | | -8. If your project is still open, restart **Eclipse**. |
| 22 | +4. Select **Next,** then provide a unique **groupId** and **artifactId.** |
| 23 | +5. In the directory where you've saved your project, open the pom.xml file. |
| 24 | +6. In the pom.xml file, locate the `dependencies` node. |
| 25 | +7. Add: |
| 26 | + ``` |
| 27 | + <dependency> |
| 28 | + <groupId>com.docusign</groupId> |
| 29 | + <artifactId>docusign-esign-java</artifactId> |
| 30 | + <version>3.12.0-RC1</version> |
| 31 | + </dependency> |
| 32 | + ``` |
| 33 | +8. If your project is still open, restart Eclipse. |
42 | 34 |
|
43 | 35 | ## Dependencies |
44 | | - |
45 | 36 | This client has the following external dependencies: |
46 | | - |
47 | | -- io.swagger:swagger-annotations:jar:1.5.17 |
48 | | -- org.glassfish.jersey.core:jersey-client:jar:2.29.1 |
49 | | -- org.glassfish.jersey.media:jersey-media-multipart:jar:2.29.1 |
50 | | -- org.glassfish.jersey.media:jersey-media-json-jackson:2.29.1 |
51 | | -- com.fasterxml.jackson.core:jackson-core:jar:2.10.1 |
52 | | -- com.fasterxml.jackson.core:jackson-annotations:jar:2.10.1 |
53 | | -- com.fasterxml.jackson.core:jackson-databind:2.10.1 |
54 | | -- com.fasterxml.jackson.datatype:jackson-datatype-joda:jar:2.10.1 |
55 | | -- com.brsanthu:migbase64:2.2 |
56 | | -- junit:junit:jar:4.12 |
57 | | -- com.apache.oltu.oauth2:org.apache.oltu.oauth2.client:1.0.2 |
58 | | -- com.auth0:java-jwt:3.4.1 |
59 | | -- org.bouncycastle:bcprov-jdk15on:1.60 |
60 | | - |
61 | | -## Code Examples |
62 | | - |
63 | | -### Launchers |
64 | | - |
65 | | -DocuSign provides a sample application code referred to as a [Launcher](https://github.com/docusign/code-examples-java). The Launcher contains a set of 31 common use cases and associated source files. These examples use either DocuSign's [Authorization Code Grant](https://developers.docusign.com/esign-rest-api/guides/authentication/oauth2-code-grant) or [JSON Web Tokens (JWT)](https://developers.docusign.com/esign-rest-api/guides/authentication/oauth2-jsonwebtoken) flows. |
66 | | - |
67 | | -### Proof-of-concept applications |
68 | | - |
69 | | -If your goal is to create a proof-of-concept application, DocuSign provides a set of [Quick Start](https://github.com/docusign/qs-java) examples. The Quick Start examples are meant to be used with DocuSign's [OAuth Token Generator](https://developers.docusign.com/oauth-token-generator), which will allow you to generate tokens for the Demo/Sandbox environment only. These tokens last for eight hours and will enable you to build your proof-of-concept application without the need to fully implement an OAuth solution. |
70 | | - |
71 | | -## OAuth Implementations |
72 | | - |
73 | | -For details regarding which type of OAuth grant will work best for your DocuSign integration, see the [REST API Authentication Overview](https://developers.docusign.com/esign-rest-api/guides/authentication) guide located on the [DocuSign Developer Center](https://developers.docusign.com/esign-rest-api/guides/authentication). |
74 | | - |
75 | | -For security purposes, DocuSign recommends using the Authorization Code Grant flow. |
76 | | - |
77 | | -There are other use-case scenarios, such as **single page applications** (SPA) that use **Cross-Origin Resource Sharing** (CORS), or where there may not be a user to interact with your Service Account. For these use cases, DocuSign also supports [JWT](https://developers.docusign.com/esign-rest-api/guides/authentication/oauth2-jsonwebtoken) and [Implicit](https://developers.docusign.com/esign-rest-api/guides/authentication/oauth2-implicit) grants. For code examples, see the links below: |
78 | | - |
79 | | -- [JWT (JSON Web Token)](https://developers.docusign.com/esign-rest-api/guides/authentication/oauth2-jsonwebtoken) |
80 | | -- [Implicit Grant] (https://developers.docusign.com/esign-rest-api/guides/authentication/oauth2-implicit) |
| 37 | +* io.swagger:swagger-annotations:jar:1.5.17 |
| 38 | +* org.glassfish.jersey.core:jersey-client:jar:2.29.1 |
| 39 | +* org.glassfish.jersey.media:jersey-media-multipart:jar:2.29.1 |
| 40 | +* org.glassfish.jersey.media:jersey-media-json-jackson:2.29.1 |
| 41 | +* com.fasterxml.jackson.core:jackson-core:jar:2.10.1 |
| 42 | +* com.fasterxml.jackson.core:jackson-annotations:jar:2.10.1 |
| 43 | +* com.fasterxml.jackson.core:jackson-databind:2.10.1 |
| 44 | +* com.fasterxml.jackson.datatype:jackson-datatype-joda:jar:2.10.1 |
| 45 | +* com.brsanthu:migbase64:2.2 |
| 46 | +* junit:junit:jar:4.12 |
| 47 | +* com.apache.oltu.oauth2:org.apache.oltu.oauth2.client:1.0.2 |
| 48 | +* com.auth0:java-jwt:3.4.1 |
| 49 | +* org.bouncycastle:bcprov-jdk15on:1.60 |
| 50 | +
|
| 51 | +## Code examples |
| 52 | +You can find on our GitHub a self-executing package of code examples for the eSignature C# SDK, called a [Launcher](https://github.com/docusign/code-examples-java/blob/master/README.md), that demonstrates common use cases. You can also download a version preconfigured for your DocuSign developer account from [Quickstart](https://developers.docusign.com/docs/esign-rest-api/quickstart/). These examples can use either the [Authorization Code Grant](https://developers.docusign.com/esign-rest-api/guides/authentication/oauth2-code-grant) or [JSON Web Token (JWT)](https://developers.docusign.com/esign-rest-api/guides/authentication/oauth2-jsonwebtoken) authentication workflows. |
| 53 | +
|
| 54 | +## OAuth implementations |
| 55 | +For details regarding which type of OAuth grant will work best for your DocuSign integration, see [Choose OAuth Type](https://developers.docusign.com/platform/auth/choose/) in the [DocuSign Developer Center](https://developers.docusign.com/). |
| 56 | +
|
| 57 | +For security purposes, DocuSign recommends using the [Authorization Code Grant](https://developers.docusign.com/esign-rest-api/guides/authentication/oauth2-code-grant) flow. |
81 | 58 |
|
82 | 59 | ## Support |
83 | | - |
84 | 60 | Log issues against this client through GitHub. We also have an [active developer community on Stack Overflow](https://stackoverflow.com/questions/tagged/docusignapi). |
85 | 61 |
|
86 | 62 | ## License |
| 63 | +The DocuSign eSignature Java Client SDK is licensed under the [MIT License](https://github.com/docusign/docusign-java-client/blob/master/LICENSE). |
87 | 64 |
|
88 | | -The DocuSign Java Client is licensed under the [MIT License](https://github.com/docusign/docusign-java-client/blob/master/LICENSE). |
89 | | - |
| 65 | +### Additional resources |
| 66 | +* [DocuSign Developer Center](https://developers.docusign.com/) |
| 67 | +* [DocuSign API on Twitter](https://twitter.com/docusignapi) |
| 68 | +* [DocuSign For Developers on LinkedIn](https://www.linkedin.com/showcase/docusign-for-developers/) |
| 69 | +* [DocuSign For Developers on YouTube](https://www.youtube.com/channel/UCJSJ2kMs_qeQotmw4-lX2NQ) |
90 | 70 |
|
91 | 71 | [travis-image]: https://img.shields.io/travis/docusign/docusign-java-client.svg?style=flat |
92 | 72 | [travis-url]: https://travis-ci.org/docusign/docusign-java-client |
93 | 73 | [maven-image]: https://img.shields.io/maven-central/v/com.docusign/docusign-esign-java.svg?style=flat |
94 | | -[maven-url]: https://search.maven.org/#search%7Cga%7C1%7Cg%3A%22com.docusign%22 |
95 | | - |
96 | | -### Additional Resources |
97 | | -* [DocuSign Developer Center](https://developers.docusign.com) |
98 | | -* [DocuSign API on Twitter](https://twitter.com/docusignapi) |
99 | | -* [DocuSign For Developers on LinkedIn](https://www.linkedin.com/showcase/docusign-for-developers/) |
100 | | -* [DocuSign For Developers on YouTube](https://www.youtube.com/channel/UCJSJ2kMs_qeQotmw4-lX2NQ) |
| 74 | +[maven-url]: https://search.maven.org/#search%7Cga%7C1%7Cg%3A%22com.docusign%22 |
0 commit comments