0

@PUTメソッドを宣言する抽象クラスがあります。

public abstract class BaseResource<T> {

  @PUT
  @Consumes(MediaType.APPLICATION_JSON)
  @Produces(MediaType.APPLICATION_JSON)
  public abstract Response create(T entityClass);

}

次に、クラスがメソッドを実装します。

public class GroupsResource extends BaseResource<Group> {

  @Override
  public Response create(Group newGroup) {

    // this works.
    // ...
    return response.build();

  }
}

GET メソッドを使用した同様のコードは機能しますが、これは405 Method Not Allowedで拒否されます。しかし、実装に注釈を付けると、@PUT機能します。ということで、abstract宣言の@PUTアノテーションが継承されていないようです。

何かご意見は?

アップデート:

私はJava EE7でゼロから始めましたが、これはうまく機能します。

4

1 に答える 1