我刚刚开始使用Proxool(JDBC连接池管理器)。我下载了在以下链接中找到的jar:http://proxool.sourceforge.net/download.html。之后,我只是将jar位置添加到netbeans 7.0.1的ClassPath中,构建了项目,重新启动了服务器(Glassfish),然后尝试对其进行配置,如下例所示:

https://java2s.com/Open-Source/Java/Database-JDBC-Connection-Pool/proxool/org/logicalcobwebs/proxool/ProxoolDataSourceTest.java.htm

我只是修改了示例(参数),使其修复到我的应用程序中,并且下面的以下代码崩溃了。它显示错误java.lang.NoClassDefFoundError: Could not initialize class org.logicalcobwebs.proxool.ProxoolDataSource

我不明白为什么,因为我只是导入了整个程序包。我不知道从哪里开始。

这是我的代码:

import org.logicalcobwebs.proxool.*;
import org.logicalcobwebs.*;

/* Error Here ----> */ ProxoolDataSource dataSource = new ProxoolDataSource();
        dataSource.setAlias("flpool");
        dataSource.setDriver("com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource");
        dataSource.setDriverUrl("jdbc:mysql://localhost:3306/superdb");
        dataSource.setUser("db");
        dataSource.setPassword("password");
        dataSource.setMaximumActiveTime(100);
        dataSource.setMinimumConnectionCount(8);
        dataSource.setMaximumConnectionCount(25);
        Hashtable env = new Hashtable();
        env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.rmi.registry.RegistryContextFactory");
        env.put(Context.PROVIDER_URL, "rmi://localhost:1099");
        Context context = new InitialContext(env);
        context.createSubcontext("jdbc");
        context.bind(jndiName,dataSource);
        context.close();

    DataSource ds = (DataSource) context.lookup(jndiName);

    ProxoolFacade.removeConnectionPool("flpool");

    context.close();


如果有人有任何想法将感谢您的帮助,在此先感谢。

最佳答案

我想您可能错过了Apache Commons Logging JAR。

讯息

Could not initialize class org.logicalcobwebs.proxool.ProxoolDataSource

indicates that static initialization of the named class failed.

I downloaded the source of Proxool, and the only static initialization in this class was the following line:

private static final Log LOG = LogFactory.getLog(ProxoolDataSource.class);


尝试将Commons Logging JAR添加到您的项目中,然后重新启动服务器。

关于java - Proxool java.lang.NoClassDefFoundError,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13462861/

10-11 10:52