WSE2.0 错误信息及解决方案
1.An error was discovered processing the <Security> header
解决:这个问题的原因竟然是client端的时间比service端的时间快,将client端的时间调整到和service端的时间同步就解决了
2.System.Web.Services.Protocols.SoapException: 服务器无法处理请求。---> System.InvalidOperationException: 无法生成临时类(result=1)。\nerror CS2001: 未能找到源文件“C:\\WINDOWS\\TEMP\\zyobqxbr.0.cs()
解决:
给C:\WINDOWS\Temp文件夹加“NETWORK SERVICE”帐户读写权限
建议先用EveryOne测试,看看是否因为权限,然后再尝试其他账户
这种方法我尝试了一下,可以解决问题,比赋予users的读写权限安全!具体如下:
不要对everyone授权,这样不安全~
查找这两个用户帐户之一:
如果计算机运行 Windows XP Professional 或 Windows 2000,则查找 computer\ASPNET。
如果计算机运行 Windows Server 2003,则查找 NETWORK SERVICE或IIS_WPG或IUSR_(机器名)账户用户。
3.Message Expired
原因:这是因为Service端的时间和Client端的时间不一致导致的(一般是客户端时间超前)
解决:目前尝试成功的方式是在Service端的Web.config中添加时间戳,并将值设置的大一些(单位为秒),如下:
<defaultTtlInSeconds>30000</defaultTtlInSeconds>
<timeToleranceInSeconds>30000</timeToleranceInSeconds>
4.Server unavailable, please try later
原因:Service端的Web.config配置文件有错误
解决:检查WSE配置节点是否正确,比如多个字幕或没有结束标识符,建议用WSE setting 工具来设置。