Каким образом можно получить контекст в сервисе?
Имеется сервис, который позволяет каждому зарегистр. и получить свою партнерку. Каждая партнерка на своем домене..
Как лучше реализовать их разделение? То есть, иметь 1 web app партнерки и создавать для каждой партнерки свой вирт.хост, переменными среды передавая айди партнерки ИЛИ запускать 1 контекст ДЛЯ ВСЕХ, а затем интерцекторами получать партнерку по заголовку Хост?
Например, Web App с сервлетом на / висит по
partner/, nginx далее проксирует все запросы на этот адрес.
Handler Interceptor получает Host и добавляет аттрибут сущности партнерки в запрос..
При этом в каждый сервис нужно передавать эту сущность или ID партнерки в виде первого аргумента.
Например, UserService::userExists(int ppId, String login);
Можно ли как-то вызывать UserService.userExists(login), и чтобы контекст партнерки получался внутри сервиса?
Как будет правильно, передавать сущность партнерки в сервис или ID, или, чтобы сервис знал о том, какая это партнерка:?
Есть еще вариант, для каждой партнерки создавать свою базу данных, а не как сейчас использовать столбик `program_id`. Но тогда возникает вопрос дублирования данных бд, если партнерка будет на другом сервере..
Вообще, можно сделать в контексте партнерок интерфейсы сервисов и вызывать их на основном сервере через Hessian, но как основной сервер поймет, а какая именно партнерка запрашивает данные?...
В общем, каша... Помогие советами