Java web服务调用程序的名称/标识

Java web服务调用程序的名称/标识,java,soap,xml-rpc,web-services,Java,Soap,Xml Rpc,Web Services,我有一个SOAP web服务,我使用axis2从两个客户端调用它。web服务能否知道调用来自这两个客户端中的哪一个?如果是,我如何在运行时知道这一点?是否提供了任何API来查找特定web服务的调用程序的名称。谢谢。一般来说,HTTP头文件有时包含一些信息,但这取决于客户端。确定调用方的最佳方法是在客户端和服务之间传递一些已知的上下文,例如ID。这可以在SOAP主体(作为服务的参数)、SOAP头或传输协议的一部分(例如使用HTTP会话cookie)中发送 根据上下文所在的位置,不同的行为是可能的—

我有一个SOAP web服务,我使用axis2从两个客户端调用它。web服务能否知道调用来自这两个客户端中的哪一个?如果是,我如何在运行时知道这一点?是否提供了任何API来查找特定web服务的调用程序的名称。谢谢。

一般来说,HTTP头文件有时包含一些信息,但这取决于客户端。确定调用方的最佳方法是在客户端和服务之间传递一些已知的上下文,例如ID。这可以在SOAP主体(作为服务的参数)、SOAP头或传输协议的一部分(例如使用HTTP会话cookie)中发送

根据上下文所在的位置,不同的行为是可能的——在SOAP主体中,这意味着您可以使用您的服务实现进行处理(可能运行DB查找或类似操作);在SOAP头中,意味着您可以向所有需要上下文的服务添加头处理程序,并正确设置服务调用;在传输协议中,这意味着上下文与SOAP消息分离,可以使用传输处理程序关联上下文