JsonPropertyOrder не работает с ответом javax rs - PullRequest
0 голосов
/ 09 апреля 2020

Я пытаюсь упорядочить элементы для ответа json, используя аннотацию JsonPropertyOrder, но свойство Json не было упорядочено в ответе json. Я пытался сохранить индекс в аннотации свойства json, что также не помогло. Я передаю объект в javax.ws.rs.core.ResponseBuilder.entity. Может кто-нибудь, пожалуйста, помогите в этом

ответе службы отдыха, что-то вроде ниже

 @GET

    @Path("/test/output")

    public Response getOffers()
    {

          return Response.status(200)
.entity(new ExtInstallResponse("testId","testVersion","testName"))
.type(MediaType.APPLICATION_JSON).build();

    }

POJO, как показано ниже:

   @JsonPropertyOrder({"name", "id", "version"})
    public class ExtInstallResponse {

      @JsonProperty("id")
      private String id;

      @JsonProperty("version")
      private String version;

      @JsonProperty("name")
      private String name;

      /**
       * constructor.
       *
       * @param id id
       * @param version version
       * @param name name
       */
      public ExtInstallResponse(String id, String version, String name) {
        this.id = id;
        this.version = version;
        this.name = name;
      }

      public String getId() {
        return id;
      }

      public String getName() {
        return name;
      }

      public void setId(String id) {
        this.id = id;
      }

      public void setName(String name) {
        this.name = name;
      }

      public String getVersion() {
        return version;
      }

      public void setVersion(String version) {
        this.version = version;
      }
    }

Я получаю ответ в формате ниже, но Мне нужно, чтобы он был упорядочен как имя, идентификатор, версия

{
    "id": "ExtensionId3",
    "name": "Extension Id 3",
    "version": "1.0"
}

То же самое отлично работает, когда я пытаюсь из java основной метод

...