配置jndi服务,javax.naming.NamingException的四种情况

简介: 1.当jndi服务没有启动,或者jndi服务的属性没有设置正确,抛出如下异常: javax.naming.CommunicationException: Can't find SerialContextProvider.

1.当jndi服务没有启动,或者jndi服务的属性没有设置正确,抛出如下异常: javax.naming.CommunicationException: Can't find SerialContextProvider...
2.如果InitialContext class既没有为jndi服务提供者指出默认属性也没有明确指明属性,抛出如下异常: javax.naming.NoInitialContextException:Need to specify class name in enenvironment or system property,or as an appletparameter, or in an application resource file: java.naming java.naming.factory.initial
3.如果jndi程序的classpath没有包括jndi server class,抛出如下异常: javax.naming.NoInitialContextException: Cannot instantiate class: XXX [Root exception is java.lang.ClassNotFoundException: XXX]
4.jndi属性与jndi服务提供者不匹配,抛出如下异常: javax.naming.ServiceUnavailableException: Connection refused: no further information [Root exception is java.net.ConnectionException: Connection refused:no further information]

 

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;
     Context jndiContext = new InitialContext();
      String jndiName = "java:/" + user.toLowerCase();
      ds = (DataSource)jndiContext.lookup(jndiName);
      con = ds.getConnection();
      Connection localConnection = con;
      return localConnection;
  

 

相关文章
|
Java API Apache
使用 Apache PDFBox 操作PDF文件
Apache PDFBox库是一个开源的Java工具,专门用于处理PDF文档。它允许用户创建全新的PDF文件,编辑现有的PDF文档,以及从PDF文件中提取内容。此外,Apache PDFBox还提供了一些命令行实用工具。
2254 6
|
Java Maven
【异常解决】为什么会产生jar包冲突,如何排查jar包冲突?
【异常解决】为什么会产生jar包冲突,如何排查jar包冲突?
780 0
|
消息中间件 SQL 存储
超详细的RabbitMQ入门,看这篇就够了!
RabbitMQ入门,看这篇就够了
220495 69
|
缓存 Linux 开发工具
CentOS 7- 配置阿里镜像源
阿里镜像官方地址http://mirrors.aliyun.com/ 1、点击官方提供的相应系统的帮助 :2、查看不同版本的系统操作: 下载源1、安装wget yum install -y wget2、下载CentOS 7的repo文件wget -O /etc/yum.
265400 0
|
消息中间件 安全 Java
Java“NoInitialContextException”问题解决
Java中“NoInitialContextException”异常通常发生在JNDI(Java命名和目录接口)查找时缺少初始上下文配置。解决方法包括:确保JNDI提供者URL正确、添加必要的库文件、配置jndi.properties文件或在代码中显式指定InitialContext环境属性。
344 1
|
程序员
【工具使用】Intellij IDEA 自动清除无效 import 包 和 清除无效 import包 的快捷键
【工具使用】Intellij IDEA 自动清除无效 import 包 和 清除无效 import包 的快捷键
4466 0
|
Prometheus Kubernetes 负载均衡
Opentelemetry collector用法
本文详细介绍了Opentelemetry Collector的使用方法及其各个组件(receiver、processor、exporter、connector和服务配置)的功能与配置。Collector的核心组件通过官方仓库提供丰富的实现,涵盖了认证、健康监控等功能。
2054 63
Opentelemetry collector用法
|
存储 安全 Java
如何确保 JNDI 配置的正确性
JNDI(Java Naming and Directory Interface)配置的正确性对于应用程序的稳定运行至关重要。确保 JNDI 配置正确的方法包括:仔细检查配置文件中的语法和路径,使用测试环境进行验证,以及启用日志记录以捕获潜在错误。
268 6
|
消息中间件 JSON Java
Spring Boot、Spring Cloud与Spring Cloud Alibaba版本对应关系
Spring Boot、Spring Cloud与Spring Cloud Alibaba版本对应关系
31521 0

热门文章

最新文章