0

私のLifearyカスタムポートレットには、クラウドサーバーにメディアをアップロードするためのカスタムロジックが存在する1つのJavaクラスが含まれています。

そのJavaクラスを1つのJavaプロジェクトに入れると、実行すると正常に動作します。しかし、同じJavaクラスと、実行する必要のある参照が何であれ、カスタムポートレットプロジェクトに必要に応じて追加されている場合。

05:19:41,312 ERROR [http-bio-8080-exec-2][render_portlet_jsp:154] java.lang.ClassNotFoundException: junit.framework.TestCase
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1711)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1556)
    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
    at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2889)
    at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1170)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1678)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1556)
    at cloudkey.Test_FileUpload.main(Test_FileUpload.java:21)
    at com.fl.UploadFilePortlet.UploadDocument(UploadFilePortlet.java:74)
    at com.liferay.portal.kernel.portlet.LiferayPortlet.callActionMethod(LiferayPortlet.java:153)
    at com.liferay.util.bridges.mvc.MVCPortlet.callActionMethod(MVCPortlet.java:250)
    at com.liferay.portal.kernel.portlet.LiferayPortlet.processAction(LiferayPortlet.java:80)
    at com.liferay.util.bridges.mvc.MVCPortlet.processAction(MVCPortlet.java:220)
    at com.liferay.portlet.FilterChainImpl.doFilter(FilterChainImpl.java:70)
    at com.liferay.portal.kernel.portlet.PortletFilterUtil.doFilter(PortletFilterUtil.java:48)
    at com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:111)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)

基本的に私は2つのパッケージcloudkeyとutilを持っています

cloudkeyパッケージには、テストアップロードclass.amがあり、porletアクションクラスでそのメソッドを呼び出しています。コンパイル時のエラーは発生しませんでしたが、このエラーが発生しました。プロジェクトにJunit3ライブラリを追加しました。

このエラーは何についてですか??そして、コードスニペットが必要な場合は、質問を理解できないため、提供します。

4

1 に答える 1

0

junit jar ファイルをポートレットに追加したことを再度確認し (portlet-plugin.properties を使用)、サーバーを停止し、一時フォルダーと作業フォルダーを削除します。サーバーを再起動し、ポートレットを再度デプロイします。コードで classLoader を使用している場合も、 「getClass().getClassLoader()」に置き換えて、もう一度デプロイを保存して確認します。

于 2012-10-17T06:13:48.843 に答える