2014-02-20 32 views
1

我目前正在維護一個擁有數百萬個jsp文件的應用程序。 有沒有辦法知道哪些jsp文件包含在給定頁面的渲染中?

Firefox和chrome的元素控制檯只允許檢查呈現的元素,但不包含有關jsp的信息。我使用eclipse kepler(和tomcat)進行遠程調試,但我不知道哪些jsp頁面可以設置調試點,因爲渲染的最終模板有許多條件,允許數百個jsps呈現的可能性如何知道哪些jsp包含在頁面的最終呈現中

+0

你的意思是有像嵌套的jsp:includes? – developerwjk

+0

@developerwjk是的,情況也是如此。以及,加載的jsps的嵌套'圖形'取決於各種條件 – happybuddha

+0

如果您只需在開發環境中對客戶端進行可視化檢查,則可以通過編程將HTML註釋放在每個開頭和結尾處表示jsp名稱的一種表示法。然後在瀏覽器中查看源代碼。 – Tap

回答

1

你可以做的是這樣的:找到一個文本編輯器,可以做很多文件的大量替換(例如TextPad),並使用正則表達式替換功能用out.print("<br/>Including \1<br/>"); <jsp:include page="\1" />替換每個出現<jsp:include page="\([^"]+?\)" />正則表達式語法可能因工具而異,如果您使用參數等,你將有更多的案例來取代,但這是基本的想法。確保先備份所有文件。

+0

請您解釋\ 1在這種情況下的工作原理嗎? – happybuddha

+1

在這種語法中,\\(\\)表示捕獲標記,而\ 1是被捕獲的東西。所以\ 1代表正則表達式替換從page =「whatever.jsp」的引號內拉出的頁面名稱 – developerwjk

相關問題