java - flex 何时抛出 NetConnection.Call.Badversion 错误

标签 java apache-flex weborb

我使用 Flex 作为客户端,使用 Java 作为服务器。在远程主机中使用 WebOrb。有时我会收到此错误。

faultCode:Client.Error.MessageSend
faultString:'Send failed'
faultDetail:'Channel.Connect.Failed error NetConnection.Call.BadVersion: :
url: 'http://foo.com:5480/bar/weborb.wo''

我不知道为什么会这样。我用谷歌搜索并没有找到答案。 如果我在故障处理程序中处理它,一切都会正常工作。但我想知道为什么会这样。我应该怎样做才能避免这个错误。

任何帮助将不胜感激。

感谢您的回复..

这是我的抽象代码

public class FOOProxy implements IFOOProxy
{
    public static var FOO_PROXY:IFOOProxy;
    private var remote:RemoteObject;        

    public function FOOProxy()
    {

    }

    public function runCommand(request:IClientRequest):void
    {

        remote.addEventListener("result", onResult);
        remote.addEventListener("fault", onFault);          

      if(request is GeneralRequest)
        {
            var req:Request = request as CmdRequest ;
             if (req.requestType == fooController.UPDATE_REQUEST)
             {
                remote.requestTimeout=null;
             }else
             {
                remote.requestTimeout = 30;
             }                  
         }      
        remote.runCommand(request);

    }

    public function onResult(event:ResultEvent):void {
        var result:Object = (event as ResultEvent).result as Object ;
        /*
        Updating my result using callback.
        */
        CursorManager.removeBusyCursor();
    }

    public function onFault(event:FaultEvent):void {
        if(event.fault.faultCode=="Client.Error.MessageSend")
        {
            //This is where "NetConnection.call.badversion occurs"
        }

        else if(event.fault.faultCode=="Server Exception")
        // Server Exception Handling
        {               
                //Dispatch Something
        }           

    }



    public static function createProxy(callback:ICallback):IFOOProxy {
        if (FOO_PROXY != null) {
            FOO_PROXY.setCallback(callback);
            return FOO_PROXY;        
        }
        var iProxy:IFOOProxy = new FOOProxy();
        var proxy:FOOProxy = iProxy as FOOProxy; 
      //setting my callback here to update
        proxy.remote = new RemoteObject();
        proxy.remote.destination = "Rpc";           
        return proxy;
    }

}

这是它与服务器连接的地方:目标 id“Rpc”

我使用 https,端口号 5480 并使用 secure-amf 作为远程 -config.xml 中的 channel

提前致谢。

最佳答案

您是否使用“https”uri 并使用 AMFChannel 而不是 SecureAMFChannel 构建远程对象的 channel 集?

这种一般性错误可能意味着任何事情,并且更可能与 IIS 的出色性能有关。虽然问题可能与您调用远程操作的方式有关...

如果您已将远程服务抽象为一个神奇的类,请发布一些代码,我可能会给您一些建议......或者我可能不会......'onsait jamais'

很快就和你谈谈, 杰里米

关于java - flex 何时抛出 NetConnection.Call.Badversion 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4153836/

相关文章:

java - 正则表达式\w字符类和等号

java - 引用上述代码,预期结果为 ="ECTSTRI"但实际结果为 ="ECTTRI"

java - Adobe Flex 移动后台进程

php - Flex 与 PHP 通信的最佳方法?

java方法中的逻辑问题

java - 在 Java 中从字节/整数创建字符串

apache-flex - 在 Flex 中将字符串模式解析为日期

apache-flex - 有没有办法向 Flex Air 应用程序添加详细的远程崩溃报告?

apache-flex - WebORB for Java 还是 BlazeDS?