Можем ли мы заменить объект контекста сервлета и попробовать блок кэша с включениями на стороне сервера? - PullRequest
0 голосов
/ 17 января 2012

У меня есть приведенный ниже фрагмент кода в JSP: Можем ли мы заменить это включением на стороне сервера? В частности, вызов объекта контекста сервлета и блока try-catch.

Пожалуйста, сообщите:

Спасибо заранее.

<%
                String includeURL = "";
                if (getServletConfig().getServletContext().getServletContextName().startsWith("internal")) {
                    includeURL = "/test/index.inc";
                } else {
                    includeURL = "/testone/index.inc";
                }
                try {
                    %><jsp:include page="<%= includeURL %>" flush="true" /><%
                } catch (Throwable e) {
                    out.println("<!-- Could not include file - ERROR: " + e.toString() + " -->");
                }
            %>

Ответы [ 2 ]

0 голосов
/ 18 января 2012

Можем ли мы использовать приведенный ниже код SSI в качестве замены начальной части в рассматриваемом фрагменте кода JSP? <!--#if expr="getServletConfig().getServletContext().getServletContextName().startsWith("internal")" --> <!--#set var="includeURL" value="/ctx/hub_inside/support/index.inc" --> <!--#else --> <!--#set var="includeURL" value="/ctx//EMEA/main/Intranet/Inside/hub_inside/support/STAGING/index.inc" --> <!--#endif -->

0 голосов
/ 17 января 2012

Да, вы можете сделать это. Вам нужно только помнить, что он не будет работать, если index.inc не является простым ванильным HTML-документом, но содержит теги JSP и скриптлеты и так далее. Они не будут оцениваться SSI.

...