Здравствуйте. Есть такой вопрос:
Имеется dynservice, перегружающий стандартный ContractService, всё прописано в конфиге и давно прекрасно работает,
недавно появилась необходимость вызвать этот сервис из дин.кода. Делаю:
Код:
...
private ContractService cs;
...
ServerContext context = ServerContext.get();
cs = context.getService( ContractService.class , 0 );
...
Однако при вызове методов сервиса выясняется, что сервис стандартный, не перегруженный.
Конечно, вот такой вариант решает проблему:
Код:
...
private ContractServiceImpl cs;
...
ServerContext context = ServerContext.get();
cs = context.getService( ContractServiceImpl.class , 0 );
...
где ContractServiceImpl - уже моя реализация сервиса.
ContractService - интерфейс, и не должен ли при вызове в первом куске кода
context.getService( ContractService.class , 0 ) возвращаться перегруженный сервис?
Может я просто не понимаю тонкости в java, но не будет ли вызван также не перегруженный сервис
если в самом коде bg есть context.getService( ContractService.class , ... ) и не получатся ли при этом
непредсказуемые результаты (в плане того, что стандартный сервис не реализует того, что требуется нам)?
Вот какой-то такой вопрос.