I’m not sure what the example is supposed to produce, but I got two MenuBar
entries if the XMLList looked like this:
<fx:Declarations>
<fx:XMLList id="menuDataXMLList">
<menuitem label="configFiles" id="configfiles">
<menuitem label="pinaraProperties" id="pinaraProperties"/>
</menuitem>
<menuitem label="management" id="admin">
<menuitem label="suspendApp" id="suspendApp"/>
</menuitem>
</fx:XMLList>
</fx:Declarations>
And yes, there is a caught exception, but that is expected when parsing
XMLLists.
HTH,
-Alex
From: Greg Dove <[email protected]>
Reply-To: "[email protected]" <[email protected]>
Date: Tuesday, April 28, 2020 at 9:33 PM
To: "[email protected]" <[email protected]>
Subject: Re: TypeError: Error #1088: The markup in the document following the
root element must be well-formed.
You might see this sort of error during first use of XML in some browsers via
the debug console. Royale's XML class uses some native parsing support in the
browser, but because different browsers report parsing errors in different
ways, an initial parsing test is done with a known error to prepare for
possible future errors from user code. That test is dones inside a try/catch
block, but for some reason it still gets passed to the console in certain
browsers even though it has no adverse affect on the running code. If this is
the cause of what you are seeing then you can safely ignore it (I can't be 100%
sure, but it sort of sounds like it might be that)
On Wed, Apr 29, 2020 at 4:26 PM serkan
<[email protected]<mailto:[email protected]>> wrote:
This error is thrown in only debugger not in console.
But this exception does not prevent the menu to be constructed.
I discovered that it is because of the inline xml which has no root element.
When i add root element the exception goes away.
But this time the menu is not constructed.
So I replaced the line
menuBarData.source = menuDataXMLList;
with the line
menuBarData.source = menuDataXMLList.children();
To make it work again.
I guess it should not be required to get the children of the xml for setting
the menu data.
Is there something to be fixed on XML parsing of menu component ?
Thanks,
Serkan
Source :
<?xml version="1.0" encoding="latin5" ?>
<s:Application
xmlns:fx="http://ns.adobe.com/mxml/2009"<https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fns.adobe.com%2Fmxml%2F2009&data=02%7C01%7Caharui%40adobe.com%7C6bb604a68484463fe02a08d7ebf687c4%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637237316381872534&sdata=0yK4Ze8AUWFa0yjJ%2BDuSO7ve7uF1AqQiIIViV%2FERNKw%3D&reserved=0>
xmlns:s="library://ns.apache.org/royale/spark<https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fns.apache.org%2Froyale%2Fspark&data=02%7C01%7Caharui%40adobe.com%7C6bb604a68484463fe02a08d7ebf687c4%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637237316381882521&sdata=FHnDoymfA7niH%2Bk07Uth1WEo%2BOvV%2BAdrPqCsQdCHRGQ%3D&reserved=0>"
xmlns:mx="library://ns.apache.org/royale/mx<https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fns.apache.org%2Froyale%2Fmx&data=02%7C01%7Caharui%40adobe.com%7C6bb604a68484463fe02a08d7ebf687c4%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637237316381882521&sdata=SHHi2daEa4U3xeLWTU1sVHVpm%2BprNxABYixiLmtZk0c%3D&reserved=0>"
height="288" width="179"
>
<fx:Script>
<![CDATA[
import mx.collections.XMLListCollection;
import mx.events.FlexEvent;
import mx.collections.XMLListCollection;
import mx.events.MenuEvent;
import mx.controls.Menu;
[Bindable]
public var menuBarData:XMLListCollection = new XMLListCollection();
protected function
pinaraMenuBar_creationCompleteHandler(event:FlexEvent):void
{
var tmpXmlList:XMLListCollection = new XMLListCollection();
menuBarData.source = menuDataXMLList;
menuBarData.refresh();
}
protected function
tlosMenuBar_itemClickHandler(event:MenuEvent):void {
}
]]>
</fx:Script>
<fx:Declarations>
<fx:XMLList id="menuDataXMLList">
<menuroot>
<menuitem label="configFiles" id="configfiles">
<menuitem label="pinaraProperties" id="pinaraProperties"/>
</menuitem>
<menuitem label="management" id="admin">
<menuitem label="suspendApp" id="suspendApp"/>
</menuitem>
</menuroot>
</fx:XMLList>
</fx:Declarations>
<mx:MenuBar id="pinaraMenuBar" width="100%" color="#0D173C"
dataProvider="{menuBarData}" fontFamily="Arial"
fontWeight="bold" horizontalCenter="0"
itemClick="tlosMenuBar_itemClickHandler(event)"
labelField="@label"
creationComplete="pinaraMenuBar_creationCompleteHandler(event)"/>
</s:Application>