2010-07-19 46 views
0

我一直在瀏覽WebLogic API,似乎無法找到我在找什麼...有沒有一種方法可以在運行時確定URL被應用程序用於訪問Web服務?我有要求將每個傳入請求上使用的URL /協議記錄到服務器。運行時的WebLogic Web服務URL /協議

任何有識之士都非常感謝。謝謝!

Kal

回答

3

下面應該在Weblogic(servlet容器)上工作。

您需要獲取HttpServletRequest,您可以訪問HttpServletRequest的任何方法。

我已經通過@Context使用JAX-RS示例,但原則應該與您的Web服務調用相同。

@GET 
@Produces("text/plain") 
public String showFullURL(@Context HttpServletRequest hsr) { 
    return hsr.getRequestURL(); 
} 
+0

對不起,我不知道這將如何工作。我想在調用實際服務之前在處理程序(過濾器)中進行日誌記錄。另外,我無法在消息上下文中找到等價的getRequestURL。它似乎沒有與HttpServletRequest相同的方法。 – Kal 2010-07-20 13:36:02

+0

有關通過消息上下文訪問方法,請參閱此處:http://stackoverflow.com/questions/133436/how-can-i-get-access-to-the-httpservletrequest-object-when-using-java-web-service。 – JoseK 2010-07-20 13:42:47

+0

非常感謝!我能夠從你的例子和你給我的鏈接中得到我所需要的。再次感謝! – Kal 2010-07-20 17:28:39