0

現在、目の前に具体的な例はありませんが、過去にこの問題が発生しました。

別のクラスを拡張して注釈を利用するリソースがある場合、基本クラスに、子クラスの一部であるかのように読み取られる注釈を含めることはできますか? いくつかのシナリオでこれを実行しようとしましたが、うまくいかないようです。これを可能にする方法はありますか?@Pathこれは、基本クラスに定義されていないスコープの問題ですか?

@Path("/workflow")
@Consumes({MediaType.APPLICATION_JSON})
@Produces({MediaType.APPLICATION_JSON})
public class WorkflowResource extends BaseWorkflowResource {
    @GET
    @Path("/getAllActive")
    public Collection<WorkflowEntity> getActive () {
        return MyClass.getAllActive();
    }
}

//THIS CALL WON'T BE AVAILABLE
public class BaseWorkflowResource {
    @GET
    @Path("/getMyString")
    public String getActiveString () {
        return "my string";
    }
}
4

1 に答える 1

0

この方法

public Collection<WorkflowEntity> getActive()

このメソッドをオーバーライドします

public String getActive()

これは JAX-RS の問題ではなく、単純な Java の問題です。どちらのメソッドも同じ署名 (名前、パラメーター) を持っています。

親クラスと子クラスで異なるメソッド シグネチャを使用してみてください。

于 2013-05-21T14:23:24.540 に答える