Следующий сценарий: я просматриваю unsafeMethodCall()
на всех моих веб-страницах. Этот метод небезопасен только в том случае, если есть ссылка на doSomeCrazyAjaxStuff()
Мои веб-страницы используют сильные шаблоны (то есть он был построен с помощью JSF)
Таким образом, веб-страница состоит из чего-то вроде этого:
<ui:decorate template="/mypages/editing/someWebPagePart.xhtml">
unsafeMethodCall()
это просто копирует содержимое шаблона на текущую веб-страницу.
Поэтому, если я ищу unsafeMethodCall()
- проблема в том, что мне нужно вручную открыть someWebPagePart.xhtml
для поиска crazyAjaxStuff()
- но someWebPagePart.xhtml
могут использовать другие шаблоны. Таким образом, от 1 попадания unsafeMethodCalls я могу получить МНОГО страниц, которые мне нужно открыть.
Поэтому я в основном хочу сканировать файл с именем "somefile.xhtml" на наличие вхождения шаблона. Если есть шаблон, который я хочу искать в этом шаблоне, и я хочу искать в шаблоне шаблона и т.д. Также :-)
Есть ли программа или инструмент, который может решить эту проблему?
[РЕДАКТИРОВАТЬ]
Так что в основном у меня есть файл с таким содержанием:(это только пример)
<div>
<input value="enterusername"/>
</div>
[...more random web page contents like above this line....]
<ui:decorate template="/mypages/editing/someWebPagePart.xhtml">
<my:tag> unsafeMethodCall()</my:tag> <!-- this is potentially dangerous with another function call -->
[...more random web page contents like below this line....]
<p></p>
<a href="#Other-Options" accesskey="n" rel="next">Other Options</a>
Теперь, когда я открою d:/dev/workspace/WebContents/mypages/editing/someWebPagePart.xhtml, я смогу увидеть, что в действительности отображается на странице - потому что содержимое файла someWebPagePart.xhtml будет автоматически скопировано веб-сервером на последнюю веб-страницу.
То, что я ищу в файле someWebPagePart.xhtml
выглядит примерно так:
<div>
<input value="enterusername"/>
</div>
[...more random web page contents like above this line....]
<ui:decorate template="/mypages/editing/someotherPage.xhtml"> <!-- it could be in there as well -->
<my:tag2> crazyAjaxStuff()</my:tag2> <!-- searching this -->
[...more random web page contents like below this line....]
<p></p>
<a href="#Other-Options" accesskey="n" rel="next">Other Options</a>
Поскольку:
<my:tag2> crazyAjaxStuff()</my:tag2>
будет скопирован на ту же страницу, где находится unsafeMethodCall
, это может привести к опасному состоянию, и мне придется внимательно посмотреть на страницу.
Примечание: вполне возможно, что 3-я страница someotherPage.xhtml
содержит опасный crazyAjaxStuff()