weblogic和websphere的jndi属性

本文介绍IBM WebSphere和BEA WebLogic中的JNDI服务配置方法,并提供了解决JSP文件间中文数据传递问题的具体方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

IBM WebSphere JNDI 服务

java.naming.provider.url=iiop://myhost:9001
java.naming.factory.initial= com.ibm.websphere.naming.WsnInitialContextFactory

BEA WebLogic JNDI 服务

java.naming.provider.url=t3://myhost:7001
java.naming.factory.initial=weblogic.jndi.WLInitialContextFactory
websphere用法:

Hashtable ht = new Hashtable();
ht.put("java.naming.factory.initial", "com.ibm.ejs.ns.jndi.CNInitialContextFactory");

Context ctx = new InitialContext(ht);

DataSource ds = (DataSource)ctx.lookup("jdbc/Oracle");//JNDI服务名

weblogic中文解决问题方法:

得到oracle的字符集:
select * from v$nls_parameters where parameter='NLS_CHARACTERSET'
如果是ZHS16GBK,则JDBC的操作不需要转码;如果是us7ascii,则需要转码或者作相关配置

1).使用Thin Driver
如果使用Thin Driver,那么需要在查询数据库的时候将字符集由ISO转换为GBK,写入数据库的时候将字符集由GBK转换为ISO.
例如:String strSql="insert into tabA(A,B) values('1111','王超')";
strSql = new String(strSql.getBytes("GBK"), "ISO-8859-1");

2).使用OCI Driver
直接使用WebLogic提供的driver,在配置连接池时设置Properties属性:

http://dev2dev.bea.com.cn/techdoc/200311546.html


JSP文件之间不能正确传递中文数据,可以有两种方法解决.
其一:在web.xml里加上如下脚本:
<context-param>
<param-name>weblogic.httpd.inputCharset./*</param-name>
<param-value>GBK</param-value>
</context-param>
其二:在weblogic.xml里加上如下脚本:
<charset-params>
<input-charset>
<resource-path>/*</resource-path>
<java-charset-name>GBK</java-charset-name>
</input-charset>
</charset-params>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值