回答

收藏

如何在 ActionScript 3 中将“Null”(姓氏!)传递给 SOAP Web 服务

技术问答 技术问答 492 人阅读 | 0 人回复 | 2023-09-11

我们有一个姓 的员工Null。当姓氏被用作搜索词时,我们的员工将终止搜索应用程序(现在很常见)。收到的错误(谢谢 Fiddler!)是:( v# x9 @! d- F* Q8 k
       soapenv:Server.userException   coldfusion.xml.rpc.CFCInvocationException: [coldfusion.runtime.MissingArgumentException : The SEARCHSTRING parameter to the getFacultyNames function is required but was not passed in.]
    + O& e7 e8 R+ j, R
可爱吧?  K- M/ @+ ]  I( C
参数类型为string.
# c# {; d2 i" e2 V! Z& S# e% Q我在用:
3 T4 _  @: o" JWSDL (SOAP)
+ ^) E* J* P3 V# @; q2 BFlex 3.5+ C" L% m" v/ Y/ y- v- T' w
ActionScript 38 X9 a  l% `6 R1 {
ColdFusion 8
请注意,从 ColdFusion 页面调用 Web 以服务为对象不会这个错误发生了。0 @+ N2 Q$ T8 ]& d+ l
                                                               
  J! j( W( f& J! V2 B7 v, S    解决方案:                                                               
# X/ }( T! D! D4 H" q2 b                                                                问题可能是 Flex 的 SOAP 编码器。试试你的 Flex 扩展 应用程序SOAP 编码器并调试程序以查看如何处理空值。+ `' P6 t! q+ f# G
我的猜测是,它在做NaN(非数字)传输。这会在某个时候弄乱 SOAP 消息解组过程(最明显的是JBoss 5 服务器......)。记得扩展了 SOAP 编码器并对 NaN显式检查 的处理方法。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则