Flex/ActionScript を使用して読み取っている XML があります。XML をロードすると、Flash Builder でエラーが表示Error: Unknown Property: 'EventTitle'.
at mx.collections::ListCollectionView/http://www.adobe.com/2006/actionscript/flash/proxy::getProperty()[E:\dev\4.y\frameworks\projects\framework\src\mx\collections\ListCollectionView.as:870].
されます。
<Invite>
XML からその部分を削除すると、正常に読み込まれます。しかし、もう一度追加すると、エラーが発生します。以下は、XML の構造です。
<Invites>
<Invite>
<EventTitle>HelloWorld</EventTitle>
</Invite>
<Invite>
<EventTitle>HelloWorld2</EventTitle>
</Invite>
</Invites>
PHP を使用して XML を作成しています。
if ($_POST['method'] == "GET_INVITES") {
$sql = mysql_connect("localhost:8889", "---------------", "--------------");
if(!$sql) {
die('Could not connect:' . mysql_error());
}
mysql_select_db("Calendar", $sql);
$getInvitesQuery = mysql_query("SELECT * FROM `Invites` WHERE `To`='" . $_POST['userID'] . "'");
$result = "<Invites>";
$result .= "<Result>SUCCESS</Result>";
while($row = mysql_fetch_array($getInvitesQuery)){
$result .= "<Invite>";
$result .= "<FromID>" . $row['From'] . "</FromID>";
$result .= "<EventTitle>" . $row['Title'] . "</EventTitle>";
$result .= "<EventDay>" . $row['Day'] . "</EventDay>";
$result .= "<EventHour>" . $row['Hour'] . "</EventHour>";
$result .= "<EventMinute>" . $row['Minute'] . "</EventMinute>";
$result .= "</Invite>";
}
$result .= "</Invites>";
print($result);
}
Flex/ActionScript で HTTPService を使用して、XML を PHP ファイルからリストにロードしています。コードは次のとおりです。
<s:HTTPService id="getInvites" result="getInvitesResult(event)" method="POST" url="http://localhost/invite.php" useProxy="false">
<s:request xmlns="">
<method>GET_INVITES</method>
<userID>{my_id.text}</userID>
</s:request>
</s:HTTPService>
<s:List id="invites" x="5" y="295" width="310" change="rowSelected(event)">
<s:dataProvider>
<s:ArrayCollection source="{getInvites.lastResult.Invites.Invite.EventTitle}"/>
</s:dataProvider>
</s:List>
私は2〜3時間、解決策を見つけようと取り組んできました。どんな助けでも大歓迎です。
ありがとう、ジェイコブ