java命名空间javax.naming.ldap类controlfactory的类成员方法:
controlfactory定义及介绍
本文导语:
controlfactory
protected controlfactory()
getcontrolinstance
public abstract control getcontrolinstance(control ctl)
throws namingexception
使用此控件工厂创建控件。
服务提供者使用工厂以专用控件类的形式...
controlfactory
protected controlfactory()
getcontrolinstance
public abstract control getcontrolinstance(control ctl)
throws namingexception
- 使用此控件工厂创建控件。
服务提供者使用工厂以专用控件类的形式返回从 ldap 协议读取的控件。不使用此机制,提供者将返回仅包含 ber 编码格式的数据的控件。
通常,ctl 是包含 ber 编码数据的“基本”控件。通常通过解码 ber 编码数据使用工厂创建专门的控件实现,该实现提供一些方法以类型安全的、友好的方式来访问该数据。
例如,工厂可能使用基本控件中的 ber 编码数据并返回 virtuallistreplycontrol 的实例。
如果此工厂不能使用提供的参数创建控件,则其应该返回 null。工厂只有在可以确定它是唯一需要的工厂并且不应该再尝试其他控件工厂时才抛出异常。例如,在控件中的 ber 数据不匹配给定 oid 的控件所期望的数据时,会发生这种情况。此方法抛出 namingexception,因此应该传播的所有其他内部生成的异常都必须被包装在 namingexception 中。
- 参数:
ctl
- 非 null 控件。
- 返回:
- 一个控件(可能为 null)。
- 抛出:
namingexception
- 如果 ctl 包含无效数据,这些无效数据阻止它用于创建控件。工厂只有在已知生成控件(由 oid 标识)的方式但由于某些原因(例如,ber 数据无效)不能生成控件时才抛出异常。