简体   繁体   English

Docusign REST API无法启动

[英]Docusign REST API failure to launch

Recently moved a Docusign Java sdk based apiclient solution to PROD, but after that all existing the rest api calls, including the docusign api rest calls fails with the below error 最近将基于Docusign Java SDK的apiclient解决方案移至PROD,但是此后所有现有的其余api调用(包括docusign api的REST调用)均失败,并出现以下错误

06-Sep-2018 12:46:50.645 SEVERE [ajp-nio-8269-exec-8] org.apache.catalina.core.StandardWrapperValve.invoke Allocate exception for servlet [Jersey REST Service]
 java.lang.NoSuchMethodError: javax.ws.rs.core.Application.getProperties()Ljava/util/Map;
    at org.glassfish.jersey.server.ApplicationHandler.<init>(ApplicationHandler.java:309)
    at org.glassfish.jersey.servlet.WebComponent.<init>(WebComponent.java:338)
    at org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:171)
    at org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:363)
    at javax.servlet.GenericServlet.init(GenericServlet.java:158)
    at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1144)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1091)
    at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:773)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:133)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
    at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
    at org.apache.coyote.ajp.AjpProcessor.service(AjpProcessor.java:486)
    at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
    at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:790)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1459)
    at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Thread.java:748)

After further investigation i found that our application uses JAX-RS 2 jars like jersey-container-servlet-core-2.17.jar while dependency for Docusign Java sdk is com.sun.jersey.jersey-core-1.4.0.jar which is JAX-RS 1 version. 经过进一步调查,我发现我们的应用程序使用了JAX-RS 2 jar,例如jersey-container-servlet-core-2.17.jar,而对Docusign Java sdk的依赖是com.sun.jersey.jersey-core-1.4.0.jar,即JAX-RS 1版本。 By removing the com.sun.jersey.jersey-core-1.4.0.jar , the existing rest api calls works but the Docusign rest api fails with the below error : 通过删除com.sun.jersey.jersey-core-1.4.0.jar,现有的rest api调用可以工作,但是Docusign rest api失败,并出现以下错误:

Caused by: java.lang.ClassNotFoundException: com.sun.jersey.core.util.FeaturesAndProperties
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
Please suggest how to proceed from here 

Kindly suggest a approach to make both rest api calls to work without breakage. 请提出一种使两个剩余api调用都能正常工作的方法。

Jersey 1 and Jersey 2 are not compatible at all and thus you cannot have jars related to both in the same application. 球衣1和球衣2根本不兼容,因此在同一应用程序中不能同时拥有与两者相关的jar。

So, if possible you should think about using jersey 1.0 (com.sun.jersey) in your application because you don't have any control over Docusign . 因此,如果可能,您应该考虑在应用程序中使用jersey 1.0 (com.sun.jersey) ,因为您没有对Docusign任何控制。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM