Zurück   Flashforum > Flash > ActionScript > ActionScript 3

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 12-01-2010, 15:53   #1 (permalink)
webbing...
 
Registriert seit: Jun 2002
Ort: Hockenheim
Beiträge: 421
TypeError: Error #1009: Der Zugriff... XML einbinden - AS3

Hi in die Runde,

ich möchte mit AS3 eine XML-Datei in meinen Film einlesen -
auf dass ich den darin enthaltenen Text verwenden kann.

Ich arbeite mit CS3.

Ich habe also auf Szene 1 erster Frame mein Script abgelegt:
Code:
// XML-Datei laden

var myLoader:URLLoader = new URLLoader();
var myURL = new URLRequest("test.xml");

myLoader.load(myURL);
myLoader.addEventListener(Event.COMPLETE, onLoadComplete);

var myXML:XML;


function onLoadComplete(evt : Event):void {
	myXML.ignoreWhitespace = true;
	
	myXML = new XML (evt.target.data);
	myXML.text = myXML.toXMLString();
	trace ("Ausgabe: "+myXML.text);
	
	}

Ich bekomme dauernd folgende Fehlermeldung - auch mit anderen Beispielen wie z.B. von Weschkalinies (Flash-Buch):

Code:
TypeError: Error #1009: Der Zugriff auf eine Eigenschaft oder eine Methode eines null-Objektverweises ist nicht möglich.
	at weltkarte_maerkte_2b_fla::MainTimeline/onLoadComplete()
	at flash.events::EventDispatcher/flash.events:EventDispatcher::dispatchEventFunction()
	at flash.events::EventDispatcher/dispatchEvent()
	at flash.net::URLLoader/flash.net:URLLoader::onComplete()
Bin ich voll auf dem Holzweg oder liegt das an den Klassen?
Dank Euch im Voraus!

Ciao
Spider
(Brett vorm Kopf...)
TinySpider ist offline   Mit Zitat antworten
Alt 12-01-2010, 16:10   #2 (permalink)
Certified dump
 
Registriert seit: Aug 2001
Beiträge: 969
2 x wird was geladen mit Fehler ?

onLoadComplete()
onComplete()

Ist da noch Restcode versteckt ?

Der Debugger sagt Dir sogar die Zeilennummer, wo es crasht...
__________________
_______
rudi66 ist offline   Mit Zitat antworten
Alt 12-01-2010, 16:12   #3 (permalink)
Certified dump
 
Registriert seit: Aug 2001
Beiträge: 969
Die Zeilen sollten auch vertauscht sein, manchmal wird was so schnell geladen,
dann kommt der Complete-Listener zu spät...

myLoader.load(myURL);
myLoader.addEventListener(Event.COMPLETE, onLoadComplete);
__________________
_______
rudi66 ist offline   Mit Zitat antworten
Alt 12-01-2010, 16:50   #4 (permalink)
Neuer User
 
Registriert seit: Feb 2009
Beiträge: 51
zeig mal deine XML.
spy15 ist offline   Mit Zitat antworten
Alt 12-01-2010, 16:50   #5 (permalink)
webbing...
 
Registriert seit: Jun 2002
Ort: Hockenheim
Beiträge: 421
Hey super! Danke für die schnelle Antwort!

das wars aber leider nicht.

onComplete() ist im ganzen Actionscript nicht zu finden... (die Suche sagt nein)

Zeilen vertauschen hat auch nichts gebracht. Ich versteh immer noch nicht wo die Fehlermeldung herkommt...

Das ist das einzige Actionscript in der ganzen Datei...

And er XML sollte es nicht liegen...
Die XML (test.xml):
Code:
<products>
	<item>
		<market>Washington</market>
		<productline id="1">Test1</productline>
		<productline id="2">Test2</productline>
		<productline id="3">Test3</productline>
		<productline id="4">Test4</productline>
		<productline id="5">Test5</productline>
		<productline id="6">Test6</productline>
		<productline id="7">Test7</productline>
	</item>
	<item>
		<market>Tokyo</market>
		<productline id="1">Test1</productline>
		<productline id="2">Test2</productline>
		<productline id="3">Test3</productline>
		<productline id="4">Test4</productline>
		<productline id="5">Test5</productline>
		<productline id="6">Test6</productline>
		<productline id="7">Test7</productline>
	</item>
</products>

Geändert von TinySpider (12-01-2010 um 16:55 Uhr)
TinySpider ist offline   Mit Zitat antworten
Alt 12-01-2010, 17:10   #6 (permalink)
Certified dump
 
Registriert seit: Aug 2001
Beiträge: 969
Was ist das denn, das ist doch frei erfunden und crasht...

myXML.text = myXML.toXMLString();
trace ("Ausgabe: "+myXML.text);
__________________
_______
rudi66 ist offline   Mit Zitat antworten
Alt 12-01-2010, 17:13   #7 (permalink)
Certified dump
 
Registriert seit: Aug 2001
Beiträge: 969
So z.B. ist es sauberer und läuft:

HTML-Code:
private function completeHandler(event:Event):void
		{
			var result:XML = XML((event.target as URLLoader).data);            
			
			var myXML:XMLDocument=new XMLDocument();
			myXML.ignoreWhite=true;
			myXML.parseXML(result.toXMLString());
			
			/*
			<data>
				<category id="1">
					<name><![CDATA[Aquaristik]]></name>
					<subitem id="9">sub 1-1</subitem>
					<subitem id="4">sub 2-1</subitem>
				</category>	
			*/
			
			var node:XMLNode=myXML.firstChild;
			var n:int=int(node.childNodes.length);
			
			for(var j:int=0;j<n;j++)
			{
				if (node.childNodes[j].nodeName=="category")
				{
__________________
_______
rudi66 ist offline   Mit Zitat antworten
Alt 13-01-2010, 10:09   #8 (permalink)
webbing...
 
Registriert seit: Jun 2002
Ort: Hockenheim
Beiträge: 421
Zitat:
Zitat von rudi66 Beitrag anzeigen
Was ist das denn, das ist doch frei erfunden und crasht...

myXML.text = myXML.toXMLString();
trace ("Ausgabe: "+myXML.text);

Jepp, da hast Du recht, sorry.
Laut Buch ist der Code an der Stelle:
Code:
myXML = new XML (evt.target.data);
myText.text = myXML.toXMLString();
Das ist aber NICHT der Grund warum er mir den Error auspuckt.
Und bei deinem Beispiel versteh ich nur jeden zweiten Ausdruck (Ich programmier eher selten..., und du Verwendest scheinbar eine Klassenfunktion). Ärgerlicherweise hab ich nur CS4 Bücher hier und ich schaffe mit CS3, kann also nicht in die fla-Dateien schauen... grml...
Ich wette ich hab einfach ein Problem mit den Klassen, die ich nicht importiert habe... werd wohl nicht drum rum kommen mir zusätzlich ein CS3 Buch zu kaufen...

Dank Dir trotzdem!
TinySpider ist offline   Mit Zitat antworten
Alt 13-01-2010, 10:22   #9 (permalink)
Certified dump
 
Registriert seit: Aug 2001
Beiträge: 969
Ansonsten einfach mal mit mit den Begriffen "load xml actionscript 3" googlen -
sollten dann ein paar Millionen brauchbare Beispiele kommen...
__________________
_______
rudi66 ist offline   Mit Zitat antworten
Alt 13-01-2010, 10:38   #10 (permalink)
webbing...
 
Registriert seit: Jun 2002
Ort: Hockenheim
Beiträge: 421
Ok, mit diesem Code bekomme ich keine Fehlermeldungen mehr:

Code:
var xmlString:URLRequest = new URLRequest("NAMEDEINERDATEI.xml");
var xmlLoader:URLLoader = new URLLoader(xmlString);
xmlLoader.addEventListener("complete", init);

function init(event:Event):void{
  var xDoc:XMLDocument = new XMLDocument();
  xDoc.ignoreWhite = true;
  var animalsXML:XML = XML(xmlLoader.data);
  xDoc.parseXML(animalsXML.toXMLString());
  trace(xDoc.firstChild.childNodes[0]);
}
Quelle:
Pixelfumes Flash Blog: Easy XML Parsing using AS3 (ActionScript 3)

Und bekomme mein erstes Item der XML-Datei in der Ausgabe.
Vielleicht hilfts anderen.
TinySpider ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
einbinden, error #1009, xml

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
TypeError: Error #1009: Der Zugriff auf eine Eigenschaft oder eine Methode eines null whiterabbit ActionScript 3 8 28-08-2009 16:17
TypeError: Error #1009: <anonymous>() thorben.schmitt ActionScript 3 5 19-06-2009 10:56
TypeError: Error #1009 headflash ActionScript 3 5 20-05-2009 15:43
TypeError: Error #1009 YuKoN183 ActionScript 3 9 05-08-2008 19:36
TypeError: Error #1009 beim einbinden einer swf Aemeath Flash Einsteiger 0 10-07-2008 16:35


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:37 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele