2010-01-20 62 views
1

我是想帮一个同事跑SOATest(Web服务客户端,使测试SOAP服务易)在WCF Web服务操作,而对于“大”的反应,我们看到了这个错误:SOAP消息大小大于允许的限制[SECURITY.MSGSIZE v 1.0]?怎么样?

SOAP Message size it greater than allowed limit [SECURITY.MSGSIZE v 1.0] 

这很令人困惑,因为该工具实际上能够从不包含SOAP错误的服务器获得响应。此外,答案并不是很大 - 准确的说是22kb。我似乎无法谷歌这个错误信息,并在其中的语法/拼写错误也没有为我的利益工作。

这是SOATest设置吗?也许一个WCF设置?还是WS-Security设置?这当然不是我们在服务器级别施加的限制。

这是后代的screenshot

+0

哈哈哈,SOAtest ..如果你是荷兰人,那真的很有趣。 – thomaspaulb 2010-01-20 21:29:32

+0

啊,是的,它是:) http://translate.google.com/#nl|en|soa%20test – 2010-01-20 21:31:12

回答

0

我们能够在SOATest forums上得到这个错误的答案。

SECURITY.MSGSIZE是可添加到响应中的默认SOAP策略规则检查之一。这是特定规则的screenshot,因为它正在被应用。这种特殊的规则位于:

C:\Program Files\Parasoft\SOAtest\5.5.3\rules\SOAP\SECURITY.MSGSIZE.rule 

如果打开位于默认策略配置包:

C:\Program Files\Parasoft\SOAtest\5.5.3\rules\soa.policy 

然后你可以禁用或如果右键修改SECURITY.MSGSIZE规则的价值点击SOAP->避免大的SOAP消息[SECURITY.MSGSIZE] - >编辑 - >方法:

def checkSize(value, context): 
    message = XMLUtil.serialize(value) 
    size = len(message) 
    if size > 10240: 
     return 1 
    else: 
     return 0 

size > 10240条件就是需要这种规则是可以改变的。或者,您可以取消选中它作为默认策略包的一部分,然后保存更改。