как установить свойство глобально в wso2 ESB

Я пытаюсь понять, как реализовать управление сеансом в wso2 esb. Итак, я написал посредник класса, который генерирует session_ID, который я хочу сохранить. Для хранения идентификатора сеанса я использую следующий код как:

org.apache.axis2.context.ServiceContext serviceContext = org.apache.axis2.context.MessageContext
            .getCurrentMessageContext().getServiceContext();
serviceContext.setProperty("SessionIDGlobal", uuid);

Но при запуске его в моем прокси-сервере esb он выдает исключение нулевого указателя в части getCurrentMessageContext. Я использовал другой подход, когда я сохраняю идентификатор сеанса в посреднике свойств и пытался получить его значение, но когда я нажимаю операцию postRequest после операции generateSessionID из попытки -Это. все свойство сбрасывается, и мое свойство sessionID дает мне нулевое значение. Что мне делать, чтобы исправить эту проблему? Есть ли альтернативный способ?


person Roy    schedule 16.04.2013    source источник


Ответы (2)


Вы должны создать такой контекст обслуживания;

ConfigurationContext cfgCtx =(((Axis2MessageContext) synCtx).getAxis2MessageContext(). getConfigurationContext();

cfgCtx.getOperationContext().getServiceContext();
person Ratha    schedule 16.04.2013
comment
uuid = UUID.randomUUID (). toString (); ConfigurationContext cfgCtx = (((Axis2MessageContext) messageContext) .getAxis2MessageContext (). GetConfigurationContext ()); //cfgCtx.setProperty(SessionUUID, uuid); ServiceContext serviceContext = cfgCtx.getOperationContext (messageContext.getMessageID ()). GetServiceContext (); serviceContext.setProperty (SessionUUID, uuid); - person Roy; 17.04.2013
comment
это код, который я написал для установки uuid, но опять же он дает мне исключение nullpointer null java.lang.NullPointerException в org.openoandm.www.xml.isbmOpenPub.OpenPublicationSkel.mediate (OpenPublicationSkel.java:50) - person Roy; 17.04.2013
comment
Спасибо, рата, что помогла мне. Это сработало для меня после внесения некоторых изменений. Спасибо lotttt - person Roy; 17.04.2013

Вы должны сохранить в контексте сообщения, но вы сохранили в контексте службы. обратитесь к этому, чтобы понять, как можно установить свойства в различных областях. Synapase (по умолчанию), Axis2, Transport и т. Д.

Пожалуйста, обратитесь к этому сообщению в блоге для получения полной информации. http://blog.facilelogin.com/2011/02/wso2-esb-property-mediator-different.html

person Shelan Perera    schedule 16.04.2013