2012-06-11 61 views

回答

2

檢票1.5,你可以得到下面的請求對象,並投它的HttpServletRequest:

HttpServletRequest request = ((HttpServletRequest) getRequest().getContainerRequest()); 
+0

它沒有這樣的方法。另外它不知道HttpServletRequest。我正在使用wicket 1.4.20 – Shayan

+0

是的 - 這適用於Wicket 1.5。 HttpServletRequest是servlet規範的一部分。你應該爲你的項目添加一個合適的jar。 – magomi

0
final Request request = RequestCycle.get().getRequest(); 
3

在Wicket 1.4,你可以得到HttpServletRequest對象(是servlet代表性的請求,最可以得到)與此代碼:

HttpServletRequest req = ((WebRequest)RequestCycle.get().getRequest()).getHttpServletRequest(); 

然而,「沒有任何處理」部分將不會工作,原因有兩個:servlet引擎本身將執行一些處理(如解碼url參數),Wicket將消耗包含請求實體的輸入流。

如果您想監視原始請求,則必須在Web服務器級別上攔截它。

+0

我應該如何在網絡服務器上執行此操作? – Shayan

+0

真的取決於網絡服務器。或者,您可以使用Wireshark捕獲進出端口的所有網絡流量。你需要什麼? – biziclop