61.4. 多部分消息
ServiceInterfaceStrategy 支持多部分 SOAP 信息。ServiceInterfaceStrategy 必须使用一个服务接口定义初始化,该定义会根据 JAX-WS 2.2 进行注解,并符合 Document Bare 风格的要求。目标方法必须满足以下条件,如 JAX-WS 规格:1。如果它具有大多数 在
/out 的非header参数或非header 参数中,则它必须具有最多的非header 参数,2)。如果它具有不得在
返回类型,则它必须具有最多的 /
或 out non-header 参数中的out
/
或非header 参数。out
ServiceInterfaceStrategy 应使用布尔值参数进行初始化,该参数指示映射策略应用到请求参数或响应参数。
ServiceInterfaceStrategy strat = new ServiceInterfaceStrategy(com.example.customerservice.multipart.MultiPartCustomerService.class, true); SoapJaxbDataFormat soapDataFormat = new SoapJaxbDataFormat("com.example.customerservice.multipart", strat);
61.4.1. 拥有者对象映射
JAX-WS 指定在 In/Out
和 Out
参数中使用 type-parameterized javax.xml.ws.Holder
对象。您可以直接使用参数化类型的实例。camel-soap DataFormat marshals Holder 值根据 Holder 值的类的 JAXB 映射。在 unmarshalled 响应中没有为 \ 'Holder
对象提供映射。