0

在我的 Lifeary 自定义 portlet 中,我包含了一个 java 类,用于在云服务器上上传媒体的自定义逻辑驻留在其中。

如果我放入一个 java 项目,那么如果我运行该 java 类,那么它工作正常。但是当同一个java类和它需要运行的任何引用时,它会根据需要添加到我的自定义portlet项目中。但是它如何给我以下错误..

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)

基本上我有两个包 cloudkey 和 util

在 cloudkey 包中,我有测试上传类。我在我的 porlet 操作类中调用它的方法。我没有编译时错误..但是我遇到的只是这个错误。而且我也已经在我的项目中添加了 Junit3 库..

这个错误是关于什么的?如果你想要我的代码片段,那么我会提供你无法理解我的问题..

4

1 回答 1

0

只需再次验证您是否已在 portlet 中添加了 junit jar 文件(使用 portlet-plugin.properties),停止服务器删除临时和工作文件夹重新启动服务器并再次部署您的 portlet,如果您在代码中使用 classLoader,那么将其替换为“getClass().getClassLoader()”再次保存部署并验证它。

于 2012-10-17T06:13:48.843 回答