Java 对象如何在 SOAP Web 服务中传递
How Java objects are passed in SOAP web services
SOAP Web 服务可以独立于平台和语言。并且可以接受来自客户端的参数并可以将响应发送回客户端。例如 - 我可以将 city 作为字符串参数传递并返回 weather 信息作为响应。
但是,如果我必须传递一个 java 对象怎么办 - 比如 person 对象并取回他的信用评分。
(假设人对象具有姓名、年龄、ssn、地址等属性)
(地址本身可以是另一个 java 具有诸如街道、城市、邮编等属性的对象)
SOAP 服务能否立即接受该对象,或者需要在提取所有原始信息后传递 person 对象,并且此信息需要仅作为字符串或整数传递给服务 - 如(姓名,年龄, ssn、街道、城市、邮编)
Can the SOAP service accept the object right away or the person object
needs to be passed after extracting all the primitive information and
this information needs to be passed to the service as strings or ints
only ?
你需要知道以下几点:
(1) SOAP 是一种带有一些预定义 specifications/format(带有 header、body 等元素)的协议,用于跨两个不同应用程序(使用相同开发的应用程序)进行数据交换或不同的编程语言)。
(2) 当您使用 SOAP 服务时,您就是 SOAP 客户端。
(3) 当您为其他用户提供 exposed/provided SOAP 服务时,您就是 SOAP 服务提供者。
(4) SOAP 服务不直接使用 java object。相反,它们将被转换为 xml(称为封送处理),然后是 sent/received.
(5) 因此,当您调用 SOAP 服务提供者时,您的 person
java object 将被编组为 xml 格式并发送到 SOAP服务提供商。
(6) SOAP 服务提供商将收到 xml 并根据他们的平台转换为他们的表示(称为解组),即,它可以是 Java 或 .net 或任何其他。
(7) 处理请求后,SOAP 服务提供者将准备响应(Object/something 转换为xml)并发送给调用者。
(8) 为了使编组和解组变得容易(即,Java 到 XML 和 vice-versa 之间的转换),Java 中提供了多种工具比如JAXB , XMLBeans,等等
P.S.: 我刚才提到的消息格式是 xml(这是常见的)供您理解,但也可以是任何其他格式应用程序可以同意的格式。
您可以查看here了解更多详情。
SOAP Web 服务可以独立于平台和语言。并且可以接受来自客户端的参数并可以将响应发送回客户端。例如 - 我可以将 city 作为字符串参数传递并返回 weather 信息作为响应。
但是,如果我必须传递一个 java 对象怎么办 - 比如 person 对象并取回他的信用评分。
(假设人对象具有姓名、年龄、ssn、地址等属性)
(地址本身可以是另一个 java 具有诸如街道、城市、邮编等属性的对象)
SOAP 服务能否立即接受该对象,或者需要在提取所有原始信息后传递 person 对象,并且此信息需要仅作为字符串或整数传递给服务 - 如(姓名,年龄, ssn、街道、城市、邮编)
Can the SOAP service accept the object right away or the person object needs to be passed after extracting all the primitive information and this information needs to be passed to the service as strings or ints only ?
你需要知道以下几点:
(1) SOAP 是一种带有一些预定义 specifications/format(带有 header、body 等元素)的协议,用于跨两个不同应用程序(使用相同开发的应用程序)进行数据交换或不同的编程语言)。
(2) 当您使用 SOAP 服务时,您就是 SOAP 客户端。
(3) 当您为其他用户提供 exposed/provided SOAP 服务时,您就是 SOAP 服务提供者。
(4) SOAP 服务不直接使用 java object。相反,它们将被转换为 xml(称为封送处理),然后是 sent/received.
(5) 因此,当您调用 SOAP 服务提供者时,您的 person
java object 将被编组为 xml 格式并发送到 SOAP服务提供商。
(6) SOAP 服务提供商将收到 xml 并根据他们的平台转换为他们的表示(称为解组),即,它可以是 Java 或 .net 或任何其他。
(7) 处理请求后,SOAP 服务提供者将准备响应(Object/something 转换为xml)并发送给调用者。
(8) 为了使编组和解组变得容易(即,Java 到 XML 和 vice-versa 之间的转换),Java 中提供了多种工具比如JAXB , XMLBeans,等等
P.S.: 我刚才提到的消息格式是 xml(这是常见的)供您理解,但也可以是任何其他格式应用程序可以同意的格式。
您可以查看here了解更多详情。