我访问一个静态方法时抛出了java.lang.NoClassDefFoundError异常?
我使用的tomcat6+myeclipse6.0+hibernate3
异常信息:
2009-12-12 17:09:35 org.apache.jk.common.ChannelSocket init
信息: JK: ajp13 listening on /0.0.0.0:8009
2009-12-12 17:09:35 org.apache.jk.server.JkMain start
信息: Jk running ID=0 time=0/109 config=null
2009-12-12 17:09:35 org.apache.catalina.startup.Catalina start
信息: Server startup in 12163 ms
sdfffffffffffffffffffffffffffffffff
2009-12-12 17:09:55 org.apache.catalina.core.ApplicationContext log
信息: javax.servlet.ServletException: java.lang.NoClassDefFoundError出错的地方:
/*
* 查询最近的n件商品
*/
public List latestShopping(int n){
Session session =null;
Transaction tx=null;
List list=new ArrayList();
System.out.println("sdfffffffffffffffffffffffffffffffff");//调试时用的
//SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try{
session=HibernateUtils.getSession(); //问题就处在这里,调用了静态方法。
System.out.println("111111111111111111111");
tx=session.beginTransaction();
System.out.println("222222222222222222");
List all=session.createQuery("select s from Shopping as s ")
.list();
System.out.println("33333333333333333333333333");
tx.commit();
if(n>all.size()){
list=all;
}
if(all.size()>0){
for(int j=0;j<n;j++){
Shopping shop=null;
Shopping latest=(Shopping)all.get(0);
for(int i=1;i<all.size();i++){
shop=(Shopping)all.get(i);
System.out.println("************");
System.out.println(shop.getUptime().compareTo(latest.getUptime()));
if(shop.getUptime().compareTo(latest.getUptime())>0){
latest=shop;
System.out.println("sdfffffffffffffffffffffffffffffffff");
}
}
System.out.println(latest);
System.out.println(list);
list.add(latest);
all.remove(latest);
}
}
}catch(Exception e){
e.printStackTrace();
tx.rollback();
}finally{
HibernateUtils.CloseSession(session);
}
return list;
} 从我的开来是调用HibernateUtils.getSession时出错,这是个静态方法。不知怎么该。请各位高手指教:
HibernateUtils 类;
public class HibernateUtils {
private static Configuration config;
private static SessionFactory factory;
static {
config=new Configuration().configure();
factory=config.buildSessionFactory();
}
public static Session getSession(){
return factory.getCurrentSession();
}
public static void CloseSession(Session session){
if(session.isOpen()){
session.close();
}
}
我使用的tomcat6+myeclipse6.0+hibernate3
异常信息:
2009-12-12 17:09:35 org.apache.jk.common.ChannelSocket init
信息: JK: ajp13 listening on /0.0.0.0:8009
2009-12-12 17:09:35 org.apache.jk.server.JkMain start
信息: Jk running ID=0 time=0/109 config=null
2009-12-12 17:09:35 org.apache.catalina.startup.Catalina start
信息: Server startup in 12163 ms
sdfffffffffffffffffffffffffffffffff
2009-12-12 17:09:55 org.apache.catalina.core.ApplicationContext log
信息: javax.servlet.ServletException: java.lang.NoClassDefFoundError出错的地方:
/*
* 查询最近的n件商品
*/
public List latestShopping(int n){
Session session =null;
Transaction tx=null;
List list=new ArrayList();
System.out.println("sdfffffffffffffffffffffffffffffffff");//调试时用的
//SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try{
session=HibernateUtils.getSession(); //问题就处在这里,调用了静态方法。
System.out.println("111111111111111111111");
tx=session.beginTransaction();
System.out.println("222222222222222222");
List all=session.createQuery("select s from Shopping as s ")
.list();
System.out.println("33333333333333333333333333");
tx.commit();
if(n>all.size()){
list=all;
}
if(all.size()>0){
for(int j=0;j<n;j++){
Shopping shop=null;
Shopping latest=(Shopping)all.get(0);
for(int i=1;i<all.size();i++){
shop=(Shopping)all.get(i);
System.out.println("************");
System.out.println(shop.getUptime().compareTo(latest.getUptime()));
if(shop.getUptime().compareTo(latest.getUptime())>0){
latest=shop;
System.out.println("sdfffffffffffffffffffffffffffffffff");
}
}
System.out.println(latest);
System.out.println(list);
list.add(latest);
all.remove(latest);
}
}
}catch(Exception e){
e.printStackTrace();
tx.rollback();
}finally{
HibernateUtils.CloseSession(session);
}
return list;
} 从我的开来是调用HibernateUtils.getSession时出错,这是个静态方法。不知怎么该。请各位高手指教:
HibernateUtils 类;
public class HibernateUtils {
private static Configuration config;
private static SessionFactory factory;
static {
config=new Configuration().configure();
factory=config.buildSessionFactory();
}
public static Session getSession(){
return factory.getCurrentSession();
}
public static void CloseSession(Session session){
if(session.isOpen()){
session.close();
}
}
解决方案 »
- 急求~~~~~比如二个不同地方的人在一起语音视频聊天结束后同时弹出一个框可以跟對方写评论在提交....这个同步出现框如何用java代码实现~~~
- 全国省市区3及联动
- 导入包org.apache.commons.beanutils.BeanUtils
- 关于hibernate中(多对多关系)对表进行插入数据的问题
- jsp与sqlserver2005数据库连接问题
- 如何用<html:select>读取数据库的内容
- 如何得到上个星期天的日期,星期6的日期呢
- 如何取得数据库操作的错误序号,从而能够更具不同的序号进行判断,处理!
- 在TOMCAT中怎么写和调试SERVLET啊,
- 求一个正则表达式
- java.io.IOException: Error: Attempt to clear a buffer that's already been flushe
- js 操作 Excel 表格
很多小的方面出错都会让你花很长时间到处查错 (如果经验少的话)。