Size: a a a

2021 February 27

НБ

Никита Берегуля... in pro.jvm
Shamil Sabirov
как вообще может такое случиться - " httpClient приходит Dto в котором мне нужно использовать сервис для переопределения toString"
Да, это была моя *логика*, но что-то за последний день в меня столько накидали камней за нее что я решил вернуть все как было.  😂  
Мне просто в определенный момент стало не понятно почему нельзя про инициализировать статическое поле в теории.
источник

НБ

Никита Берегуля... in pro.jvm
Aleksander L
> сервис для переопределения toString.

Так делать точно не стоит. Не стоит делать такие грязные хаки в переопределении методов dto. Помести эту логику в отдельный сервис и вызывай его напрямую.
Вот так кстати и было.
источник

SS

Shamil Sabirov in pro.jvm
Vladimir S
В конструкторе статическое поле присвоить и норм. Когда спринг создаст объект, инстанс сохранится(p s надеюсь мой работодатель это не читает)
статическое? надо наверно по DI почитать
источник

НБ

Никита Берегуля... in pro.jvm
Shamil Sabirov
статическое? надо наверно по DI почитать
A dependency injector identifies a class's dependencies by inspecting these annotations, and injects the dependencies at run time.

Вот, например, в офф. спеке javax.inject написано про класс и его поля
источник

НБ

Никита Берегуля... in pro.jvm
источник

SS

Shamil Sabirov in pro.jvm
Aleksander L
Это мне вопрос? Или к сообщению выше. Лучше цитировать
процитировал. во втором сообщении. прошу быть внимательнее
источник

AL

Aleksander L in pro.jvm
Shamil Sabirov
процитировал. во втором сообщении. прошу быть внимательнее
Второе сообщение увидел. А с первым непонятно. Просто обычно в другом порядке делают.
Первое цитируют, а потом добавляют.
источник

SS

Shamil Sabirov in pro.jvm
@alinkov не к Вам адресованы вопросы/ответы. извиняйте😕
источник

A

Artjom Kalita in pro.jvm
Никита Берегуля
A dependency injector identifies a class's dependencies by inspecting these annotations, and injects the dependencies at run time.

Вот, например, в офф. спеке javax.inject написано про класс и его поля
Инициализация класса в jvm происходит до того как можно создать обьект этого класса (что звучит логично =) ) значит все статичные поля/методы инициализируются в этот самый момент, механизм DI работает так что он по определенным критериям подпихивает нужные обьекты в нужные места - то-есть в момент когда это происходит вся статика уже инициализирована
источник

НБ

Никита Берегуля... in pro.jvm
Artjom Kalita
Инициализация класса в jvm происходит до того как можно создать обьект этого класса (что звучит логично =) ) значит все статичные поля/методы инициализируются в этот самый момент, механизм DI работает так что он по определенным критериям подпихивает нужные обьекты в нужные места - то-есть в момент когда это происходит вся статика уже инициализирована
В каком смысле инициализирована, ведь что мешает механизму DI присвоить статическому полю ссылку на объект во время процесса внедрения зависимостей?
источник

НБ

Никита Берегуля... in pro.jvm
Artjom Kalita
Инициализация класса в jvm происходит до того как можно создать обьект этого класса (что звучит логично =) ) значит все статичные поля/методы инициализируются в этот самый момент, механизм DI работает так что он по определенным критериям подпихивает нужные обьекты в нужные места - то-есть в момент когда это происходит вся статика уже инициализирована
Вот, например, как я понимаю это работает в Micronaut. Во время старта приложения через ApplicationContext.run(), создаётся BeanContext. Во время его создания происходить сканирование всех пакетов и поиск аннотированных классов, полей, методов, чтоб собрать зависимости. Что мешает вовремя этого процесса работе со статическими полями и созданными объектами я не понимаю 🤯
источник

V

Vlad in pro.jvm
Никита Берегуля
Вот, например, как я понимаю это работает в Micronaut. Во время старта приложения через ApplicationContext.run(), создаётся BeanContext. Во время его создания происходить сканирование всех пакетов и поиск аннотированных классов, полей, методов, чтоб собрать зависимости. Что мешает вовремя этого процесса работе со статическими полями и созданными объектами я не понимаю 🤯
А зачем, уже ведь создан экземпляр.А если несколько бинов одного класса, но с разными реализациями полей должны быть? И думается мне есть там ещё нюансы именно со статикой
источник

C

Combot in pro.jvm
Total messages: 414418
источник

.

... in pro.jvm
Andrew Yatsenko
А пробовал зависимости отключать? У нас в проекте была похожая проблема. Не работал аоп ни в какую, лид сидел пересобирал проект по кусочкам добавляя/убирая зависимости из помника и вроде как шото нашаманил, мол какие то зависимости конфликтовали. Я не уточнял что именно там было, но если еще надо могу спросить.

UPD: увидел, что зависимости таки пытался менять) в общем уточню чуть позже
да, пытался. Только что уже полностью все зависимости заменил на те что в первом проекте , отличия только в том, что тут котлиновских пара еще нужна. Результат ни о чем


UPD: проблема кажется не в pom , довел до полной идентичности оба проекта. Первый пашет второй нет
источник

.

... in pro.jvm
...
да, пытался. Только что уже полностью все зависимости заменил на те что в первом проекте , отличия только в том, что тут котлиновских пара еще нужна. Результат ни о чем


UPD: проблема кажется не в pom , довел до полной идентичности оба проекта. Первый пашет второй нет
Кажется проблема в самом котлине , создал новый проект. В нем один и тот же контроллер в зависимости от того на каком языке написан, триггерит аспект(если джава) или нет(если котлин)
источник

AY

Andrew Yatsenko in pro.jvm
Лид сказал что таки ниче он не поборол, так что дизинфа)
источник

.

... in pro.jvm
Andrew Yatsenko
Лид сказал что таки ниче он не поборол, так что дизинфа)
Ахах , ладно. Спасибо, за поддержку)
источник

DZ

Dmitriy Zanin in pro.jvm
...
Кажется проблема в самом котлине , создал новый проект. В нем один и тот же контроллер в зависимости от того на каком языке написан, триггерит аспект(если джава) или нет(если котлин)
Если котлин, то там есть особенность - нужно делать open класс и метод. Или применять плагин.
источник

.

... in pro.jvm
Dmitriy Zanin
Если котлин, то там есть особенность - нужно делать open класс и метод. Или применять плагин.
Вот на счет класса сделал , сейчас метод попробую сделать ...
источник

.

... in pro.jvm
Dmitriy Zanin
Если котлин, то там есть особенность - нужно делать open класс и метод. Или применять плагин.
Бинго , на тестовом проекте запахало!  Но при джавовском аспекте
источник