view.jsp
たとえば、基本的なLiferay検索コンテナパターンを使用しているJSPがあります。
<liferay-ui:search-container>
<liferay-ui:search-form page="..." />
...
</liferay-ui:search-container>
たとえば、view.jspがdocroot / jspフォルダーにあり、同じフォルダーにある私の検索フォームであるとしますsearch.jsp
。今、私がするとき:
<liferay-ui:search-container>
<liferay-ui:search-form page="search.jsp" />
...
</liferay-ui:search-container>
ページは正しくレンダリングされますが、検索フォームはありません。コンソールで、私はffに気づきます。例外:
08:11:01,937 ERROR [IncludeTag:154] java.lang.IllegalArgumentException: Path search.jsp does not start with a "/" character
at org.apache.catalina.core.ApplicationContext.getRequestDispatcher(ApplicationContext.java:370)
at org.apache.catalina.core.ApplicationContextFacade.getRequestDispatcher(ApplicationContextFacade.java:196)
at com.liferay.taglib.util.IncludeTag.include(IncludeTag.java:173)
at com.liferay.taglib.util.IncludeTag._doInclude(IncludeTag.java:223)
at com.liferay.taglib.util.IncludeTag.doEndTag(IncludeTag.java:58)
...
このような絶対パスを使用する場合:
<liferay-ui:search-container>
<liferay-ui:search-form page="/jsp/search.jsp" />
...
</liferay-ui:search-container>
同じことが起こりますが、例外は次のとおりです。
08:21:21,796 ERROR [IncludeTag:154] javax.servlet.ServletException: File "/jsp/search.jsp" not found
at org.apache.jasper.servlet.JspServlet.handleMissingResource(JspServlet.java:335)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551)
at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)
at com.liferay.taglib.util.IncludeTag.include(IncludeTag.java:175)
at com.liferay.taglib.util.IncludeTag._doInclude(IncludeTag.java:223)
at com.liferay.taglib.util.IncludeTag.doEndTag(IncludeTag.java:58)
...
誰かがこれを修正する方法を知っていますか?