2017-02-13 8 views
0

セッションにデータを格納する受信フェーズにバインドされた "インターセプタで" cxfを持っています。cxf outインターセプタからセッションを取得する方法

(インターセプターで)MyCxfInInterceptor

public class MyCxfInInterceptor extends AbstractSoapInterceptor { 
    public MyCxfInInterceptor() { 
     super(Phase.RECEIVE); 
    } 
    public void handleMessage(SoapMessage message) throws Fault { 
     HttpServletRequest request (HttpServletRequest)message.get(AbstractHTTPDestination.HTTP_REQUEST); 
     HttpSession session = request.getSession(true); 

     session.setAttribute("foo","bar"); 
    } 
} 

MyCxfOutInterceptor(インターセプターアウト)

public class MyCxfOutInterceptor extends AbstractSoapInterceptor { 
     public MyCxfOutInterceptor() { 
     super(Phase.SEND); 
     } 


     public void handleMessage(SoapMessage message) throws Fault { 
     //TODO Retrieve data from session. 
     } 
    } 

私は私の "アウトインターセプター" に論文データを取得します。どうすればいいですか?

HttpServletResponseからセッションを取得する方法がわかりません。多分セッションはもはや利用できないでしょう。 &のデータを取得する他の方法はありますか?

春は役に立ちましたか?

答えて

1

あなたは

インターセプタで

public void handleMessage(SoapMessage message) throws Fault { 
    message.getExchange().put("foo","bar"); 
} 

迎撃うち迎撃中と外との間でデータを交換するために、Exchangeを使用することができます

public void handleMessage(SoapMessage message) throws Fault { 
    Object obj = message.getExchange().get("foo"); 
} 
関連する問題