Soap Wildfly 10 JAX-WS附件:MTOM阈值未按预期工作(?)

Soap Wildfly 10 JAX-WS附件:MTOM阈值未按预期工作(?),soap,cxf,jax-ws,wildfly-10,mtom,Soap,Cxf,Jax Ws,Wildfly 10,Mtom,我使用@MTOM注释定义了JAX-WS端点,并将阈值设置如下。因此,我希望任何小于5MB的附件都将作为base64binary内联发送。但即使是小文件,soap响应也总是以MTOM的形式返回 这是预期的行为吗?否则,我如何加强这种灵活性 @HandlerChain(file="/handler-chain.xml") @MTOM(threshold=5242880) // 5MB limit for inline soap attachements else MTOM public class

我使用
@MTOM
注释定义了JAX-WS端点,并将阈值设置如下。因此,我希望任何小于5MB的附件都将作为
base64binary
内联发送。但即使是小文件,soap响应也总是以
MTOM
的形式返回

这是预期的行为吗?否则,我如何加强这种灵活性

@HandlerChain(file="/handler-chain.xml")
@MTOM(threshold=5242880) // 5MB limit for inline soap attachements else MTOM
public class WSImpl {

我对这个很感兴趣。这不是规范,但至少在JBoss5中,
Metro
实现的行为与之类似(至少是旧版本)。如果启用,Apache CXF始终作为
MTOM
发送,并且不关心阈值。

MTOM仅应用于SOAP消息中定义为
xs:base64Binary
的base64编码元素。这是您的用例还是希望SOAP附件编码为base64binary?因为第二种行为不是规范的目标,所以元素被定义为
xs:base64Binary
,并且
MTOM
在服务器端被启用。我对书中提到的确切行为很感兴趣。它说根据阈值,
xs:base64Binary
作为附件或内联soap发送。然后规范就清楚了。它应该像你说的那样起作用。也许这是一个狂野的错误。您知道您的服务器现在包含的CXF的底层版本吗?可能是这个bug与此相关,我已经查看了CXF的github存储库,并管理了threshold参数。我已经查看了错误列表,但是没有任何错误,所以可能是未检测到的错误。我建议联系CXF团队