0

I'm working on a project where I need to write web-services in Java Jersey framework. Everything is working if I run web-services using IntelliJ. But If I make jar of my java program and run it using the cmd. My web-services throws exception when sending back Json Response.

Below is Exception.

AM org.glassfish.jersey.message.internal.WriterInterceptorExecutor$TerminalWriterInterceptor aroundWriteTo SEVERE: MessageBodyWriter not found for media type=application/json, type=class response.BaseResponse, genericType=class response.BaseResponse.

I added the Jersey media json dependency in pom.file also.

<dependency>
   <groupId>org.glassfish.jersey.media</groupId>
   <artifactId>jersey-media-json-jackson</artifactId>
   <version>2.26</version>
</dependency>

And below is BaseResponse class for Json response.

@XmlRootElement
public class BaseResponse {

    public static final int SUCCESS = 1;
    public static final int FAILURE = 0;

    private int status;
    private String message;

    BaseResponse() {
    }

    public BaseResponse(int status, String message) {
        this.status = status;
        this.message = message;
    }

    public int getStatus() {
        return status;
    }

    public void setStatus(int status) {
        this.status = status;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }

    @Override
    public String toString() {
        return "BaseResponse{" +
                "status=" + status +
                ", message='" + message + '\'' +
                '}';
    }
}

Also one thing more that I create the jar file using the maven-shade-plugin which creates a fat uber jar.

Ahsan Saeed
  • 701
  • 10
  • 22

0 Answers0