weblogic 配置 connectionpool Exception :JDBC driver is not on the CLASSPATH错误是怎么回事!(解决方法)

本文分享了作者在使用WebLogic服务器配置connection pool过程中遇到的JDBC driver not on the CLASSPATH问题,并详细记录了解决步骤:从简单地放置JAR包到最终通过修改服务器的classpath设置成功解决问题。

  

     由于刚学习了EJB技术,看了以后感觉有些印象了,决定在实践一下,entitbean+sessionbean的练习,因为entitbean(在服务器专门负责操作数据库的),所以在这之前先要配置好connection pool,我用的weblogic,在配置的遇到的标题上所说的问题,JDBC driver is not on the CLASSPATH,我一看哦大概知道应该是驱动jar包的问题,然后把包直接放到了webliogc的comm/lib目录下,在重新连一次,还是报刚刚的exception,决定去网上查一下,大概就是说要先在服务器里设置好classpath才行,大部分说在commm/bin/commEnv.cmd在这个文件里添加一句话就了:

 在后添加:set classpath=你的驱动jar路径

OK,可以了,重启下服务器,连接提示connection successful

注意点:虽然weblogic同过你的选择帮你自动写好了driver name,但是在有时情况下,你要根据你的驱动来写   :

  driver name和URL,要不然经常会出现你的驱动包与它所提供driver name或url不匹配,而报一些错

帮我解释如下日志有什么问题:C:\Users\17362\.jdks\corretto-1.8.0_442\bin\java.exe -Dcatalina.home=C:\Users\17362\tomcat9 -Dcatalina.base=C:\Users\17362\.SmartTomcat\journal\期刊 -Djava.io.tmpdir=C:\Users\17362\.SmartTomcat\journal\期刊\temp -Djava.util.logging.config.file=C:\Users\17362\.SmartTomcat\journal\期刊\conf\logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2024.3.4.1\lib\idea_rt.jar=52038" -Dfile.encoding=UTF-8 -classpath C:\Users\17362\tomcat9\bin\bootstrap.jar;C:\Users\17362\tomcat9\bin\tomcat-juli.jar org.apache.catalina.startup.Bootstrap start 16-Jun-2025 18:42:06.417 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Server.服务器版本: Apache Tomcat/9.0.31 16-Jun-2025 18:42:06.419 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 服务器构建: Feb 5 2020 19:32:12 UTC 16-Jun-2025 18:42:06.419 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 服务器版本号(:9.0.31.0 16-Jun-2025 18:42:06.419 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name: Windows 11 16-Jun-2025 18:42:06.419 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log OS.版本: 10.0 16-Jun-2025 18:42:06.419 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 架构: amd64 16-Jun-2025 18:42:06.419 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Java 环境变量: C:\Users\17362\.jdks\corretto-1.8.0_442\jre 16-Jun-2025 18:42:06.419 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log JVM 版本: 1.8.0_442-b06 16-Jun-2025 18:42:06.419 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log JVM.供应商: Amazon.com Inc. 16-Jun-2025 18:42:06.419 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE: C:\Users\17362\.SmartTomcat\journal\期刊 16-Jun-2025 18:42:06.419 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME: C:\Users\17362\tomcat9 16-Jun-2025 18:42:06.422 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=C:\Users\17362\tomcat9 16-Jun-2025 18:42:06.422 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=C:\Users\17362\.SmartTomcat\journal\期刊 16-Jun-2025 18:42:06.422 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=C:\Users\17362\.SmartTomcat\journal\期刊\temp 16-Jun-2025 18:42:06.422 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=C:\Users\17362\.SmartTomcat\journal\期刊\conf\logging.properties 16-Jun-2025 18:42:06.422 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager 16-Jun-2025 18:42:06.423 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -javaagent:C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2024.3.4.1\lib\idea_rt.jar=52038 16-Jun-2025 18:42:06.423 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dfile.encoding=UTF-8 16-Jun-2025 18:42:06.423 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Loaded APR based Apache Tomcat Native library [1.2.23] using APR version [1.7.0]. 16-Jun-2025 18:42:06.423 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true]. 16-Jun-2025 18:42:06.423 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR/OpenSSL配置:useAprConnector[false],useOpenSSL[true] 16-Jun-2025 18:42:06.431 信息 [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL successfully initialized [OpenSSL 1.1.1c 28 May 2019] 16-Jun-2025 18:42:06.641 信息 [main] org.apache.coyote.AbstractProtocol.init 初始化协议处理器 ["http-nio-8080"] 16-Jun-2025 18:42:07.182 严重 [main] org.apache.catalina.util.LifecycleBase.handleSubClassException 初始化组件[Connector[HTTP/1.1-8080]]失败。 org.apache.catalina.LifecycleException: Protocol handler initialization failed at org.apache.catalina.connector.Connector.initInternal(Connector.java:1013) at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:136) at org.apache.catalina.core.StandardService.initInternal(StandardService.java:533) at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:136) at org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:1057) at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:136) at org.apache.catalina.startup.Catalina.load(Catalina.java:584) at org.apache.catalina.startup.Catalina.load(Catalina.java:607) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:303) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:473) Caused by: java.net.BindException: Address already in use: bind at sun.nio.ch.Net.bind0(Native Method) at sun.nio.ch.Net.bind(Net.java:461) at sun.nio.ch.Net.bind(Net.java:453) at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:222) at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:85) at org.apache.tomcat.util.net.NioEndpoint.initServerSocket(NioEndpoint.java:229) at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:212) at org.apache.tomcat.util.net.AbstractEndpoint.bindWithCleanup(AbstractEndpoint.java:1141) at org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:1154) at org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:581) at org.apache.coyote.http11.AbstractHttp11Protocol.init(AbstractHttp11Protocol.java:74) at org.apache.catalina.connector.Connector.initInternal(Connector.java:1010) ... 13 more 16-Jun-2025 18:42:07.184 信息 [main] org.apache.catalina.startup.Catalina.load 服务器在[976]毫秒内初始化 16-Jun-2025 18:42:07.210 信息 [main] org.apache.catalina.core.StandardService.startInternal Starting service [Catalina] 16-Jun-2025 18:42:07.210 信息 [main] org.apache.catalina.core.StandardEngine.startInternal 正在启动 Servlet 引擎:[Apache Tomcat/9.0.31] 16-Jun-2025 18:42:07.218 信息 [main] org.apache.catalina.startup.HostConfig.deployDescriptor Deploying deployment descriptor [C:\Users\17362\.SmartTomcat\journal\期刊\conf\Catalina\localhost\BBS.xml] 16-Jun-2025 18:42:07.229 警告 [main] org.apache.catalina.startup.HostConfig.deployDescriptor The path attribute with value [/BBS] in deployment descriptor [C:\Users\17362\.SmartTomcat\journal\期刊\conf\Catalina\localhost\BBS.xml] has been ignored 16-Jun-2025 18:42:09.828 信息 [main] org.apache.jasper.servlet.TldScanner.scanJars 至少有一个JAR被扫描用于TLD但尚未包含TLD。 为此记录器启用调试日志记录,以获取已扫描但未在其中找到TLD的完整JAR列表。 在扫描期间跳过不需要的JAR可以缩短启动时间和JSP编译时间。 16-Jun-2025 18:42:09.892 信息 [main] org.springframework.web.context.ContextLoader.initWebApplicationContext Root WebApplicationContext: initialization started 16-Jun-2025 18:42:09.980 信息 [main] org.springframework.web.context.support.XmlWebApplicationContext.prepareRefresh Refreshing Root WebApplicationContext: startup date [Mon Jun 16 18:42:09 CST 2025]; root of context hierarchy 16-Jun-2025 18:42:10.057 信息 [main] org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions Loading XML bean definitions from URL [file:/C:/Users/17362/Documents/NetBeansProjects/BBS/build/web/WEB-INF/classes/applicationContext.xml] SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". SLF4J: Defaulting to no-operation (NOP) logger implementation SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details. MLog initialization issue: slf4j found no binding or threatened to use its (dangerously silent) NOPLogger. We consider the slf4j library not found. 16-Jun-2025 18:42:11.743 信息 [MLog-Init-Reporter] com.mchange.v2.log.MLog. MLog clients using java 1.4+ standard logging. 16-Jun-2025 18:42:11.814 信息 [main] com.mchange.v2.c3p0.C3P0Registry. Initializing c3p0-0.9.5.2 [built 08-December-2015 22:06:04 -0800; debug? true; trace: 10] ERROR StatusLogger Log4j2 could not find a logging implementation. Please add log4j-core to the classpath. Using SimpleLogger to log to the console... 16-Jun-2025 18:42:13.302 信息 [main] com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource. Initializing c3p0 pool... com.mchange.v2.c3p0.ComboPooledDataSource [ acquireIncrement -> 3, acquireRetryAttempts -> 30, acquireRetryDelay -> 1000, autoCommitOnClose -> false, automaticTestTable -> null, breakAfterAcquireFailure -> false, checkoutTimeout -> 0, connectionCustomizerClassName -> null, connectionTesterClassName -> com.mchange.v2.c3p0.impl.DefaultConnectionTester, contextClassLoaderSource -> caller, dataSourceName -> rvre4gbbxdysph1ss8stn|6fab250b, debugUnreturnedConnectionStackTraces -> false, description -> null, driverClass -> com.mysql.jdbc.Driver, extensions -> {}, factoryClassLocation -> null, forceIgnoreUnresolvedTransactions -> false, forceSynchronousCheckins -> false, forceUseNamedDriverClass -> false, identityToken -> rvre4gbbxdysph1ss8stn|6fab250b, idleConnectionTestPeriod -> 0, initialPoolSize -> 1, jdbcUrl -> jdbc:mysql://localhost/bbs, maxAdministrativeTaskTime -> 0, maxConnectionAge -> 0, maxIdleTime -> 20, maxIdleTimeExcessConnections -> 0, maxPoolSize -> 40, maxStatements -> 0, maxStatementsPerConnection -> 0, minPoolSize -> 1, numHelperThreads -> 3, preferredTestQuery -> null, privilegeSpawnedThreads -> false, properties -> {user=******, password=******}, propertyCycle -> 0, statementCacheNumDeferredCloseThreads -> 0, testConnectionOnCheckin -> false, testConnectionOnCheckout -> false, unreturnedConnectionTimeout -> 0, userOverrides -> {}, usesTraditionalReflectiveProxies -> false ]
最新发布
06-17
### Tomcat 启动失败的原因分析与解决方案 Tomcat 启动失败时出现 `java.net.BindException: Address already in use` 的错误信息,通常表示指定的端口已被其他进程占用。以下是详细的分析和解决方案: #### 1. 端口冲突问题 当 Tomcat 启动时尝试绑定到一个已经被占用的端口(例如默认的 8080 端口),就会抛出 `BindException` 异常[^1]。解决此问题的方法包括: - **检查端口占用情况**:使用以下命令查看哪个进程占用了目标端口(以 Linux 为例)。 ```bash netstat -tulnp | grep :8080 ``` 或者使用 `lsof` 命令: ```bash lsof -i:8080 ``` - **修改 Tomcat 配置文件**:如果发现端口被占用,可以修改 Tomcat 的配置文件 `server.xml`,将 `<Connector>` 元素中的端口号更改为未被占用的端口。例如: ```xml <Connector port="8081" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> ``` #### 2. SLF4J 和 Log4j2 日志实现缺失问题 如果日志框架配置不正确,可能会导致 Tomcat 启动时无法记录日志或抛出异常。以下是可能的解决方案: - **确保日志依赖完整**:检查项目的 `pom.xml` 文件中是否包含正确的日志依赖项。例如,对于 Maven 项目,可以添加以下依赖项: ```xml <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j-impl</artifactId> <version>2.17.1</version> </dependency> ``` - **配置日志文件**:确保项目根目录下存在正确的日志配置文件(如 `log4j2.xml` 或 `logback.xml`)。以下是一个简单的 `log4j2.xml` 示例: ```xml <?xml version="1.0" encoding="UTF-8"?> <Configuration status="WARN"> <Appenders> <Console name="Console" target="SYSTEM_OUT"> <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} %-5level %logger{36} - %msg%n"/> </Console> </Appenders> <Loggers> <Root level="info"> <AppenderRef ref="Console"/> </Root> </Loggers> </Configuration> ``` #### 3. Kafka 相关日志错误 在 `/tmp/community/log_error.log` 中提到的 Kafka 报错信息 `Exception thrown when sending a message with key='null'`[^1],可能是由于消息发送失败或 Kafka 配置问题引起的。建议: - 检查 Kafka Broker 是否正常运行。 - 确保 Kafka 客户端配置正确,例如 `bootstrap.servers` 参数。 #### 4. WebLogic 部署问题 在 WebLogic 控制台部署应用时,提示 `cvc-enumeration-valid string value '4.0' is not a valid enumeration value for web-app-versionType`[^2],这通常是由于 Web 应用的 `web.xml` 文件版本声明不正确。解决方案如下: - 修改 `web.xml` 文件的头部分为符合标准的版本声明。例如: ```xml <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1"> </web-app> ``` #### 5. Dubbo QoS 端口冲突 如果项目中集成了 Dubbo,并且启用了 QoS 功能,则可能会因为 QoS 端口被占用而抛出类似 `BindException` 的异常[^4]。解决方案是修改 Dubbo 的 QoS 配置: - 在 `application.properties` 或 `application.yml` 中添加以下配置: ```properties dubbo.application.qos.enable=true dubbo.application.qos.port=33333 dubbo.application.qos.accept.foreign.ip=false ``` ### 示例代码 以下是一个完整的 `server.xml` 修改示例: ```xml <Server port="8005" shutdown="SHUTDOWN"> <Service name="Catalina"> <Connector port="8081" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> <Engine name="Catalina" defaultHost="localhost"> <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> </Host> </Engine> </Service> </Server> ``` ---
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值