Показать сообщение отдельно
Старый 02.08.2013, 14:07
searinox вне форума Посмотреть профиль Отправить личное сообщение для searinox Найти все сообщения от searinox
  № 1  
Ответить с цитированием
searinox

Регистрация: May 2011
Сообщений: 76
Цитата:
Сообщение от Wolsh Посмотреть сообщение
У меня тоже не получилось заставить наследника видеть объявленные в пакете неймспейсы.
Если в наследнике объявить заново неймспейсы с теми же литералами (uri), то все работает.
Либо объявить неймспейсы в суперклассе, но опять же, прописав литералы руками (поскольку это константы, ссылки на объявленные вовне неймспейсы не сработают, как и ссылки на литералы вовне // строковые константы в отдельном файле).
Если честно я понял все кроме этой части:
Цитата:
Сообщение от Wolsh Посмотреть сообщение
поскольку это константы, ссылки на объявленные вовне неймспейсы не сработают, как и ссылки на литералы вовне // строковые константы в отдельном файле
В остальном же, костыль работает.
На данном этапе все свелось к 2 костылям:
1) Или в родительском классе сделать метод protected, namespace_1, namespace_2, и в потомках переопределять protected вариант, так как в них юзается только один вариант метода, а не оба.
2) В родителе заново определять неймспейс с теми же литералами(и отказаться от автоматических литералов, которые симпатичнее).