| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Dec 2008
Beiträge: 114
| XML mit HTTPService auslesen
Hallo, ich bins wieder ![]() Ich habe eine Komponente geschrieben die über HTTPService eine php datei anspricht die XML zurückgibt. Komponente Code:
<?xml version="1.0"?>
<fs:XP_newsWnd title="News" height="375" click="getNewsHTTPService.send();"
paddingTop="10" paddingLeft="10" paddingRight="10" paddingBottom="10"
visible="true" xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:fs="*" borderColor="#4EC4F0" backgroundColor="#8CDEEA">
<mx:TabNavigator id="tn" width="100%" height="100%">
<mx:VBox label="News">
<mx:Label text="TabNavigator container panel 1"/>
</mx:VBox>
<mx:Canvas label="Search" width="100%" height="100%" id="canvas1">
</mx:Canvas>
</mx:TabNavigator>
<mx:HTTPService id="getNewsHTTPService"
result="getNews(event)"
method="POST"
url="http://localhost/xp/getNews.php"
useProxy="false">
</mx:HTTPService>
</fs:XP_newsWnd> xml das durch die php datei erzeugt wird Code: <allNews> <news author="admin" subject="Release 0.2.5 in a few Days" content="Ich bin Blindtext. Von Geburt an." date="2008-12-22 17:06:37"></news> <news author="admin" subject="Download Release 0.2.5 NOW" content="Achtung! Dieser Blindtext" date="2008-12-22 17:07:37"></news> </allNews> Code: public function getNews(event:ResultEvent):void{
var xmlMap:XMLDocument = new XMLDocument();
xmlMap.ignoreWhite = true;
xmlMap.parseXML(event.target.data);
for(var i:Number = 0; i < xmlMap.firstChild.childNodes.length; i++) {
trace(1);
}
} Und nun zu meinem Problem... Ich habe um erstmal zu testen ob das auslesen klappt durch ein klick event auf die komponente getNewsHTTPService.send() aufgerufen und bekam erst die Meldung das die XML Syntax nicht korrekt wäre weil nicht geschlossen. Was auch korrekt war, ich hatte die </news> vergessen. Das habe ich gefixt und bekam darauf folgenden Fehlermeldung aus der ich nicht schlau werde: Code: ReferenceError: Error #1069: Eigenschaft data für mx.rpc.http.mxml.HTTPService nicht gefunden und es ist kein Standardwert vorhanden. at XP_newsWnd/getNews()[C:\Users\Sythus\Documents\Flex Builder 3\XpirewavePublisher\src\XP_newsWnd.as:18] at fs.comp.subcomp::xp_newsWnd/__getNewsHTTPService_result()[C:\Users\Sythus\Documents\Flex Builder 3\XpirewavePublisher\src\fs\comp\subcomp\xp_newsWnd.mxml:26] at flash.events::EventDispatcher/dispatchEventFunction() at flash.events::EventDispatcher/dispatchEvent() at mx.rpc.http.mxml::HTTPService/http://www.adobe.com/2006/flex/mx/internal::dispatchRpcEvent()[C:\autobuild\3.2.0\frameworks\projects\rpc\src\mx\rpc\http\mxml\HTTPService.as:290] at mx.rpc::AbstractInvoker/http://www.adobe.com/2006/flex/mx/internal::resultHandler()[C:\autobuild\3.2.0\frameworks\projects\rpc\src\mx\rpc\AbstractInvoker.as:193] at mx.rpc::Responder/result()[C:\autobuild\3.2.0\frameworks\projects\rpc\src\mx\rpc\Responder.as:43] at mx.rpc::AsyncRequest/acknowledge()[C:\autobuild\3.2.0\frameworks\projects\rpc\src\mx\rpc\AsyncRequest.as:74] at DirectHTTPMessageResponder/completeHandler()[C:\autobuild\3.2.0\frameworks\projects\rpc\src\mx\messaging\channels\DirectHTTPChannel.as:403] at flash.events::EventDispatcher/dispatchEventFunction() at flash.events::EventDispatcher/dispatchEvent() at flash.net::URLLoader/onComplete() Wo ist also mein Fehler? Was brauch ich statt event.target.data damit ich auf die kindknoten zugreifen kann? Freue mich über jede Hilfe... Viele Grüße |
| | |
| | #4 (permalink) |
| Neuer User Registriert seit: Dec 2008
Beiträge: 114
|
Danke für eure Antworten. Gnut ich weiß nicht wie du das meinst, getNews hat doch nur einen Parameter und das ist ein Resultevent, oder? Wo siehst du einen zweiten? Mr.Sanders, habe das nun mit event.result versucht, allerdings meckert er da direkt da result nur ein objekt ist. Auch toString() oder toLocaleString() brachte keinen Erfolg. Habe es dann noch mit event.result.data probiert - da sagt er mir allerdings Code: TypeError: Error #2007: Parameter source darf nicht 'null' sein. at XMLParser/startParse() at flash.xml::XMLDocument/parseXML() at XP_newsWnd/getNews()[C:\Users\Sythus\Documents\Flex Builder 3\XpirewavePublisher\src\XP_newsWnd.as:19] at fs.comp.subcomp::xp_newsWnd/__getNewsHTTPService_result()[C:\Users\Sythus\Documents\Flex Builder 3\XpirewavePublisher\src\fs\comp\subcomp\xp_newsWnd.mxml:35] at flash.events::EventDispatcher/dispatchEventFunction() at flash.events::EventDispatcher/dispatchEvent() at mx.rpc.http.mxml::HTTPService/http://www.adobe.com/2006/flex/mx/internal::dispatchRpcEvent()[C:\autobuild\3.2.0\frameworks\projects\rpc\src\mx\rpc\http\mxml\HTTPService.as:290] at mx.rpc::AbstractInvoker/http://www.adobe.com/2006/flex/mx/internal::resultHandler()[C:\autobuild\3.2.0\frameworks\projects\rpc\src\mx\rpc\AbstractInvoker.as:193] at mx.rpc::Responder/result()[C:\autobuild\3.2.0\frameworks\projects\rpc\src\mx\rpc\Responder.as:43] at mx.rpc::AsyncRequest/acknowledge()[C:\autobuild\3.2.0\frameworks\projects\rpc\src\mx\rpc\AsyncRequest.as:74] at DirectHTTPMessageResponder/completeHandler()[C:\autobuild\3.2.0\frameworks\projects\rpc\src\mx\messaging\channels\DirectHTTPChannel.as:403] at flash.events::EventDispatcher/dispatchEventFunction() at flash.events::EventDispatcher/dispatchEvent() at flash.net::URLLoader/onComplete() Hoffe jemand kann mir helfen. Ansonsten erstmal schöne Festtage euch allen |
| | |
| | #6 (permalink) |
| Neuer User Registriert seit: Nov 2004
Beiträge: 39
|
Hallo Sythus, gugst Du mal hier : http://blog.flexexamples.com/2007/09...vice-mxml-tag/ Ebenso schöne Feiertage :-) |
| | |
| | #7 (permalink) |
| Neuer User Registriert seit: Apr 2002 Ort: Vorm PC
Beiträge: 1.583
| Code: public function getNews(event:Event):void{
var httpserviceTmp:HTTPService;
httpserviceTmp = HTTPService(event.currentTarget);
//Daten liegen als XML in lastResult
trace(httpserviceTmp.lastResult.toString());
} |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |