java.applet

java.awt

java.awt.color

java.awt.datatransfer

java.awt.dnd

java.awt.event

java.awt.font

java.awt.geom

java.awt.im

java.awt.im.spi

java.awt.image

java.awt.image.renderable

java.awt.print

java.beans

java.beans.beancontext

java.io

java.lang

java.lang.annotation

java.lang.instrument

java.lang.management

java.lang.ref

java.lang.reflect

java.math

java.net

java.nio

java.nio.channels

java.nio.channels.spi

java.nio.charset

java.nio.charset.spi

java.rmi

java.rmi.activation

java.rmi.dgc

java.rmi.registry

java.rmi.server

java.security

java.security.acl

java.security.cert

java.security.interfaces

java.security.spec

java.sql

java.text

java.util

java.util.concurrent

java.util.concurrent.atomic

java.util.concurrent.locks

java.util.jar

java.util.logging

java.util.prefs

java.util.regex

java.util.zip

javax.accessibility

javax.activity

javax.crypto

javax.crypto.interfaces

javax.crypto.spec

javax.imageio

javax.imageio.event

javax.imageio.metadata

javax.imageio.plugins.bmp

javax.imageio.plugins.jpeg

javax.imageio.spi

javax.imageio.stream

javax.management

javax.management.loading

javax.management.modelmbean

javax.management.monitor

javax.management.openmbean

javax.management.relation

javax.management.remote

javax.management.remote.rmi

javax.management.timer

javax.naming

javax.naming.directory

javax.naming.event

javax.naming.ldap

javax.naming.spi

javax.net

javax.net.ssl

javax.print

javax.print.attribute

javax.print.attribute.standard

javax.print.event

javax.rmi

javax.rmi.CORBA

javax.rmi.ssl

javax.security.auth

javax.security.auth.callback

javax.security.auth.kerberos

javax.security.auth.login

javax.security.auth.spi

javax.security.auth.x500

javax.security.cert

javax.security.sasl

javax.sound.midi

javax.sound.midi.spi

javax.sound.sampled

javax.sound.sampled.spi

javax.sql

javax.sql.rowset

javax.sql.rowset.serial

javax.sql.rowset.spi

javax.swing

javax.swing.border

javax.swing.colorchooser

javax.swing.event

javax.swing.filechooser

javax.swing.plaf

javax.swing.plaf.basic

javax.swing.plaf.metal

javax.swing.plaf.multi

javax.swing.plaf.synth

javax.swing.table

javax.swing.text

javax.swing.text

javax.swing.text.parser

javax.swing.text.rtf

javax.swing.tree

javax.swing.undo

javax.transaction

javax.transaction.xa

javax.xml

javax.xml.datatype

javax.xml.namespace

javax.xml.parsers

javax.xml.transform

javax.xml.transform.dom

javax.xml.transform.sax

javax.xml.transform.stream

javax.xml.validation

javax.xml.xpath

org.ietf.jgss

org.omg.CORBA

org.omg.CORBA_2_3

org.omg.CORBA_2_3.portable

org.omg.CORBA.DynAnyPackage

org.omg.CORBA.ORBPackage

org.omg.CORBA.portable

org.omg.CORBA.TypeCodePackage

org.omg.CosNaming

org.omg.CosNaming.NamingContextExtPackage

org.omg.CosNaming.NamingContextPackage

org.omg.Dynamic

org.omg.DynamicAny

org.omg.DynamicAny.DynAnyFactoryPackage

org.omg.DynamicAny.DynAnyPackage

org.omg.IOP

org.omg.IOP.CodecFactoryPackage

org.omg.IOP.CodecPackage

org.omg.Messaging

org.omg.PortableInterceptor

org.omg.PortableInterceptor.ORBInitInfoPackage

org.omg.PortableServer

org.omg.PortableServer.CurrentPackage

org.omg.PortableServer.POAManagerPackage

org.omg.PortableServer.POAPackage

org.omg.PortableServer.portable

org.omg.PortableServer.ServantLocatorPackage

org.omg.SendingContext

org.omg.stub.java.rmi

org.w3c.dom

org.w3c.dom.bootstrap

org.w3c.dom.events

org.w3c.dom.ls

org.xml.sax

org.xml.sax.ext

org.xml.sax.helpers

allclasses-frame

allclasses-noframe

constant-values

deprecated-list

help-doc

JavaTM 2 Platform
Standard Ed. 5.0

org.omg.PortableInterceptor
接口 RequestInfoOperations

所有已知子接口:
ClientRequestInfo, ClientRequestInfoOperations, RequestInfo, ServerRequestInfo, ServerRequestInfoOperations

public interface RequestInfoOperations

Interceptor 可访问的请求信息。

每个截取点都给定了一个对象,Interceptor 可以通过该对象访问请求信息。客户端和服务器端的截取点关注不同的信息,因此有两种信息对象:ClientRequestInfo 传递给客户端的截取点,ServerRequestInfo 传递给服务器端的截取点。但也有两者都需要的信息,所以这两个接口继承自同一个接口:RequestInfo

另请参见:
ClientRequestInfo, ServerRequestInfo

方法摘要
 Parameter[] arguments()
          返回一个 Parameter 对象数组,包含将调用的操作上的参数。
 String[] contexts()
          返回一个 String 对象数组,这些对象描述可以在此操作调用上传递的上下文。
 TypeCode[] exceptions()
          返回一个 TypeCode 对象数组,这些对象描述此操作调用可能抛出的用户异常的 TypeCode
 Object forward_reference()
          如果 reply_status 属性为 LOCATION_FORWARD,则包含要将请求转发到的对象。
 ServiceContext get_reply_service_context(int id)
          返回具有给定 ID 的与应答关联的服务上下文复本。
 ServiceContext get_request_service_context(int id)
          返回具有给定 ID 的与请求关联的服务上下文复本。
 Any get_slot(int id)
          返回请求域内 PortableInterceptor.Current 给定槽 (slot) 中的数据。
 String[] operation_context()
          返回一个 String 对象数组,这些对象包含将在请求上发送上下文。
 String operation()
          返回将被调用的操作的名称。
 short reply_status()
          描述操作调用结果的状态。
 int request_id()
          返回唯一地标识激活的请求/应答序列的 id。
 boolean response_expected()
          指示是否希望响应。
 Any result()
          返回一个 any,它包含该操作调用的结果。
 short sync_scope()
          定义在控制信息返回到客户端前请求应前进的距离。
 

方法详细信息

request_id

int request_id()
返回唯一地标识激活的请求/应答序列的 id。请求/应答序列一结束此 ID 即可重用。注意,此 id 不同于 GIOP request_id。如果使用的传送机制是 GIOP,则这些 ID 很可能是相同的,但是不保证也不要求如此。


operation

String operation()
返回将被调用的操作的名称。


arguments

Parameter[] arguments()
返回一个 Parameter 对象数组,包含将调用的操作上的参数。如果没有参数,则此属性将是一个 0 长度数组。

并非所有环境都提供对参数的访问。例如,使用 Java 可移植绑定时参数将不可用。在这些环境中访问此属性时,将抛出 NO_RESOURCES,并带有标准次要代码 1。

注:对于 DSI/DII 调用参数是可用的。

抛出:
NO_RESOURCES - 如果参数不可用。
另请参见:
PortableInterceptor 包中关于限制/未实现特性的注释

exceptions

TypeCode[] exceptions()
返回一个 TypeCode 对象数组,这些对象描述此操作调用可能抛出的用户异常的 TypeCode。如果没有用户异常,则此方法返回一个长度为 0 的数组。

并非所有环境都提供对异常列表的访问。例如,使用 Java 可移植绑定时异常列表将不可用。在这些环境中访问此属性时,将抛出 NO_RESOURCES,并带有标准次要代码 1。

注:异常对于 DSI/DII 调用是可用的。

抛出:
NO_RESOURCES - 如果异常不可用。
另请参见:
PortableInterceptor 包中关于限制/未实现特性的注释

contexts

String[] contexts()
返回一个 String 对象数组,这些对象描述可以在此操作调用上传递的上下文。如果没有上下文,则此方法返回一个长度为 0 的数组。

并非所有环境都提供对上下文列表的访问。例如,使用 Java 可移植绑定时上下文列表将不可用。在这些环境中访问此属性时,将抛出 NO_RESOURCES,并带有标准次要代码 1。

注:上下文对于 DSI/DII 调用是可用的。

抛出:
NO_RESOURCES - 如果上下文不可用。
另请参见:
PortableInterceptor 包中关于限制/未实现特性的注释

operation_context

String[] operation_context()
返回一个 String 对象数组,这些对象包含将在请求上发送上下文。

并非所有环境都提供对上下文的访问。例如,使用 Java 可移植绑定时上下文将不可用。在这些环境中访问此属性时,将抛出 NO_RESOURCES,并带有标准次代码 1。

注:operation_context 对于 DSI/DII 调用是可用的。

抛出:
NO_RESOURCES - 如果操作上下文不可用。
另请参见:
PortableInterceptor 包中关于限制/未实现特性的注释

result

Any result()
返回一个 any,它包含该操作调用的结果。如果操作返回类型为空,则此属性将是包含 TCKind 值为 tk_void 的类型代码的 any,并且该 any 不包含任何值。

并非所有环境都提供对结果的访问。例如,使用 Java 可移植绑定时结果将不可用。在这些环境中访问此属性时,将抛出 NO_RESOURCES,并带有标准次要代码 1。

注:结果对于 DSI/DII 调用是可用的。

抛出:
NO_RESOURCES - 如果结果不可用。
另请参见:
PortableInterceptor 包中关于限制/未实现特性的注释

response_expected

boolean response_expected()
指示是否希望响应。

对于客户端,当 response_expected 为 false 时不返回应答,因此不能调用 receive_reply。不发生异常时调用 receive_other,发生异常时调用 receive_exception

此属性在客户端 send_poll 内部为 true。


sync_scope

short sync_scope()
定义在控制信息返回到客户端前请求应前进的距离。这已在 Messaging 规范中定义,仅当 response_expected 为 false 时才相关。如果 response_expected 为 true,则 sync_scope 的值是不确定的。此属性可以是以下值之一:
  • Messaging.SYNC_NONE
  • Messaging.SYNC_WITH_TRANSPORT
  • Messaging.SYNC_WITH_SERVER
  • Messaging.SYNC_WITH_TARGET
对于服务器所有的域而言,将从目标操作调用的返回中创建应答,但不会将该应答返回给客户端。尽管它不会返回给客户端,但确实发生了应答,因此将执行正常服务器端截取点(即 receive_request_service_contextsreceive_requestsend_replysend_exception)。

对于 SYNC_WITH_SERVERSYNC_WITH_TARGET,在调用目标前,服务器将一个空应答发送回客户端。此应答将不会被服务器端的 Interceptor 截取。

另请参见:
PortableInterceptor 包中关于限制/未实现特性的注释

reply_status

short reply_status()
描述操作调用结果的状态。返回值可以是以下值之一:
  • PortableInterceptor.SUCCESSFUL
  • PortableInterceptor.SYSTEM_EXCEPTION
  • PortableInterceptor.USER_EXCEPTION
  • PortableInterceptor.LOCATION_FORWARD
  • PortableInterceptor.TRANSPORT_RETRY
对于客户端:
  • receive_reply 截取点内,此方法仅返回 SUCCESSFUL
  • .
  • receive_exception 截取点内,此方法将返回 SYSTEM_EXCEPTIONUSER_EXCEPTION
  • receive_other 截取点内,此方法将返回以下任意值:SUCCESSFULLOCATION_FORWARDTRANSPORT_RETRYSUCCESSFUL 表示成功返回了异步请求。LOCATION_FORWARD 表示返回了应答,并以 LOCATION_FORWARD 作为其状态。TRANSPORT_RETRY 表示传送机制指示重试 - 例如,带有 NEEDS_ADDRESSING_MODE 状态的 GIOP 应答。
对于服务器:
  • send_reply 截取点内,此方法仅返回 SUCCESSFUL
  • send_exception 截取点内,此方法将返回 SYSTEM_EXCEPTIONUSER_EXCEPTION
  • send_other 截取点内,此属性将是以下任意值:SUCCESSFULLOCATION_FORWARDSUCCESSFUL 表示成功返回了异步请求。LOCATION_FORWARD 表示返回了应答,并以 LOCATION_FORWARD 作为其状态。

另请参见:
SUCCESSFUL, SYSTEM_EXCEPTION, USER_EXCEPTION, LOCATION_FORWARD, TRANSPORT_RETRY

forward_reference

Object forward_reference()
如果 reply_status 属性为 LOCATION_FORWARD,则包含要将请求转发到的对象。转发的请求是否将实际发生是不确定的。


get_slot

Any get_slot(int id)
             throws InvalidSlot
返回请求域内 PortableInterceptor.Current 给定槽 (slot) 中的数据。

如果尚未设置给定槽,则返回一个包含 TCKind 值为 tk_null 的类型代码的 any。

参数:
id - 将返回的槽的 SlotId
返回:
使用给定标识符获取的槽数据,以 any 的形式存在。
抛出:
InvalidSlot - 如果 ID 定义的不是已分配的槽,则抛出此异常。
另请参见:
Current

get_request_service_context

ServiceContext get_request_service_context(int id)
返回具有给定 ID 的与请求关联的服务上下文复本。

参数:
id - 将返回的服务上下文的 IOP.ServiceId
返回:
通过给定标识符获取的 IOP.ServiceContext
抛出:
BAD_PARAM - 如果请求的服务上下文不包含对应于该 ID 的条目,则抛出此异常,并带有标准次代码 26。

get_reply_service_context

ServiceContext get_reply_service_context(int id)
返回具有给定 ID 的与应答关联的服务上下文复本。

参数:
id - 将返回的服务上下文的 IOP.ServiceId
返回:
具有给定标识符的 IOP.ServiceContext
抛出:
BAD_PARAM - 如果请求的服务上下文不包含对应于该 ID 的条目,则抛出此异常,并带有标准次要代码 26。

JavaTM 2 Platform
Standard Ed. 5.0

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java 2 SDK SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策