2014-02-20 31 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

相关问题