如何在 ActionScript 3 中将“Null”(姓氏!)传递给 SOAP Web 服务
技术问答
390 人阅读
|
0 人回复
|
2023-09-11
|
我们有一个姓 的员工Null。当姓氏被用作搜索词时,我们的员工将终止搜索应用程序(现在很常见)。收到的错误(谢谢 Fiddler!)是:+ J7 r& ]- `) E% ^- V
soapenv:Server.userException coldfusion.xml.rpc.CFCInvocationException: [coldfusion.runtime.MissingArgumentException : The SEARCHSTRING parameter to the getFacultyNames function is required but was not passed in.], T8 z- N0 n) Q6 P
可爱吧?
$ l& t% T6 c* w* b' H参数类型为string. V1 t- ~" b. c
我在用:# a; m m2 F6 @
WSDL (SOAP)
4 p) b0 M1 W! q: T; u5 wFlex 3.5' l- M2 @+ y# k, c2 b
ActionScript 3
, K1 d1 p; T3 UColdFusion 8请注意,从 ColdFusion 页面调用 Web 以服务为对象不会这个错误发生了。
& k: e) C2 L# ~ , U3 l% ]" h2 {
解决方案: ' v- @7 ^& {' ^" c; M5 N
问题可能是 Flex 的 SOAP 编码器。试试你的 Flex 扩展 应用程序SOAP 编码器并调试程序以查看如何处理空值。" a" r# s* m+ @, b8 x @: M
我的猜测是,它在做NaN(非数字)传输。这会在某个时候弄乱 SOAP 消息解组过程(最明显的是JBoss 5 服务器......)。记得扩展了 SOAP 编码器并对 NaN显式检查 的处理方法。 |
|
|
|
|
|