我正在尝试通过动作脚本连接到网络服务,但我收到错误:
TypeError:错误#1009:无法访问空对象引用的属性或方法。 在wsdlMain()
package {
import flash.display.*;
import flash.events.*;
import flash.net.*;
//webservices wsdl
import mx.rpc.soap.*;
import mx.core.*;
import mx.rpc.events.*;
public class wsdlMain extends MovieClip
{
public var myWebService:WebService;
public var rutaWebService:String;
public var element:Operation;
public function wsdlMain()
{
myWebService.addEventListener("LOAD", loadDone);
cargarWSDL();
}
public function cargarWSDL (){
var myWebService = new WebService();
myWebService.loadWSDL("http://localhost:8080/myTurn/servlet/sequencegenerator?wsdl");
}
public function loadDone(evt:LoadEvent)
{
trace ("holaaaa222");
element = Operation(myWebService.getOperation("Execute"));
element.addEventListener("fault", wsError);
element.addEventListener("result", wsResult);
element.send(1);
}
public function wsError(evt:FaultEvent)
{
trace ("chau");
}
public function wsResult(evt:ResultEvent)
{
trace ("hola");
var xml:XML = XML(evt.result);
trace(xml.toXMLString());
}
}
}
非常感谢任何方向!!!
答案 0 :(得分:1)
您尝试在myWebService存在之前添加事件侦听器。调用cargarWSDL(); 之前添加事件监听器。
此外,在函数cargarWSDL()中,您再次声明myWebService (它已经被声明为类变量),更糟糕的是,您将其声明为 local < / em>变量只在函数内部可见,因此从“var myWebService = new WebService();”中删除“var”。