0

この問題は、現在の Glassfish 3.1 クラスターのセットアップで発生しています。以下は問題の詳細です - Glassfish バージョン 3.1 を実行しています

  • liferay 6.0.6を実行しています
  • liferay war は Glassfish クラスターにデプロイされ、両方のノードで正常に動作しています。
  • 同じライフレイ戦争は、1 つの Tomcat サーバーでも問題なく機能します。
  • カスタム ポートレットを Glassfish クラスターに展開すると、展開後すぐに機能し始めます。(glassfish クラスターの再起動を行う前に)
  • クラスタ ノードを再起動すると、同じポートレット アプリケーションが動作を停止し、エラーが発生してエラーが発生します。
  • これまでの調査によると、 java.lang.NoClassDefFoundError: com/liferay/portal/util/PropsValues は、liferay ポータルの一部である portal-impl.jar ファイルの一部であり、ポートレットで使用できるようにする必要があります。どういうわけか、再起動後に jar ファイルが別の方法でロードされ、同じ jar ファイルがポートレットで使用できなくなります。
  • また、Glassfish 3.1 Bundled liferay 6.1 セットアップも試しましたが、同じ問題が発生しています。
  • liferay フォーラムで提案されているように、portal-service.jar と portlet.jar を [glassfish ホーム]/lib ディレクトリに配置しました。
  • Glassfish ノード インスタンス プロセスで lsof -p pid を実行すると、必要な jar ファイルがこのプロセスによって開かれていることが示されます。これが私たちのアプリケーションで利用できない理由がわかりません。

この問題を解決/調査するための助けや指針をいただければ幸いです。

java.lang.NoClassDefFoundError: com/liferay/portal/util/PropsValues
    at org.apache.jsp.html.taglib.ui.search_005fiterator.page_jsp._jspService(page_jsp.java from :500)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:111)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)        at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:403)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:492)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:378)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
    at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1539)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:343)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:72)        at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:113)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:68)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)        at org.apache.catalina.core.ApplicationDispatcher.doInvoke(ApplicationDispatcher.java:785)
    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:649)
    at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:604)
    at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:534)        at com.liferay.taglib.util.IncludeTag.include(IncludeTag.java:323)
    at com.liferay.taglib.util.IncludeTag._doInclude(IncludeTag.java:418)
    at com.liferay.taglib.util.IncludeTag.doEndTag(IncludeTag.java:92)

これは私による liferay フォーラムの関連スレッドですが、実際には誰からも何の反応もありません。[liferay フォーラムに投稿された同じ問題]

また、portlet/WEB-INF/lib ディレクトリに portal-impl.jar を配置しようとしましたが (これは推奨されません)、他のすべての依存 jar もそこに入れる必要があるため失敗しました。

現在、オプションが不足しており、liferay タグを使用する代わりに、他のサードパーティ ライブラリを使用してページネーション機能を実装することを考えています。

エラーが発生している特定のタグは次のとおりです

        <liferay-ui:search-iterator />

ポートレットの WEB-INF/lib フォルダー内の jar のリスト

    SiebelClientWS-0.0.1-SNAPSHOT.jar
    spring-asm-3.0.5.RELEASE.jar
    XmlSchema-1.4.7.jar
    春の側面-3.0.5.RELEASE.jar
    spectjrt-1.6.11.jar
    spring-beans-3.0.5.RELEASE.jar
    アスペクトjweaver-1.6.11.jar    
    spring-context-3.0.5.RELEASE.jar
    axiom-api-1.2.11.jar
    spring-context-support-3.0.5.RELEASE.jar
    axiom-impl-1.2.11.jar
    spring-core-3.0.5.RELEASE.jar
    axis2-1.5.4.jar
    春式-3.0.5.RELEASE.jar
    axis2-kernel-1.5.4.jar
    spring-jdbc-3.0.5.RELEASE.jar
    axis2-transport-http-1.5.4.jar
    spring-tx-3.0.5.RELEASE.jar
    axis2-transport-local-1.5.4.jar
    spring-web-3.0.5.RELEASE.jar
    c3p0-0.9.1.2.jar    
    spring-webmvc-3.0.5.RELEASE.jar
    commons-codec-1.4.jar
    spring-webmvc-portlet-3.0.5.RELEASE.jar
    commons-httpclient-3.1.jar
    util-bridges.jar
    commons-logging.jar
    ユーティリティ-java.jar
    flexjson-2.1.jar    
    util-taglib.jar
    httpcore-4.0.jar    
    woden-api-1.0M9.jar
    httpcore-nio-4.0-beta1.jar
    woden-impl-commons-1.0M9.jar
    log4j.jar
    woden-impl-dom-1.0M9.jar
    neethi-2.0.2.jar    
    wsdl4j-1.6.2.jar
    spring-aop-3.0.5.RELEASE.jar
    wss4j-1.6.2.jar

4

2 に答える 2

2

私が変更され

/html/taglib/ui/search_paginator/page.jsp
/html/taglib/ui/search_iterator/page.jsp
/html/taglib/ui/page_iterator/start.jsp

PropsValuesの呼び出しを削除し、代わりにandの呼び出しに置き換えましcom.liferay.portal.kernel.util.PropsUtilPropsKeys。これにより、エラーがなくなりました。

改善リクエストを行いました http://issues.liferay.com/browse/LPS-30660

于 2012-10-22T20:45:19.843 に答える
0

com/liferay/portal/util/PropsValues は、liferay ポータルの一部である portal-impl.jar ファイルの一部であり、ポートレットで使用できるようにする必要があります。

それは正しくportal-impl.jarありません。ポートレットでは使用できず、使用することを意図していません。あなたはそれをあなたの中に入れてはいけませんWEB-INF/lib。そのjarはLiferay(liferayアプリケーション)でのみ利用可能であり、そのようにする必要があります。

(デプロイされた) ポートレット WEB-INF/lib の内容 (jar のリスト) を表示できますか?

于 2011-11-23T08:39:51.917 に答える