Size: a a a

Spring Framework and more

2019 May 15

AR

Andriy Rublyov in Spring Framework and more
источник

M

Mikhail in Spring Framework and more
Всем привет!
Подскажите, есть способ с помощью Hibernate искать по массиву, который сохранён в postgres как json (jsonb), не через native query, а через какой-нибудь methodNameQuery?
источник
2019 May 16

P

Profyan99 in Spring Framework and more
Доброго времени суток. Продолжаю ковырять websocket, а именно Stomp. И возникли вопросы:
1) Как узнать от какого топика отписался юзер в UnsubscribeEvent? Можно ли как-то передавать дополнительные хедеры при отписке в реализации SockJs? Очень долго и много гуглил, уже неделю парюсь на этот счёт.
2) Как принудительно разорвать websocket соединение со стороны сервера?
3) Как зареджектить/запретить подписку на какой-либо топик, если не соблюдены какие-либо условия?
источник

m

maksim gavrilov. in Spring Framework and more
Profyan99
Доброго времени суток. Продолжаю ковырять websocket, а именно Stomp. И возникли вопросы:
1) Как узнать от какого топика отписался юзер в UnsubscribeEvent? Можно ли как-то передавать дополнительные хедеры при отписке в реализации SockJs? Очень долго и много гуглил, уже неделю парюсь на этот счёт.
2) Как принудительно разорвать websocket соединение со стороны сервера?
3) Как зареджектить/запретить подписку на какой-либо топик, если не соблюдены какие-либо условия?
пару лет назад я делал через org.springframework.messaging.support.ChannelInterceptorAdapter

в postSend разбираешь StompHeaderAccessor, в нем есть тип SUBSCRIBE / UNSUBSCRIBE и пр.

это к 1) и 3)
источник

m

maksim gavrilov. in Spring Framework and more
но сейчас он уже Deprecated.
источник

P

Profyan99 in Spring Framework and more
@mgavrilov StompHeaderAccessor я и в Handler'e unsubscribe event могу получить. Проблема в том, что там нет никаких полей, которые бы указывали, от какого топика юзер отписался
источник

R

Ranorex in Spring Framework and more
Господа, кто нибудь занимался инъекцией в конструктор ApiClient Feign Builder, сгенерированный OpenAPI генератором
источник

R

Ranorex in Spring Framework and more
Генератор генерирует по умолчанию толстый конструктор с логикой создания Feign Builder
источник

R

Ranorex in Spring Framework and more
Нужно его вынести в конфигурационные бины
источник

R

Ranorex in Spring Framework and more
источник

R

Ranorex in Spring Framework and more
Смотри конструктор по умолчанию
источник

Д

Дмитрий in Spring Framework and more
Ranorex
Смотри конструктор по умолчанию
Вечер добрый, надо создать бин со скоупом реквест. Спринг ругается даже на декларацию, при этом я нигде не инжекчу этот бин.

@Configuration
public class PerformanceTestModeMarkerConfig {

 @RequestScope
 @Bean
 public PerformanceTestModeMarker performanceTestModeMarker() {
   return new PerformanceTestModeMarker();
 }

}

при этом вот этот простйо пример https://github.com/journaldev/journaldev/tree/master/Spring/Spring-Beans-Scope-Spring-Boot , работает нормально.
Что может аффектить?
источник

RS

Ruslan Stelmachenko in Spring Framework and more
Profyan99
Доброго времени суток. Продолжаю ковырять websocket, а именно Stomp. И возникли вопросы:
1) Как узнать от какого топика отписался юзер в UnsubscribeEvent? Можно ли как-то передавать дополнительные хедеры при отписке в реализации SockJs? Очень долго и много гуглил, уже неделю парюсь на этот счёт.
2) Как принудительно разорвать websocket соединение со стороны сервера?
3) Как зареджектить/запретить подписку на какой-либо топик, если не соблюдены какие-либо условия?
1. никак. стомп фрейм для UNSUBSCRIBE не содержит в себе destination, только sub-id. можно при получении SUBSCRIBE записывать в Map с ключем [sessid + sub-id] (т.к. sub-id уникально только в пределах одной сессии), и значением - destination. И потом при получении UNSUBSCRIBE доставать из мапы дестинейшен.

Но тут надо сразу подумать, какой брокер будет использоваться, встроенный или внешний. Если внешний брокер + несколько параллельных инстансов бэкенда, то UNSUBSCRIBE евент может ведь вообще прийти на другой инстанс бэка. Тогда надо эту "мапу" шарить между инстансами бэка.
источник

P

Profyan99 in Spring Framework and more
Ruslan спасибо, попробую так сделать
источник

RS

Ruslan Stelmachenko in Spring Framework and more
Хотя на счет другого инстанса бэка это я что-то загнул. Вебсокет ведь посреди своей работы не переподключится к другому бэку. :) А если и переподключится, то все равно все сабскрипшины придется делать в нем с нуля.
источник
2019 May 17

Д

Дмитрий in Spring Framework and more
Дмитрий
Вечер добрый, надо создать бин со скоупом реквест. Спринг ругается даже на декларацию, при этом я нигде не инжекчу этот бин.

@Configuration
public class PerformanceTestModeMarkerConfig {

 @RequestScope
 @Bean
 public PerformanceTestModeMarker performanceTestModeMarker() {
   return new PerformanceTestModeMarker();
 }

}

при этом вот этот простйо пример https://github.com/journaldev/journaldev/tree/master/Spring/Spring-Beans-Scope-Spring-Boot , работает нормально.
Что может аффектить?
отвечая на свой же вопрос, в сторонней зависимости была попытка в листнере вызывать бины всех типов вне зависимости от их скоупа через context.getBean(). Простой фильтр помог перед этим помог - String scope = beanFactory.getBeanDefinition(name).getScope();
источник

М

Максим in Spring Framework and more
Подскажите пожалуйста , а спринг умеет собирать объект из параметров ajax post json запроса?
источник

G

Grigori in Spring Framework and more
Максим
Подскажите пожалуйста , а спринг умеет собирать объект из параметров ajax post json запроса?
умеет
источник

R

Ranorex in Spring Framework and more
Дмитрий
Вечер добрый, надо создать бин со скоупом реквест. Спринг ругается даже на декларацию, при этом я нигде не инжекчу этот бин.

@Configuration
public class PerformanceTestModeMarkerConfig {

 @RequestScope
 @Bean
 public PerformanceTestModeMarker performanceTestModeMarker() {
   return new PerformanceTestModeMarker();
 }

}

при этом вот этот простйо пример https://github.com/journaldev/journaldev/tree/master/Spring/Spring-Beans-Scope-Spring-Boot , работает нормально.
Что может аффектить?
Я уже не на работе. В Германии включили солнце. На время
источник

Д

Дмитрий in Spring Framework and more
Ranorex
Я уже не на работе. В Германии включили солнце. На время
я не знаю почему телеграмм решил что сообщение было вам, возможно я криво тыкнул в момент отправки, оно было в общий чат, тысяча извинений)
и я только сейчас это заметил
источник