0

Liferayの最新のコミュニティエディションバージョンである6.1.0-ce-ga1を使用しています Tomcat 7

このバージョン以降、Liferayポートレットをデプロイすると、このエラーが頻繁に発生します。

私は何かが足りないのですか?フランス語を話さない人にとっては、基本的に、JSPファイルが欠落していると表示されます。

情報:

  • 私のJSPファイルは/jsp/EditorPortlet.jspにあります
  • ディスパッチャを使用する場合、パスとして/jsp/EditorPortlet.jspを使用します
  • 毎回このエラーが発生するわけではありません。.warを再デプロイすると、問題が解決する場合があります。

関連コード:

PortletRequestDispatcher rd = getPortletContext().getRequestDispatcher(
            "/jsp/EditorPortlet.jsp"");
rd.include(request, response);

エラー[render_portlet_jsp:154] javax.servlet.ServletException:Le fichier"/jsp/EditorPortlet.jsp"n'apasététrouvé org.apache.jasper.servlet.JspServlet.handleMissingResource(JspServlet.java:412)at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:379)at org.apache.jasper.servlet.JspServlet.service (JspServlet.java:334)at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)atorg.apache.catalina。 core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:72)atcom.liferay.portal.kernel.servlet.filters。 com.liferay.portal.kernel.servlet.filters.invokerのinvoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:113)。InvokerFilter.doFilter(InvokerFilter.java:70)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)at org .apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684)at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:593)at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher .java:530)at com.liferay.portlet.PortletRequestDispatcherImpl.dispatch(PortletRequestDispatcherImpl.java:316)at com.liferay.portlet.PortletRequestDispatcherImpl.include(PortletRequestDispatcherImpl.java:134)at com.gui.portlet.Portlet.doViewPortlet( Portlet.java:194)com.gui.portlet.Portlet.doView(Portlet.java:148)at com.app.management.model.server.portlet.Portlet.doView(Portlet.java:35)at javax.portlet.GenericPortlet.doDispatch (GenericPortlet.java:328)

4

2 に答える 2

0

ファイルが に/WEB-INF/jsp/EditorPortlet.jspある場合は、そのファイルにディスパッチする必要があります/jsp/EditorPortlet.jsp

転送元のコンテキストに応じて、動作する可能性がありますjsp/EditorPortlet.jsp(以前に動作した理由を説明するために、ルートスラッシュが欠落していることに注意してください)

そして、おそらくここではそうではありませんが、完全を期すために、そして私が昔からこれを思い出したように:

Windows でもファイル名の大文字を尊重する tomcat を見てきました。私はかなり長い間 Windows での開発を行っていないので、動作が構成可能かどうかは気にしませんでしたが、Windows では大文字の使用が尊重されないため、名前を「同じ名前」に変更するのは簡単ではありませんでした。 " 大文字が異なります (当時は、ファイルの名前を完全に変更してから、正しく大文字の名前に変更する必要がありました)。

于 2012-06-15T08:10:09.647 に答える
0

例外トレースを見ると、ポートレットが作成されており、その特定のポートレットの Portlet.java クラスのメソッドで、作成されていないか欠落している にdoView()リクエストを転送していると思います。EditorPortlet.jsp

リクエストを直接転送していない場合は、portlet.xml にその部分をinit-param (view-template)

于 2012-06-14T16:56:58.717 に答える