@webservice наследование Java - PullRequest
2 голосов
/ 24 марта 2010

Я пытаюсь создать веб-сервис java ee, имеющий общий базовый класс, но дочерние классы являются фактическими классами @webservice (и предоставляют методы родительского класса как @ webmethod's)

Как это:

public abstract class Parent {
 @WebMethod
 public void doSomething(){//...does stuff}
}

@WebService
public class Child extends Parent {}

Я пытался (и потерпел неудачу):
- также аннотируем родительский класс как веб-сервис
- убедиться, что все родительские методы снабжены аннотацией @ WebMethod

Возможно ли это, если да, то как?

1 Ответ

4 голосов
/ 24 марта 2010

Аннотации не наследуются такими методами, поэтому технически это невозможно. Подкласс должен будет переопределить, вызвать super и иметь аннотацию webmethod.

Другой вариант (возможно, лучший вариант) - поместить аннотации на интерфейс и использовать метод endpointInterface аннотации @WebService для ссылки на методы, а суперкласс должен реализовать этот интерфейс (просто чтобы все было понятно).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...