package services;import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;public class BusinessService {
private final static String DEFUL_IMP = "HibernateFactory"; private static Log log = LogFactory.getLog(BusinessService.class); private static JliveBBS service = null; public static JliveBBS instance() {
if (service == null) {
// load service implement class from config file
String classStr = null;
if (classStr == null || classStr.length() < 1) {
if (log.isDebugEnabled())
log.debug("load implement Factory for defullclass:"
+ DEFUL_IMP);
classStr = DEFUL_IMP;
}
try {
Class serviceImp = Class.forName(classStr);
service = (JliveBBS) serviceImp.newInstance();
} catch (ClassNotFoundException e) {
log.info("don't instantiate Factory class:" + classStr);
} catch (InstantiationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace(); }
} return service;
}
}
********************************************************
这个是测试的类:
package HibernateTestGroup;import java.util.*;import forms.Boards;
import forms.Groups;
import forms.Users;import DAO.*;
import services.BusinessService;public class TestGroup  {
public static GroupManager mng = BusinessService.instance()
.getGroupManager();
public void addgroup(){
Groups group=new Groups();
group.setGroupname(" 华灯初上");
group.setDesc("物尽繁华尽先孤独");
group.setCreatedate(new Date());
try{
mng.addGroup(group);
}catch(Exception e){
e.printStackTrace();
}
}
public void loadallgroup() { List list = mng.loadAllGroups(new Users());
System.out.println("-");
for (Iterator iter = list.iterator(); iter.hasNext();) {
Groups group = (Groups) iter.next();
System.out.print(group.getGroupname());
List boards = (List) group.getBoards();
for (Iterator iterator = boards.iterator(); iterator.hasNext();) {
Boards board = (Boards) iterator.next();
System.out.println("  +" + board.getBoardname());
}
System.out.println("-");
} }
public static void main(String args[]){
TestGroup test=new TestGroup();
test.addgroup();
}
}***********************************************************
HibernateFactory类路径:
eclipse -src/services/HibernateFactory.java

解决方案 »

  1.   

    应该是由于所需要的类没有在buildpath中。
      

  2.   

    在eclipse中,把HibernateFactory.java所在的package的父目录加到classpath中就可以了.例如:假设你的HibernateFactory.java所在的package为:services,则你只要把src目录的路径加到classpath中就可以了.Hope this help.
      

  3.   

    Class.forName("services.HibernateFactory")
      

  4.   

    Class.forName("services.HibernateFactory")
    这个我试过了,还是提示找不到路径
    1999-6-15 9:31:46 services.BusinessService instance
    信息: don't instantiate Factory class:HibernateFactory
    java.lang.ExceptionInInitializerError
    Caused by: java.lang.NullPointerException
    at HibernateTestGroup.TestGroup.<clinit>(TestGroup.java:14)
    Exception in thread "main"
      

  5.   

    好像有点清楚问题出在哪了我创建的是web 项目,在eclipse 下 
    默认编译的类文件是放在\WebRoot\WEB-INF\classes目录下
    而我不是在web容器下测试
    所以找不到类文件