- java.lang.Object
-
- javax.xml.ws.spi.Invoker
-
public abstract class Invoker extends Object
Invoker隐藏了调用应用程序端点实现的细节。 容器将Invoker实现到JAX-WS运行时,jax-ws运行时调用invoke(java.lang.reflect.Method, java.lang.Object...)
用于Web服务调用。 最后,Invoker在端点实例上实际调用Web服务。 容器还注入提供的WebServiceContext
并且在端点实现上负责调用javax.annotation.PostConstruct
方法(如果存在)。- 从以下版本开始:
- 1.7,JAX-WS 2.2
- 另请参见:
-
Provider.createEndpoint(String, Class, Invoker, WebServiceFeature...)
-
-
方法详细信息
-
inject
public abstract void inject(WebServiceContext webServiceContext) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException
JAX-WS运行时调用此方法来请求容器在端点实例上注入WebServiceContext。WebServiceContext
对象使用线程本地信息在实际端点调用期间返回正确的信息,而不管同时使用多少线程来提供请求。- 参数
-
webServiceContext
- MessageContext的持有人 - 异常
-
IllegalAccessException
- 如果反射API完成的注入会抛出此异常 -
IllegalArgumentException
- 如果反射API完成的注入会抛出此异常 -
InvocationTargetException
- 如果由反射API完成的注入会抛出此异常
-
invoke
public abstract Object invoke(方法 m, Object... args) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException
JAX-WS运行时调用此方法来对端点实例执行实际的Web服务调用。 注入WebServiceContext.getMessageContext()
给出了这个调用的正确信息。- 参数
-
m
- 在服务上调用的方法 -
args
- 方法参数 - 结果
- 返回值的方法
- 异常
-
IllegalAccessException
- 如果反射API完成的调用抛出此异常 -
IllegalArgumentException
- 如果由反射API完成的调用抛出此异常 -
InvocationTargetException
- 如果由反射API完成的调用抛出此异常 - 另请参见:
-
Method.invoke(java.lang.Object, java.lang.Object...)
-
-