Jaspersoft / jrs-rest-java-client

Java Rest Client for JasperReports Server
GNU Lesser General Public License v3.0
100 stars 101 forks source link

Jasperserver REST client throws javax.ws.rs.ProcessingException: javax.ws.rs.core.Response$Status$Family.familyOf(I) #250

Closed Srikanth-kattam closed 8 years ago

Srikanth-kattam commented 8 years ago

Hi,

We are using JasperReports server v6.2.0. with Apache Tomcat as AS.

I ‘ve implemented a code to Purging the content Resource files (scheduled export files) from Jasper server by extended the Jasper REST API as per the following link contributed by you: https://github.com/Jaspersoft/jrs-rest-java-client

I’ve created a java project in Eclipse IDE and able to successfully execute the code from Eclipse IDE.

But when I package this class as Jar and deploy in jasper server lib folder along with jrs-rest-java-client-6.2.0-jar-with-dependencies.jar. I am facing the following exception: javax.ws.rs.ProcessingException: javax.ws.rs.core.Response$Status$Family.familyOf(I)Ljavax/ws/rs/core/Response$Status$Family; at org.glassfish.jersey.client.ClientRuntime.invoke(ClientRuntime.java:264) at org.glassfish.jersey.client.JerseyInvocation$1.call(JerseyInvocation.java:684) at org.glassfish.jersey.client.JerseyInvocation$1.call(JerseyInvocation.java:681) at org.glassfish.jersey.internal.Errors.process(Errors.java:315) at org.glassfish.jersey.internal.Errors.process(Errors.java:297) at org.glassfish.jersey.internal.Errors.process(Errors.java:228) at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:444) at org.glassfish.jersey.client.JerseyInvocation.invoke(JerseyInvocation.java:681) at org.glassfish.jersey.client.JerseyInvocation$Builder.method(JerseyInvocation.java:437) at org.glassfish.jersey.client.JerseyInvocation$Builder.post(JerseyInvocation.java:343) at com.jaspersoft.jasperserver.jaxrs.client.core.JasperserverRestClient.login(JasperserverRestClient.java:100) at com.jaspersoft.jasperserver.jaxrs.client.core.JasperserverRestClient.authenticate(JasperserverRestClient.java:76) at com.jaspersoft.jasperserver.jaxrs.client.core.JasperserverRestClient.authenticate(JasperserverRestClient.java:50) at com.gptm.jasper.purge.JasperArchivePurge.getResourceDetails(JasperArchivePurge.java:132) at com.gptm.jasper.purge.JasperArchivePurge.test(JasperArchivePurge.java:296) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.springframework.scheduling.support.ScheduledMethodRunnable.run(ScheduledMethodRunnable.java:64) at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:53) at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:81) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:178) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:292) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) Caused by: java.lang.NoSuchMethodError: javax.ws.rs.core.Response$Status$Family.familyOf(I)Ljavax/ws/rs/core/Response$Status$Family; at org.glassfish.jersey.message.internal.Statuses$StatusImpl.(Statuses.java:63) at org.glassfish.jersey.message.internal.Statuses$StatusImpl.(Statuses.java:54) at org.glassfish.jersey.message.internal.Statuses.from(Statuses.java:143) at org.glassfish.jersey.client.internal.HttpUrlConnector._apply(HttpUrlConnector.java:397) at org.glassfish.jersey.client.internal.HttpUrlConnector.apply(HttpUrlConnector.java:285) at org.glassfish.jersey.client.ClientRuntime.invoke(ClientRuntime.java:255) ... 28 more

Below code execution is throwing the above error:

RestClientConfiguration configuration; configuration = new RestClientConfiguration(url); configuration.setContentMimeType(MimeType.JSON); configuration.setAcceptMimeType(MimeType.JSON); client = new JasperserverRestClient(configuration); session = client.authenticate(jusername, jpassword);

// Searching the JasperReports Server Repository OperationResult scheduledreportslist = session .resourcesService().resources() .parameter(ResourceSearchParameter.FOLDER_URI, folderuri) .parameter(ResourceSearchParameter.LIMIT, limit).search();

I assume it to be a JAR conflict, Please share your inputs to resolve this issue at the earliest.

yaroslav-kovalchyk commented 8 years ago

This is jar conflict issue. Server uses Jersey 1.x and client uses Jersey 2.x. They are not compatible. It's not possible to deploy them together and keep both working.