我已经阅读了一些关于soap处理程序的教程,其中一些只使用处理程序链,但其中一些使用了@resource注释和处理程序链xml。如果需要使用@resource,我很困惑。如果是,为什么我需要使用它?
答案 0 :(得分:0)
@Resource
注释标记应用程序所需的资源。此批注可以应用于应用程序组件类,或应用于组件类的字段或方法。当注释应用于字段或方法时,容器将在初始化组件时将所请求资源的实例注入应用程序组件。如果注释应用于组件类,则注释将声明应用程序将在运行时查找的资源。
使用WebServiceContext
注释注入的@Resource
对象包装了包含MessageContext
的SOAPMessage
,还包含有关带有SOAPMessage
的HTTP连接的各种信息。 {3}}。然后,只要服务请求到达,Web容器就会初始化WebServiceContext
引用。这允许Web方法访问承载请求的HTTP请求中的HTTP头,以及SOAPMessageContext
,SOAP头和SOAPMessage
。
为什么在一个案例中使用@Resource
注释而在其他情况下不是?因为在一种情况下,可以从这些类的对象(SOAPMessageContext
,SOAPMessage
等)中检索所有必要的信息,并且这些对象可通过实现LogicalHandler
接口或SOAPMessageContext
接口获得。在其他情况下,可以直接从注入的WebServiceContext
中检索所有必要的信息。
另见: