Есть сервер и клиент которые общаются между собой посредством XML-RPC. На сервере Apache XML-RPC скрученная со спрингом.
Какие есть способы добавления поддержки сессий для коммуникации посредством XML-RPC ?
Просто не хочется изобретать велосипеды и почему хочется услышать общепринятые солюшены на данную тему. Заранее спасибо !
Здравствуйте, Blazkowicz, Вы писали:
B>Здравствуйте, Аноним, Вы писали:
А>>Есть сервер и клиент которые общаются между собой посредством XML-RPC. На сервере Apache XML-RPC скрученная со спрингом.
А>>Какие есть способы добавления поддержки сессий для коммуникации посредством XML-RPC?
А>>Просто не хочется изобретать велосипеды и почему хочется услышать общепринятые солюшены на данную тему. Заранее спасибо !
B>Если XML-RPC живет на HTTP сервлетах, то надо подумать о том как туда пропихнуть jsessionid. Тогда его можно будет передавать на сервер и использовать Spring session scoped bean.
B>Как вариант реализовать на клиенте поддержку печенюшек.
У меня живёт на сервлетах, используется Apache XML-RPC, так я получаю сессию в doPost(), пробрасываю через статическую ThreadLocal переменную, пока правда достаточно по костыльному.
Думаю сделать небольшой классик со статическими методами, типа ThreadContext примерно такого содержания:
public class ThreadContext
{
private static ThreadLocal<HashMap<String, Object>> _context = new ThreadLocal<HashMap<String, Object>>();
public static void put(String key, Object data)
{
_context.get().put(key, data);
}
public static Object get(String key)
{
return _context.get().get(key);
}
}