欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

weblogic9下java.lang.NoClassDefFoundError问题  

程序员文章站 2024-02-23 12:16:46
...

在weblogic9一个域下部署3个应用,其中一个应用出现错误如下,页面错误为:java.lang 数据下载失败,其他应用正常运行。出错的应用程序启动是没有任何问题的,但运行一段时间后,木有固定时间,程序就会出现该问题,错误部分已经加粗。

 

ERROR:2012-05-02 07:24:44,681 -
java.lang.NoClassDefFoundError
 at com.jsjn.lois.req.dao.impl.LoiRegDAOImpl.getCount(LoiRegDAOImpl.java:57)
 at com.jsjn.lois.req.service.impl.LoiRegServiceImpl.getCount(LoiRegServiceImpl.java:51)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
 at java.lang.reflect.Method.invoke(Method.java:585)
 at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
 at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
 at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
 at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
 at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
 at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
 at $Proxy92.getCount(Unknown Source)
 at com.jsjn.lois.req.dorado.listener.LoiRegView_dsRegQueryListener.afterLoadData(LoiRegView_dsRegQueryListener.java:111)
 at com.bstek.dorado.data.DatasetSupport.fireAfterLoadData(DatasetSupport.java:2048)
 at com.bstek.dorado.data.DatasetSupport.internalLoad(DatasetSupport.java:928)
 at com.bstek.dorado.view.data.ViewDatasetSupport.internalLoad(ViewDatasetSupport.java:614)
 at com.bstek.dorado.view.data.AbstractViewDataset.internalLoad(AbstractViewDataset.java:32)
 at com.bstek.dorado.data.DatasetSupport.load(DatasetSupport.java:877)
 at com.bstek.dorado.view.ViewModelSupport.doLoadData(ViewModelSupport.java:628)
 at com.bstek.dorado.view.ViewModelSupport.doLoadData(ViewModelSupport.java:615)
 at com.bstek.dorado.view.ViewModelSupport.prepareDatasets(ViewModelSupport.java:592)
 at com.bstek.dorado.view.rpc.LoadDataRPCHandler.internalExecute(LoadDataRPCHandler.java:130)
 at com.bstek.dorado.view.rpc.AbstractRPCHandler.execute(AbstractRPCHandler.java:119)
 at com.bstek.dorado.view.smartweb.v2.ViewServiceController.doRPC(ViewServiceController.java:453)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
 at java.lang.reflect.Method.invoke(Method.java:585)
 at com.bstek.dorado.action.Controller.doDispatch(Controller.java:220)
 at com.bstek.dorado.action.Controller.internalDispatch(Controller.java:174)
 at com.bstek.dorado.action.Controller.internalDispatch(Controller.java:138)
 at com.bstek.dorado.action.Controller.invokeAction(Controller.java:113)
 at com.bstek.dorado.action.ActionHandler.invokeAction(ActionHandler.java:140)
 at com.bstek.dorado.action.ActionHandler.invokeAction(ActionHandler.java:130)
 at com.bstek.dorado.core.DoradoServlet.doGet(DoradoServlet.java:85)
 at com.bstek.dorado.core.DoradoServlet.doPost(DoradoServlet.java:109)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
 at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
 at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
 at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:283)
 at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
 at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
 at com.jsjn.common.filter.TimeZoneFilter.doFilter(TimeZoneFilter.java:56)
 at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
 at com.bstek.dorado.core.FilterHandle.internalDoFilter(FilterHandle.java:343)
 at com.bstek.dorado.core.FilterHandle.doAgentRPCFilter(FilterHandle.java:291)
 at com.bstek.dorado.core.FilterHandle.doFilter(FilterHandle.java:155)
 at com.bstek.dorado.core.DoradoFilter.doFilter(DoradoFilter.java:72)
 at com.jsjn.lois.osys.util.RcasDoradoFilter.doFilter(RcasDoradoFilter.java:43)
 at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
 at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
 at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
 at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
 at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
 at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
 at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
 at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3229)
 at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
 at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
 at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2002)
 at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:1908)
 at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1362)
 at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
 at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
 INFO:2012-05-02 07:24:51,739 - sessionFactoryName: null
 WARN:2012-05-02 07:24:51,817 -
==lois==createSQLQuery--sql:SELECT TX_NO_SEQ.NEXTVAL FROM DUAL

 INFO:2012-05-02 07:24:51,818 - sessionFactoryName: null
 INFO:2012-05-02 07:24:54,780 - sessionFactoryName: null
 INFO:2012-05-02 07:24:58,589 - sessionFactoryName: null
ERROR:2012-05-02 07:24:58,597 -
java.lang.NoClassDefFoundError

 

错误DAO下类的实现:

public int getCount(Map queryMap) {
  StringBuilder sql = new StringBuilder("SELECT COUNT(1) " + " FROM "
    + Constant.LOIS_DB_NAME + "LOI_REG t1 " + " LEFT JOIN "
    + Constant.LM_DB_NAME
    + "cibaseinfo t2 ON t1.PEYER_ID=t2.custno " + " LEFT JOIN "
    + Constant.LOIS_DB_NAME + "LOI_LOSS t4 ON t1.LOI_ID=t4.LOI_ID "
    + " LEFT JOIN " + Constant.LOIS_DB_NAME
    + "LOI_REQLOG t5 ON t1.APT_SEQ=t5.APT_SEQ " + " LEFT JOIN "
    + Constant.LOIS_DB_NAME
    + "LOI_REQLOG t6 ON t1.APT_SEQ=t6.APT_SEQ " + " LEFT JOIN "
    + Constant.LM_DB_NAME
    + "cibaseinfo t7 ON t6.PAYEE_ID=t7.custno " + " WHERE 1=1 ");

 

jdk版本为1.5 ,个人觉得问题出现在Constant 常量这个类,但是又不知道 为什么错了,请高手解答,在线急等。。。

 

补充:常量类实现如下:

 // 读取配置文件
 private static final String LOIS_CONFIG = "lois_config.properties";
 //读取数据库名称
 public static String getDBName(String dbName) {
  PropertiesUtil pptUtil = new PropertiesUtil(LOIS_CONFIG);
  String loisDbName = ConverUtil.getObjStr(pptUtil.getValue(dbName)).concat(".");
  System.out.println("读取数据库名称:"+loisDbName);
  return loisDbName;
 }
 public static final String LOIS_DB_NAME=Constant.getDBName("LOIS_DB_NAME");//数据库用户

 

常量在加载一次后,在以后的程序运行中,应该是可以直接调用的,搞不明白为什么会出现java.lang.NoClassDefFoundError////