在 Apache 目录服务器中存储 Java 对象,第 2 部分:在 ApacheDS 中存储、搜索和检索 Java 对象(上)
2010-04-19 00:00:00 来源:WEB开发网从清单 1 中的注释中可以看出,将 Java 对象(即 Alice 的选项)存储到 ApacheDS 中包括 4 个步骤。后面几节将详细讨论每个步骤。
步骤 1. 设置 ApacheDS 的 JNDI 属性
清单 1 中的第一步是将 ApacheDS 的属性文件读入 Properties 对象。这意味着首先必须将 JNDI 属性写入单独的属性文件,如清单 2 所示:
清单 2. ApacheDS.properties 文件
java.naming.factory.initial=com.sun.jndi.ldap.LdapCtxFactory
java.naming.provider.url=ldap://localhost:389/ou=system
java.naming.security.authentication=simple
java.naming.security.principal=uid=admin,ou=system
之所以需要单独的属性文件,是因为使用客户端 JNDI 实现的应用程序可能独立于特定的 JNDI 实现而工作。指定的 Java 应用程序(例如 StoreAlicePreferences)应当能够操作 ApacheDS 或其他任何目录服务。目录服务甚至不需要使用 LDAP。
考虑一个简单的场景,属性文件的价值就会变得很清楚。假设您已经开发了一个 Java 应用程序,该应用程序使用 LDAP 的客户端 JNDI 实现与 ApacheDS 进行对话。后来,您又购买了另一个不使用 LDAP 协议而使用其他协议的目录服务器。
在这种情况下,需要一个能够操作新目录服务器的新的客户端 JNDI 实现。Java 程序程序将在不需要任何重新编码的情况下继续工作,只需要更新属性文件来反映新目录服务器的属性即可。
虽然在应用程序中对属性进行硬编码不会有什么编程问题,但是这么做会让应用程序依赖那些您已对其进行了硬编码的特定实现。这有点违背使用 JNDI 的目的,它的目的是保持独立于特定的实现。
- ››apache设置域名绑定 以及绑定不起作用的排查
- ››apache rewrite将指定URL转向指定的几个服务器
- ››apache配置文件httpd.comf部分参数说明
- ››Apache+Mysql+PHP+phpMyAdmin+Mac OS X 10.7 Lion...
- ››apache+tomcat负载均衡_项目实例
- ››apache mysql php 源码编译使用
- ››Apache添加mod_aspdotnet.so支持ASP.NET配置指南
- ››Apache中改变php.ini的路径
- ››Apache2.2与Tomcat6整合及虚拟主机配置
- ››Apache+php+mysql在windows下的安装与配置图解
- ››服务器群集:Windows 2000 和 Windows Server 200...
- ››服务器维护经验谈 图解DHCP故障排除
更多精彩
赞助商链接