So I dived into AS3 and decided to create an XML Loader class.
package
{
import flash.events.Event;
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.xml.*;
import flash.events.IOErrorEvent;
public class XMLLoader {
public var myXML:XML;
private var loader:URLLoader;
public function XMLLoader(dataPath)
{
var request:URLRequest = new URLRequest(dataPath);
loader = new URLLoader();
try
{
loader.load(request);
}
catch (error:SecurityError)
{
trace("A SecurityError has occurred.");
}
loader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);
loader.addEventListener(Event.COMPLETE, loaderComplete);
}
private function loaderComplete(event:Event):void
{
try
{
myXML = new XML(loader.data);
//trace(myXML);
}
catch (e:TypeError)
{
trace("Could not parse the XML file.");
}
}
private function errorHandler(e:IOErrorEvent):void
{
trace("Had problem loading the XML File.");
}
}
}
When I run the trace statement from within the class the XML returns fine.
In Flash I instantiate the XMLLoader class and try to trace a property of the object…
// XML filepath
var myXMLPath = "q_sets/";
// Instanciate set list object
var mySetList:XMLLoader = new XMLLoader(myXMLPath + "qset_admin.xml");
trace(mySetList.myXML.descendants("qset_0").toXMLString());
When I test this I receive the error below:
TypeError: Error #1009: Cannot access a property or method of a null object reference.
at cs_quiz_fla::MainTimeline/frame1()
Anyone have any ideas what might be happening?
Thanks in advance for any help with this one.