`javax.xml.rpc.holders` 是 JAX-RPC(Java API for XML-Based RPC)规范中的一个包
2026/6/10 16:13:50 网站建设 项目流程

javax.xml.rpc.holders是 JAX-RPC(Java API for XML-Based RPC)规范中的一个包,用于支持 Web Service 客户端在调用远程方法时处理IN/OUT 或 OUT 参数(即“持有者”参数,holder parameters)。由于 Java 是值传递(pass-by-value),无法直接通过方法参数返回多个值或修改原始参数,JAX-RPC 引入了Holder<T>类(如StringHolderIntegerHolderBooleanHolder等)作为包装器,使服务端能将输出值写入该 holder 实例,客户端随后可读取其value字段。

⚠️ 重要说明:

  • JAX-RPC 已被废弃(deprecated),自 Java EE 5(2006)起被JAX-WS(javax.xml.ws取代;
  • javax.xml.rpc.*包(包括holders不包含在标准 JDK 中,曾属于旧版 Java EE SDK 或第三方实现(如 Apache Axis 1.x、Sun JAX-RPC RI);
  • 现代 Java(Java 8+)及 Jakarta EE(如 Jakarta EE 9+)已完全移除 JAX-RPC,改用 JAX-WS(基于注解、@WebParam(mode=Mode.INOUT)等)或 RESTful 方案(如 JAX-RS)。

示例(JAX-RPC 风格,已过时):

StringHoldername=newStringHolder("Alice");IntegerHolderage=newIntegerHolder(30);service.updatePerson(name,age);// 服务端可能修改 name.value 和 age.valueSystem.out.println(name.value);// 可能变为 "Bob"System.out.println(age.value);// 可能变为 31

✅ 替代方案(推荐):使用 JAX-WS 的@WebParam(mode = WebParam.Mode.INOUT),或避免 OUT 参数,改用返回对象封装多值。
Package javax.xml.rpc.holders
Skip navigation links

Overview Package Class Use Tree Deprecated Index Help Prev Package Next Package Frames No Frames

Package javax.xml.rpc.holders
This package contains the standard Java Holder classes.

See: Description

Interface Summary Interface Description Holder The java.xml.rpc.holders.Holder interface represents the base interface for both standard and generated Holder classes. Class Summary Class Description BigDecimalHolder BigIntegerHolder BooleanHolder BooleanWrapperHolder ByteArrayHolder ByteHolder ByteWrapperHolder CalendarHolder DoubleHolder DoubleWrapperHolder FloatHolder FloatWrapperHolder IntegerWrapperHolder IntHolder LongHolder LongWrapperHolder ObjectHolder QNameHolder ShortHolder ShortWrapperHolder StringHolder

Package javax.xml.rpc.holders Description
This package contains the standard Java Holder classes.
Skip navigation links

Overview Package Class Use Tree Deprecated Index Help Prev Package Next Package Frames No Frames

Copyright © 1996-2017, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询