因此,我正在使用PHP服務的新項目上使用flex 4.6(在更新到4.11之前)。有一個叫MarkerService.as自動生成的類,它包含以下內容:Flex動態更改服務器
protected override function preInitializeService():void
{
super.preInitializeService();
super._serviceControl.endpoint = "http://www.mydomain.gr/gateway.php";
}
但是我建立一個登錄系統動態變化中,用戶將連接服務器。所以我改變了上述:
public var targetServer:String="test1";
protected override function preInitializeService():void
{
super.preInitializeService();
super._serviceControl.endpoint = targetServer;
trace(targetServer+" started");
}
public function setTargetServer(s:String):void
{
targetServer=""+s;
super._serviceControl.endpoint = targetServer;
trace(s+" targeted");
}
然後調用登錄方法時調用MXML類我的setter。但是,似乎prInitializeService在執行開始時被調用,因此出現連接錯誤。我附上日誌從控制檯:
test1 started <--- when app is executed
test1 started <--- when login button is pressed and setter is called
http://www.mydomain.gr/gateway.php targeted
http://www.mydomain.gr/gateway.php started
Send failed
Channel.Connect.Failed error NetConnection.Call.Failed: HTTP: Failed: url: 'http:test1'
app:/test1
好像它是設置好的,舊test1的用於連接後不更新新的鏈接。有任何想法嗎?
我很想知道爲什麼'test1開始'出現兩次。這個類是否有> 1個實例? – ethrbunny
爲了從mxml中訪問setter,我創建了markerservice類的新對象 var m:services.markersservice.MarkersService = new services.markersservice.MarkersService; 完成後,第二個測試1開始出現 – leossmith
我想知道是否在一個實例中設置'mydomain.gr'值並在另一個實例中設置'channel.connect'。 – ethrbunny