RE: [flexcoders] Re: Stack overflow
Look up XMLNode in the docs, you will understand why. Tracy Spratt, Lariat Services, development services available _ From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of markgoldin_2000 Sent: Monday, April 20, 2009 5:50 PM To: flexcoders@yahoogroups.com Subject: [flexcoders] Re: Stack overflow Well, this crashes too: public function objectToXML(obj:Object):XMLNode { var qName:QName = new QName(root); var xmlDocument:XMLDocument = new XMLDocument(); var simpleXMLEncoder:SimpleXMLEncoder = new SimpleXMLEncoder(xmlDocument); var xmlNode:XMLNode = simpleXMLEncoder.encodeValue(obj, qName, xmlDocument); return xmlNode; } --- In flexcod...@yahoogro mailto:flexcoders%40yahoogroups.com ups.com, Tracy Spratt tr...@... wrote: You are mixing up the XML implementation versions. XMLDocument and simpleDecoder are legacy AS2 classes, included in AS3 only for backwards compatibility. You cannot use them with XML() which is an e4x implementation. Tracy Spratt, Lariat Services, development services available _ From: flexcod...@yahoogro mailto:flexcoders%40yahoogroups.com ups.com [mailto:flexcod...@yahoogro mailto:flexcoders%40yahoogroups.com ups.com] On Behalf Of markgoldin_2000 Sent: Monday, April 20, 2009 4:21 PM To: flexcod...@yahoogro mailto:flexcoders%40yahoogroups.com ups.com Subject: [flexcoders] Stack overflow I am getting the following: Error: Error #1023: Stack overflow occurred. at flash.xml::XMLNode() at flash.xml::XMLDocument/createElement() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() In this function after the 4th line: public function objectToXML(obj:Object):XML { var qName:QName = new QName(root); var xmlDocument:XMLDocument = new XMLDocument(); var simpleXMLEncoder:SimpleXMLEncoder = new SimpleXMLEncoder(xmlDocument); var xmlNode:XMLNode = simpleXMLEncoder.encodeValue(obj, qName, xmlDocument); var xml:XML = new XML(xmlDocument.toString()); return xml; } Interesting that it works once, but second call to this function generates the error. Thanks for help.
RE: [flexcoders] Re: Stack overflow
QName and SimpleXMLEncoder are e4x also. Why are you using that old stuff anyway? Tracy Spratt, Lariat Services, development services available _ From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of markgoldin_2000 Sent: Monday, April 20, 2009 5:50 PM To: flexcoders@yahoogroups.com Subject: [flexcoders] Re: Stack overflow Well, this crashes too: public function objectToXML(obj:Object):XMLNode { var qName:QName = new QName(root); var xmlDocument:XMLDocument = new XMLDocument(); var simpleXMLEncoder:SimpleXMLEncoder = new SimpleXMLEncoder(xmlDocument); var xmlNode:XMLNode = simpleXMLEncoder.encodeValue(obj, qName, xmlDocument); return xmlNode; } --- In flexcod...@yahoogro mailto:flexcoders%40yahoogroups.com ups.com, Tracy Spratt tr...@... wrote: You are mixing up the XML implementation versions. XMLDocument and simpleDecoder are legacy AS2 classes, included in AS3 only for backwards compatibility. You cannot use them with XML() which is an e4x implementation. Tracy Spratt, Lariat Services, development services available _ From: flexcod...@yahoogro mailto:flexcoders%40yahoogroups.com ups.com [mailto:flexcod...@yahoogro mailto:flexcoders%40yahoogroups.com ups.com] On Behalf Of markgoldin_2000 Sent: Monday, April 20, 2009 4:21 PM To: flexcod...@yahoogro mailto:flexcoders%40yahoogroups.com ups.com Subject: [flexcoders] Stack overflow I am getting the following: Error: Error #1023: Stack overflow occurred. at flash.xml::XMLNode() at flash.xml::XMLDocument/createElement() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() In this function after the 4th line: public function objectToXML(obj:Object):XML { var qName:QName = new QName(root); var xmlDocument:XMLDocument = new XMLDocument(); var simpleXMLEncoder:SimpleXMLEncoder = new SimpleXMLEncoder(xmlDocument); var xmlNode:XMLNode = simpleXMLEncoder.encodeValue(obj, qName, xmlDocument); var xml:XML = new XML(xmlDocument.toString()); return xml; } Interesting that it works once, but second call to this function generates
RE: [flexcoders] Re: Stack overflow
Ok, but don't use the legacy classes, use the AS3 e4x classes. Tracy Spratt, Lariat Services, development services available _ From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of markgoldin_2000 Sent: Monday, April 20, 2009 6:08 PM To: flexcoders@yahoogroups.com Subject: [flexcoders] Re: Stack overflow I need to convert a AS object into an XML. --- In flexcod...@yahoogro mailto:flexcoders%40yahoogroups.com ups.com, Tracy Spratt tr...@... wrote: QName and SimpleXMLEncoder are e4x also. Why are you using that old stuff anyway? Tracy Spratt, Lariat Services, development services available _ From: flexcod...@yahoogro mailto:flexcoders%40yahoogroups.com ups.com [mailto:flexcod...@yahoogro mailto:flexcoders%40yahoogroups.com ups.com] On Behalf Of markgoldin_2000 Sent: Monday, April 20, 2009 5:50 PM To: flexcod...@yahoogro mailto:flexcoders%40yahoogroups.com ups.com Subject: [flexcoders] Re: Stack overflow Well, this crashes too: public function objectToXML(obj:Object):XMLNode { var qName:QName = new QName(root); var xmlDocument:XMLDocument = new XMLDocument(); var simpleXMLEncoder:SimpleXMLEncoder = new SimpleXMLEncoder(xmlDocument); var xmlNode:XMLNode = simpleXMLEncoder.encodeValue(obj, qName, xmlDocument); return xmlNode; } --- In flexcod...@yahoogro mailto:flexcoders%40yahoogroups.com ups.com, Tracy Spratt tracy@ wrote: You are mixing up the XML implementation versions. XMLDocument and simpleDecoder are legacy AS2 classes, included in AS3 only for backwards compatibility. You cannot use them with XML() which is an e4x implementation. Tracy Spratt, Lariat Services, development services available _ From: flexcod...@yahoogro mailto:flexcoders%40yahoogroups.com ups.com [mailto:flexcod...@yahoogro mailto:flexcoders%40yahoogroups.com ups.com] On Behalf Of markgoldin_2000 Sent: Monday, April 20, 2009 4:21 PM To: flexcod...@yahoogro mailto:flexcoders%40yahoogroups.com ups.com Subject: [flexcoders] Stack overflow I am getting the following: Error: Error #1023: Stack overflow occurred. at flash.xml::XMLNode() at flash.xml::XMLDocument/createElement() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at mx.rpc.xml::SimpleXMLEncoder/encodeValue() at
RE: [flexcoders] Re: Stack Overflow with circular managed associations.
Hi Thunder, I am not sure about the stack overflow though usually I dont recommend using lazy=false on both directions of a bi-directional relationship since it can end up sending the same data more than once to the client which results in inefficiency. It looks like you have a fairly complicated situation involving several types: LevelKeyAttributes, LevelRelatedAttributes, CubeItemVO, CubeContainerVO, and LevelVO. Unfortunately I cant quite tell exactly what is going on from the stack trace. Can you send the destination definition for your FDMS destinations? I want to see if I can reproduce this Also, you said this happens when you load the data. Are you actually trying to modify some property of an object or does it die right when the fill call is made? In terms of the null property value when you switch it to lazy=true, could you turn on the server Debug logging for the Message.* and DataService.* patterns (in services-config.xml, search for level= and make sure that attribute is set to Debug and you have pattern tags for Message.* and DataService.*). What you should be looking for is the fill/getItem call which returns the items which have the lazy=true property. There should be a referencedIds header in that message which should contain the id which the property is referencing. When we serialize objects which have any descendants that have lazy=true properties, we do not send the property value but instead pull out ids of any objects in those property values and send those in the header. If you dont see anything obviously wrong in the debug output, send it along to me and hopefully I can tell what is happening from that. Jeff From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On Behalf Of thunderstumpgesatwork Sent: Monday, September 25, 2006 8:20 AM To: flexcoders@yahoogroups.com Subject: [flexcoders] Re: Stack Overflow with circular managed associations. So, a little more info on the managed associations. If I have lazy=true on the one, I don't get the stack overflow, however the properties cannot be accessed. It is null. I would have expected the ItemPendingError and the property to be fetched, but it is just null. Anyone know anything about this happening? thanks, Thunder --- In [EMAIL PROTECTED]ups.com, thunderstumpgesatwork thunder.stumpges@... wrote: Hi guys, I think this may be a bug. I have some classes that have bi-directional managed associations. If both sides are declared lazy=false, I'm getting a stack overflow error in Flex when the results are returned. See the error output below. Any ideas? Shouldn't this work? thanks, Thunder Error: Error #1023: Stack overflow occurred. at mx.events::PropertyChangeEvent/clone()[C:\dev\GMC\sdk\frameworks\mx\events\PropertyChangeEvent.as:223] at mx.collections::ArrayList/mx.collections:ArrayList::itemUpdateHandler()[C:\dev\GMC\sdk\frameworks\mx\collections\ArrayList.as:548] at flash.events::EventDispatcher/flash.events:EventDispatcher::dispatchEventFunction() at flash.events::EventDispatcher/dispatchEvent() at com.company.config::LevelKeyAttributesVO/dispatchEvent()[C:\Flex\src\company\com\company\config\LevelKeyAttributesVO.as:0] at ()[C:\dev\enterprise_gmc\frameworks\mx\data\utils\Managed.as:412] at flash.events::EventDispatcher/flash.events:EventDispatcher::dispatchEventFunction() at flash.events::EventDispatcher/dispatchEvent() at mx.collections::ArrayList/mx.collections:ArrayList::itemUpdateHandler()[C:\dev\GMC\sdk\frameworks\mx\collections\ArrayList.as:551] at flash.events::EventDispatcher/flash.events:EventDispatcher::dispatchEventFunction() at flash.events::EventDispatcher/dispatchEvent() at com.company.config::LevelRelatedAttributesVO/dispatchEvent()[C:\Flex\src\company\com\company\config\LevelRelatedAttributesVO.as:0] at ()[C:\dev\enterprise_gmc\frameworks\mx\data\utils\Managed.as:412] at flash.events::EventDispatcher/flash.events:EventDispatcher::dispatchEventFunction() at flash.events::EventDispatcher/dispatchEvent() at com.company.config::CubeItemVO/dispatchEvent()[C:\Flex\src\company\com\company\config\CubeItemVO.as:0] at ()[C:\dev\enterprise_gmc\frameworks\mx\data\utils\Managed.as:412] at flash.events::EventDispatcher/flash.events:EventDispatcher::dispatchEventFunction() at flash.events::EventDispatcher/dispatchEvent() at com.company.config::CubeContainerVO/dispatchEvent()[C:\Flex\src\company\com\company\config\CubeContainerVO.as:0] at ()[C:\dev\enterprise_gmc\frameworks\mx\data\utils\Managed.as:412] at flash.events::EventDispatcher/flash.events:EventDispatcher::dispatchEventFunction() at flash.events::EventDispatcher/dispatchEvent() at mx.collections::ArrayList/mx.collections:ArrayList::itemUpdateHandler()[C:\dev\GMC\sdk\frameworks\mx\collections\ArrayList.as:551] at flash.events::EventDispatcher/flash.events:EventDispatcher::dispatchEventFunction() at flash.events::EventDispatcher/dispatchEvent() at