<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Axelology</title>
	
	<link>http://www.axelscript.com</link>
	<description>Axel Jensen on Flex, Coldfusion and... other stuff</description>
	<pubDate>Tue, 23 Jun 2009 20:13:30 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/Axelology" type="application/rss+xml" /><item>
		<title>Salesforce / Apex / Flex VisualForce integration</title>
		<link>http://feedproxy.google.com/~r/Axelology/~3/3m-R6yrQjEA/</link>
		<comments>http://www.axelscript.com/2009/06/08/salesforce-apex-flex-visualforce-integration/#comments</comments>
		<pubDate>Mon, 08 Jun 2009 06:20:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Actionscript]]></category>

		<category><![CDATA[Apex]]></category>

		<category><![CDATA[Flex]]></category>

		<category><![CDATA[Salesforce]]></category>

		<guid isPermaLink="false">http://www.axelscript.com/?p=327</guid>
		<description><![CDATA[This flex project will talk to salesforce, grab data, be able to save multiple records at the same time, edit and save single records at the same time, and will demonstrate some simple flex charting and data binding.  
This blog post got moved to adobe!!! boo yah!!
John wrote up, and used screen shots, and [...]]]></description>
			<content:encoded><![CDATA[<p>This flex project will talk to salesforce, grab data, be able to save multiple records at the same time, edit and save single records at the same time, and will demonstrate some simple flex charting and data binding.  </p>
<p><a href="http://www.adobe.com/devnet/salesforce/articles/ex_salesforce_account_demo.html" target="_blank">This blog post got moved to adobe!!! boo yah!!</a></p>
<p>John wrote up, and used screen shots, and outlined the application better than I did, but I built it, but he&#8217;s the one with the contacts at adobe that wanted the example apps of sfdc&#8230; glad I could be a part of it.</p>
<p>To view my running <a href="http://examples.axelscript.com/clients/modelMetrics/salesForceAccountDemo/SalesForceAccountDemo.html" target="_blank">application click here</a> to view the <a href="http://examples.axelscript.com/clients/modelMetrics/salesForceAccountDemo/srcview/index.html" target="_blank">source click here</a></p>
<h4>The Video</h4>
<p>(it takes a minute to load) <object width="640" height="498" data="http://examples.axelscript.com/clients/modelMetrics/salesForceAccountDemo/SalesForceAccountDemoVideo.swf" type="application/x-shockwave-flash"><param name="name" value="csSWF" /><param name="bgcolor" value="#1a1a1a" /><param name="flashvars" value="autostart=false" /><param name="src" value="http://examples.axelscript.com/clients/modelMetrics/salesForceAccountDemo/SalesForceAccountDemoVideo.swf" /></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.axelscript.com/2009/06/08/salesforce-apex-flex-visualforce-integration/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.axelscript.com/2009/06/08/salesforce-apex-flex-visualforce-integration/</feedburner:origLink></item>
		<item>
		<title>Saleforce / Flex example</title>
		<link>http://feedproxy.google.com/~r/Axelology/~3/6LABra37SkQ/</link>
		<comments>http://www.axelscript.com/2009/06/03/saleforce-flex-example/#comments</comments>
		<pubDate>Wed, 03 Jun 2009 21:08:18 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Actionscript]]></category>

		<category><![CDATA[Apex]]></category>

		<category><![CDATA[Flex]]></category>

		<category><![CDATA[Salesforce]]></category>

		<guid isPermaLink="false">http://www.axelscript.com/?p=321</guid>
		<description><![CDATA[This post is directed at people that know the salesforce.com platform, I&#8217;m not trying to get away from flex, but this post was actually part of my last assignment at work, and its directed at salesforce developers that don&#8217;t know flex.  
This blog post has been moved to ADOBE! boo yah!
John&#8217;s the one who [...]]]></description>
			<content:encoded><![CDATA[<p>This post is directed at people that know the salesforce.com platform, I&#8217;m not trying to get away from flex, but this post was actually part of my last assignment at work, and its directed at salesforce developers that don&#8217;t know flex.  </p>
<p><a href="http://www.adobe.com/devnet/salesforce/articles/ex_salesforce_opportunity_demo.html" target="_blank">This blog post has been moved to ADOBE! boo yah!</a></p>
<p>John&#8217;s the one who wrote the documentation and took the screen shots and got the deal with adobe to get the project and example put on adobe.com, so they wanted him to be the author.  </p>
<p>but here is the video</p>
<p>To view my running <a href="http://examples.axelscript.com/clients/modelMetrics/salesForceDemo/SalesForceDemo.html" target="_blank">application click here</a> to view the <a href="http://examples.axelscript.com/clients/modelMetrics/salesForceDemo/srcview/index.html" target="_blank">source click here</a></p>
<h4>The Video</h4>
<p>(it takes a minute to load) <object width="640" height="498" data="http://examples.axelscript.com/clients/modelMetrics/salesForceDemo/SalesForceDemoVideo.swf" type="application/x-shockwave-flash"><param name="name" value="csSWF" /><param name="bgcolor" value="#1a1a1a" /><param name="flashvars" value="autostart=false" /><param name="src" value="http://examples.axelscript.com/clients/modelMetrics/salesForceDemo/SalesForceDemoVideo.swf" /></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.axelscript.com/2009/06/03/saleforce-flex-example/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.axelscript.com/2009/06/03/saleforce-flex-example/</feedburner:origLink></item>
		<item>
		<title>htmlText Alertbox</title>
		<link>http://feedproxy.google.com/~r/Axelology/~3/UUweIwr4kJI/</link>
		<comments>http://www.axelscript.com/2009/05/01/htmltext-alertbox/#comments</comments>
		<pubDate>Fri, 01 May 2009 18:22:13 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[ACJEditor]]></category>

		<category><![CDATA[Flex]]></category>

		<category><![CDATA[Actionscript]]></category>

		<guid isPermaLink="false">http://www.axelscript.com/?p=315</guid>
		<description><![CDATA[Application - Source
We have a product right now that has a basic shopping cart in it&#8230; and one of the options is to save the cart and view it as a pdf&#8230; so we send the request to the server, and return a link back with a link to the pdf, and
 because we may [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.axelscript.com/wp-content/Examples/HTMLTextAlert/HTMLTextAlert.html" target="_blank">Application</a> - <a href="http://www.axelscript.com/wp-content/Examples/HTMLTextAlert/srcview/index.html" target="_blank">Source</a></p>
<p>We have a product right now that has a basic shopping cart in it&#8230; and one of the options is to save the cart and view it as a pdf&#8230; so we send the request to the server, and return a link back with a link to the pdf, and<br />
 because we may have many messages come back from this one service we just use a simple alert box to show the user the feedback and that the application has saved successfully&#8230; if we need to put a link in there, the user must copy and paste the link in order to use it&#8230; WELLL, the small challenge was to make that a clickable link, and in the least amount of time possible&#8230; (15 minutes, rather than 2 hours for styling and the component itself) (it actually took longer to write the blog post, and put up the example than it did to fix the issue)</p>
<p>I was asked to create a component that allows for htmlText to be added to it, and the component has to have all the functionality of an <a href="http://livedocs.adobe.com/flex/3/html/help.html?content=controls_19.html" target="_blank">Alert</a> box&#8230; so why not extend the alert box, and make something like a BaseAlert.as file that extends Alert&#8230; </p>
<p>because you still have to use Alert.show in your application to use it&#8230; so rather than going to all the work of creating a way to popup the popup from anywhere in the app, and making sure it dispatches CloseEvents like the original Alert box does, I did some digging and found a forum list that gave the greatest tip EVER!  I never really use mx_internal&#8230; frankly it confuses me a little bit&#8230; the syntax is a little wonkey to me&#8230; I&#8217;ve never used the whole &#8220;::&#8221; thing and don&#8217;t really understand what it does&#8230; someone care to explain?</p>
<p>anyway, I thought this persons simple code was absolutely great! </p>
<p><code> var a:Alert=Alert.show("dump text");<br />
            a.mx_internal::alertForm.mx_internal::textField.htmlText =<br />
some HTMl text goes here; </code></p>
<p>here is a link to the <a href="http://groups.google.com/group/flex_india/browse_thread/thread/08987ec9d7548175?pli=1" target="_blank">message post</a></p>
<p>They do neglect to mention that you have to import the internal namespace though, so in my example thats included.  This is a very quick and cheap solution to the problem and just provides a way to fancy up the alert box a little bit by adding the &#8220;limited&#8221; html text that the flash platform supports&#8230; maybe flash 10 will add better htmlText support&#8230;. I would assume so with all of the text changes to the platform&#8230; but I havent looked into it so don&#8217;t quote me&#8230;</p>
<p><a href="http://www.axelscript.com/wp-content/Examples/HTMLTextAlert/HTMLTextAlert.html" target="_blank">Application</a> - <a href="http://www.axelscript.com/wp-content/Examples/HTMLTextAlert/srcview/index.html" target="_blank">Source</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.axelscript.com/2009/05/01/htmltext-alertbox/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.axelscript.com/2009/05/01/htmltext-alertbox/</feedburner:origLink></item>
		<item>
		<title>Dynamic Tabs selectedIndex bug</title>
		<link>http://feedproxy.google.com/~r/Axelology/~3/tBEItbA8f5w/</link>
		<comments>http://www.axelscript.com/2009/04/27/dynamic-tabs-selectedindex-bug/#comments</comments>
		<pubDate>Mon, 27 Apr 2009 20:44:39 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Actionscript]]></category>

		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://www.axelscript.com/?p=313</guid>
		<description><![CDATA[Use the UIComponent commitProperties() to do your dynamic interface work... ]]></description>
			<content:encoded><![CDATA[<p><a href="http://axelscript.com/wp-content/Examples/DynamicTabs/DynamicTabs.html#" target="_blank">Application</a> - <a href="http://axelscript.com/wp-content/Examples/DynamicTabs/srcview/index.html" target="_blank">Source</a></p>
<p>When you have a project that requires a dynamic interface, and you are adding and removing tabs, lets say you need to reset the selectedIndex of the <a href="http://livedocs.adobe.com/flex/3/html/help.html?content=navigators_4.html" target="_blank">TabNavigator</a> back to 0, because you may be adding tabs that are not relevant to what you originally had on the screen&#8230; when you simply do a &#8220;tabNav.removeAllChildren()&#8221; on the TabNavigator, and change the selectedIndex in the same function, it just simply doesnt work&#8230; there is a bug for it&#8230; <a href="http://bugs.adobe.com/jira/browse/SDK-14157" target="_blank">http://bugs.adobe.com/jira/browse/SDK-14157</a></p>
<p>So the more elegant solution that also pays attention to the flex framework is by using commitProperties() when you use commitProperties it guarantees that things will be done after the initialization is done in the component, it also is guarantees things will only run once per frame I believe&#8230;  (don&#8217;t quote me on that, i&#8217;m just to lazy to look up where I read that, because I&#8217;ve got to get back to work)</p>
<p>anyway&#8230; when you use invalidateProperties() when you want to remove the children, you would simply set the selectedIndex before you invalidate, and then do the work in commitProperties&#8230; and it should just work because of the way commitProperties is supposed to work&#8230;</p>
<p>when in reality, it doesnt work either&#8230;</p>
<p>so what you end up having to do is use callLater( commitProperties )</p>
<p><code>private var _tabNavChanged:Boolean = false;<br />
public function resetTabNav():void<br />
{<br />
tabNav.selectedIndex = 0;</code></p>
<p><code>_tabNavChanged = true;<br />
callLater( commitProperties )<br />
}</p>
<p>override protected function commitProperties():void<br />
{<br />
super.commitProperties():</p>
<p>if( _tabNavChanged )<br />
{</p>
<p>//do your looping and stuff here to create your dynamic tabs...</p>
<p>_tabNavChanged = false;<br />
}<br />
</code></p>
<p><code>}//end function</code></p>
<p>Hope this helps someone&#8230; didn&#8217;t really take long <img src='http://www.axelscript.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  i suppose I&#8217;m just used to using commitProperties</p>
<p><a href="http://axelscript.com/wp-content/Examples/DynamicTabs/DynamicTabs.html#" target="_blank">Application</a> - <a href="http://axelscript.com/wp-content/Examples/DynamicTabs/srcview/index.html" target="_blank">Source</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.axelscript.com/2009/04/27/dynamic-tabs-selectedindex-bug/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.axelscript.com/2009/04/27/dynamic-tabs-selectedindex-bug/</feedburner:origLink></item>
		<item>
		<title>ItemRenderer TileList issues</title>
		<link>http://feedproxy.google.com/~r/Axelology/~3/udP-VOBjI38/</link>
		<comments>http://www.axelscript.com/2009/03/30/itemrenderer-tilelist-issues/#comments</comments>
		<pubDate>Mon, 30 Mar 2009 15:00:41 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Flex]]></category>

		<category><![CDATA[Actionscript]]></category>

		<guid isPermaLink="false">http://www.axelscript.com/?p=305</guid>
		<description><![CDATA[This post is about how to help assist your TileList if you are using an image in the renderer and need to make trips to the server to get the image... this shows you how to get the image once, and store it, rather than the TileList redownloading the image a ton of times when you scroll.]]></description>
			<content:encoded><![CDATA[<p><a href="http://examples.axelscript.com/Examples/ImageMapTileListExample/ImageMapTileListExample.html" target="_blank">Application</a> - <a href="http://examples.axelscript.com/Examples/ImageMapTileListExample/srcview/index.html" target="_blank">Source</a></p>
<p>When you use an itemRenderer in your <a href="http://livedocs.adobe.com/flex/3/html/help.html?content=dpcontrols_4.html" target="_blank">TileList</a>, as well with any of the listBase components, it reuses renderers, there are tons and tons of <a href="http://www.returnundefined.com/index.php?s=itemRenderer&amp;submit=" target="_blank">posts</a> a lot from a colleague <a href="http://returnundefined.com" target="_blank">Ben Clinkenbeard</a> on renderer issues with data, and one of the things I do normally is override the data setter in the renderer, and bind to a value object&#8230;</p>
<p>The problem I recently came across using the <a href="http://livedocs.adobe.com/flex/3/html/help.html?content=dpcontrols_4.html" target="_blank">TileList</a>, was that we were using the <a href="http://livedocs.adobe.com/flex/3/html/help.html?content=dpcontrols_4.html" target="_blank">TileList </a>to display a list of products, and there could be a lot&#8230; hundrends&#8230; when you use the TileList, and you scroll, it reuses the renderer for efficiency&#8230; </p>
<p><span id="more-305"></span></p>
<p>I liked that it was fairly efficient and wanted to keep it that way&#8230; some of the other options would be to use a repeater, but that&#8217;s not a very good option anyway&#8230; especially if you are going to filter data&#8230; </p>
<p>Because I was binding to a vo, (or the data object) in my renderer, when you scroll the data setter gets called over and over, and the renderer pretty much stays the same, and it just changes the data&#8230;. so the tilelist really just fakes you out by putting a scroll bar there&#8230; at least somewhat anyway&#8230;</p>
<p>so when you scroll, and you are binding to the source of the image like so: &lt;mx:Image source=&#8221;{data.imageURL}&#8221;/&gt;</p>
<p>the imageURL constantly gets changed when you scroll&#8230; so when you scroll it causes the image to be redownloaded&#8230; </p>
<p>I want the image to be downloaded only ONCE! so what I&#8217;m doing now just for this project (there probably is no need to do this if your tilelist all fits on one page, or has pagination) is using a ImageMap class, that is dynamic and when the image comeback for the first time it is stored in that class, and whenever the data changes in the renderer, it checks to see in that file if it has the image it needs, and then uses that one rather than downloading another one, and it does it fairly efficiently.  Check out the example app, you can right click to view source.</p>
<p><a href="http://examples.axelscript.com/Examples/ImageMapTileListExample/ImageMapTileListExample.html" target="_blank">Application</a> - <a href="http://examples.axelscript.com/Examples/ImageMapTileListExample/srcview/index.html" target="_blank">Source</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.axelscript.com/2009/03/30/itemrenderer-tilelist-issues/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.axelscript.com/2009/03/30/itemrenderer-tilelist-issues/</feedburner:origLink></item>
		<item>
		<title>SocialSecurityValidator note</title>
		<link>http://feedproxy.google.com/~r/Axelology/~3/kbbrAcJqans/</link>
		<comments>http://www.axelscript.com/2009/03/05/socialsecurityvalidator-note/#comments</comments>
		<pubDate>Fri, 06 Mar 2009 01:24:31 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://www.axelscript.com/?p=303</guid>
		<description><![CDATA[I currently have a small side project with SocialSecurityValidator, and we are stripping all of the dashes out of the format, and when we passed in just a number to the validator, it screamed bloody murder, because it couldnt use a string function charAt().
so I simply passed the number in with a .toString()
as
//mySSN is a [...]]]></description>
			<content:encoded><![CDATA[<p>I currently have a small side project with SocialSecurityValidator, and we are stripping all of the dashes out of the format, and when we passed in just a number to the validator, it screamed bloody murder, because it couldnt use a string function charAt().</p>
<p>so I simply passed the number in with a .toString()<br />
as<br />
<code>//mySSN is a number<br />
ssnV.validate(mySSN.toString() );</code></p>
<p>mxml:<br />
<code>&lt;mx:SocialSecurityValidator<br />
id	=	"ssnV"<br />
/&gt;</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.axelscript.com/2009/03/05/socialsecurityvalidator-note/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.axelscript.com/2009/03/05/socialsecurityvalidator-note/</feedburner:origLink></item>
		<item>
		<title>Enforce Uppercase in a TextInput</title>
		<link>http://feedproxy.google.com/~r/Axelology/~3/ZvYHSprUqCY/</link>
		<comments>http://www.axelscript.com/2009/03/04/enforce-uppercase-in-a-textinput/#comments</comments>
		<pubDate>Wed, 04 Mar 2009 23:45:03 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://www.axelscript.com/?p=301</guid>
		<description><![CDATA[The easiest way I&#8217;ve came across to enforce uppercase is to use the restrict tag&#8230;
&#60;mx:TextInput restrict="[A-Z]" /&#62;
simple stuff.
]]></description>
			<content:encoded><![CDATA[<p>The easiest way I&#8217;ve came across to enforce uppercase is to use the restrict tag&#8230;</p>
<p><code>&lt;mx:TextInput restrict="[A-Z]" /&gt;</code></p>
<p>simple stuff.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.axelscript.com/2009/03/04/enforce-uppercase-in-a-textinput/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.axelscript.com/2009/03/04/enforce-uppercase-in-a-textinput/</feedburner:origLink></item>
		<item>
		<title>Consulting</title>
		<link>http://feedproxy.google.com/~r/Axelology/~3/7AKvw88gyXs/</link>
		<comments>http://www.axelscript.com/2009/02/27/consulting/#comments</comments>
		<pubDate>Fri, 27 Feb 2009 15:16:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://www.axelscript.com/?p=295</guid>
		<description><![CDATA[I am officially open for consulting, to anyone that reads this, I offer great services, and cheap rates&#8230;.  please contact me via reply or jensen.axel@yahoo.com
]]></description>
			<content:encoded><![CDATA[<p>I am officially open for consulting, to anyone that reads this, I offer great services, and cheap rates&#8230;.  please contact me via reply or jensen.axel@yahoo.com</p>
]]></content:encoded>
			<wfw:commentRss>http://www.axelscript.com/2009/02/27/consulting/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.axelscript.com/2009/02/27/consulting/</feedburner:origLink></item>
		<item>
		<title>Internet Explorer Service Capture 2 install issue, with other rants…</title>
		<link>http://feedproxy.google.com/~r/Axelology/~3/zcNHwRtWRIY/</link>
		<comments>http://www.axelscript.com/2009/01/21/internet-explorer-service-capture-2-install-issue-with-other-rants/#comments</comments>
		<pubDate>Wed, 21 Jan 2009 15:09:08 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://www.axelscript.com/?p=290</guid>
		<description><![CDATA[I installed service capture 2 today, and it made my google chrome not work, and Internet Explorer 7 as well&#8230;
I thought my internet was down, just by chance, so I reset my router, that didn&#8217;t do the trick so I restarted the computer&#8230; and figured something was just messed up&#8230; I didn&#8217;t put 2 and [...]]]></description>
			<content:encoded><![CDATA[<p>I installed service capture 2 today, and it made my google chrome not work, and Internet Explorer 7 as well&#8230;</p>
<p>I thought my internet was down, just by chance, so I reset my router, that didn&#8217;t do the trick so I restarted the computer&#8230; and figured something was just messed up&#8230; I didn&#8217;t put 2 and 2 together to realize that it was WHEN I INSTALLED the software is when things stopped working&#8230; </p>
<p>After realizing that I uninstalled the software because I figured that may fix it, and that didn&#8217;t help either&#8230; at the same time I&#8217;m battling my laptop with no internet, I am battling not being able to print on another computer&#8230; I have no clue why&#8230; so I&#8217;m working through that&#8230; at the same time, the thing I need to print is an upgrade form from etrade which I need to fax in to try to get them to upgrade my account because they won&#8217;t let you apply for upgrades more than once in 90 days&#8230; so I had to call them, and get that worked out and plead my case for the upgrade&#8230; Then I needed to go online to get to salliemae to see how much left is on my school loans, and I couldn&#8217;t log into that, and after 3 times of trying to remember my username and password, they locked my account&#8230; so because I couldn&#8217;t get it unlocked without calling them, I called, and waited 15 minutes on hold, and had an Indian guy who was very scripted tell me my account was locked and that he could reset it to a one time password&#8230; I told him the reason I can&#8217;t remember my password is because they are so strict on their password rules&#8230; </p>
<p>I know that its for my own good, and my account protection, but I only have 3 or 4 passwords that I use that meet certain criteria for a good password&#8230; I think 3 or 4 is pretty good&#8230; so when a place locks me out for trying the different passwords after 3 times&#8230; it pisses me off! especially since I have to call them and wait on hold, then talk to a foreigner that is probably out sourced, that talks like a fucking robot because of the script he has to stay verbatim to&#8230; </p>
<p>Seriously SallieMae blows ass when it comes to support as well as password rules to log in, again, I realize that they are just trying to protect me, but when you can&#8217;t remember your password, you go to their forgot password, then they email you a link to change the password, and then when you try to change it, it tells you YOU CAN&#8217;T CHANGE IT TO ANY OF THE PAST FIVE PASSWORDS YOU&#8217;VE USED PREVIOUSLY!!!!! so then you have to make a new one up, that you happen to forget by the time you log in again, and have to go through the whole friggin process again!!!! seriously they should shoot themselves in the head for the head aches they cause&#8230; </p>
<p>So what do I do&#8230; I put the password on a sticky not and put it on my monitor (which from being an IT guy you hear about all the time) and that just kinda blows their security out of the water&#8230; they really piss me off&#8230; now they wont consolidate loans either which just adds to the crap load of stuff that is sort of piling on&#8230; </p>
<p>At least when I called etrade I only had to push 1 button to talk to someone instaed of 15&#8230; (&#8221;use your touch tone phone to put in your account number, if you do not know your account number press 1, use your phone to type in your social security number, then your phone number, then your username, then your password&#8230; if you are calling for technical support press 1, if your calling for a new account press two&#8230; to hear this menu again press #, or *, or to hang on the line press 0&#8230;.) I&#8217;M SO SICK OF PHONE MENU&#8217;S THAT ARE ABSOLUTELY HORRIBLE, then after you put in all the information, they have to verify that you are you, and you have to pass a little quiz when you actually get someone on the phone&#8230; AGAIN, I UNDERSTAND ITS ALL FOR MY OWN GOOD, but I just want to be able to work, and get info when I need it, I want to be able to call my ISP and get support without dailing 15 numbers to talk to someone, then have them tell me they didnt recognize my number because of the way cell phone towers transmits numbers depending off what tower they bounce off ( I heard that somewhere&#8230; dunno if its true&#8230; but for one company I call it never recognizes my phone number, and then i have to enter it twice, then i get on the phone and they ask me it again&#8230; )</p>
<p>so anyway&#8230; service capture&#8230; lol</p>
<p>I think service capture turns on a proxy setting in IE and you have to shut it off&#8230; either that or I already had it on from some other project or environment setting&#8230; but because when i installed service capture it made stuff not work, I&#8217;m lead to believe it may have been that&#8230;.</p>
<p>so go to tools > Internet Options > Connects Tab > in the bottom click on LAN Settings > UNCHECK &#8216;use a proxy server for your LAN&#8230;&#8217;</p>
<p>http://www.kevinlangdon.com/serviceCapture/images/ie_settings.jpg</p>
<p>sorry for the bitching&#8230; but it makes me feel better&#8230; </p>
]]></content:encoded>
			<wfw:commentRss>http://www.axelscript.com/2009/01/21/internet-explorer-service-capture-2-install-issue-with-other-rants/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.axelscript.com/2009/01/21/internet-explorer-service-capture-2-install-issue-with-other-rants/</feedburner:origLink></item>
		<item>
		<title>Cairngen with Cairngorm with UM Extensions</title>
		<link>http://feedproxy.google.com/~r/Axelology/~3/rRdZvfhd2H8/</link>
		<comments>http://www.axelscript.com/2008/10/13/cairngen-with-cairngorm-with-um-extensions/#comments</comments>
		<pubDate>Mon, 13 Oct 2008 18:32:38 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[ANT]]></category>

		<category><![CDATA[Flex]]></category>

		<category><![CDATA[VideoBlog]]></category>

		<guid isPermaLink="false">http://www.axelscript.com/?p=226</guid>
		<description><![CDATA[This post is a video on Cairngorm with UM Extensions and cairngenum. It explains some of the subtle differences between cairngorm, and cairngormUM, and what the extensions allow you to do that cairngorm doesnt allow very easily.  The Video is listed at the bottom of the post.]]></description>
			<content:encoded><![CDATA[<p>This post is a video on Cairngorm with UM Extensions and cairngenum. It explains some of the subtle differences between cairngorm, and cairngormUM, and what the extensions allow you to do that cairngorm doesnt allow very easily.  The Video is listed at the bottom of the post</p>
<p> <br />
This post is a video on Cairngorm with UM Extensions and cairngenum. It explains some of the subtle differences between cairngorm, and cairngormUM, and what the extensions allow you to do that cairngorm doesnt allow very easily.  The Video is listed at the bottom of the post</p>
<ul>
<li>CairngormUM
<ul>
<li>Prerequisites:
<ul>
<li>Cairngorm</li>
<li>Cairngen</li>
<li>know what &#8220;ant&#8221; is</li>
<li>have &#8220;ant&#8221; up and running on your computer</li>
<li>link to brief setup of ANT <a href="http://www.axelscript.com/2008/10/07/publishing-air-apps-with-ant-and-ftp/"></a>
<ul>
<li><a href="http://www.axelscript.com/2008/10/07/publishing-air-apps-with-ant-and-ftp/">http://www.axelscript.com/2008/10/07/publishing-air-apps-with-ant-and-ftp/</a></li>
</ul>
</li>
</ul>
</li>
<li>Files and links:
<ul>
<li><a href="http://www.axelscript.com/2008/10/13/cairngen-with-cairngorm-with-um-extensions/">http://www.axelscript.com/2008/10/13/cairngen-with-cairngorm-with-um-extensions/</a></li>
</ul>
<ul>
<li><a href="http://www.axelscript.com/wp-content/Examples/CairngenUM/cairngenum.zip">http://www.axelscript.com/wp-content/Examples/CairngenUM/cairngenum.zip</a></li>
<li><a id="p6eg" title="http://www.returnundefined.com" href="http://www.returnundefined.com/">http://www.returnundefined.com</a></li>
<li><a href="http://code.google.com/p/flexcairngorm/">http://code.google.com/p/flexcairngorm/</a></li>
<li><a href="http://code.google.com/p/cairngen/">http://code.google.com/p/cairngen/</a></li>
</ul>
</li>
<li>Main differences:
<ul>
<li>the ability to add CallBacks()</li>
</ul>
</li>
<li>Project
<ul>
<li>create a blank project
<ul>
<li>paste cairngenum into root project folder</li>
<li>change project.properties to match current project</li>
<li>open cairngenum/Build.xml in ant editor (should open by default in ant editor)</li>
<li>in &#8220;outline&#8221; view right click &#8220;main&#8221; &gt; run as &gt; ant build</li>
<li>in your console you&#8217;ll see if build is successful or if it failed, and why it failed</li>
</ul>
</li>
<li>create a mock up xml file that we are going to use to hold some dummy xml to act as our information we retrieve from the service
<ul>
<li>create the file under your src directory &#8220;/src/assets/data/users.xml&#8221; and format it like the following:</li>
<p><code>&lt;root&gt;<br />
	&lt;users&gt;<br />
		&lt;user name="Axel"/&gt;<br />
		&lt;user name="Ben"/&gt;<br />
		&lt;user name="Ryan"/&gt;<br />
		&lt;user name="Tom"/&gt;<br />
		&lt;user name="David"/&gt;<br />
	&lt;/users&gt;<br />
&lt;/root&gt;</code></p>
<ul>
<li>we will now create the sequence that retrieves this information from the file and return it back into our code for us to manipulate.</li>
</ul>
</li>
</ul>
</li>
</ul>
<ul>
<li>create a sequence
<ul>
<li>a sequence is an event, command, and adding the command to the controller, and Optionally could be creating the delegate as well, in cairngenum the delegate must be created with the create-delegate target in the build.xml file.</li>
<li>with build.xml open in outline view right click &#8220;create-sequence&#8221; &gt; run as &gt; ant build
<ul>
<li>when you do this you will be prompted for an event stub name
<ul>
<li>type &#8220;UserRead&#8221; click OK</li>
</ul>
</li>
<li>now you will be prompted for the event constant name
<ul>
<li>type &#8220;USER_READ_EVENT&#8221; click OK</li>
</ul>
</li>
<li>now you will be prompted for the event type constant
<ul>
<li>type &#8220;UserReadEvent&#8221; click OK</li>
</ul>
</li>
<li>now you will be prompted for the delegate name
<ul>
<li>type &#8220;UsersDelegate&#8221; click OK</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<p><span id="more-226"></span><br />
the message in the console should look something like this<br />
<code><br />
Buildfile: E:\fb3Workspace\TestUMCG\cairngenum\build.xml<br />
log:<br />
create-sequence:<br />
     [echo] @Invoking Cairngenum on [TestUMCG] --&amp;gt; Generating file(s): UserReadCommand.as and UserReadEvent.as, using UsersDelegate.as<br />
internal-create-custom-event-class:<br />
     [copy] Copying 1 file to E:\fb3Workspace\TestUMCG\src\com\axelscript\tempCairngenUM\events<br />
create-command:<br />
     [copy] Copying 1 file to E:\fb3Workspace\TestUMCG\src\com\axelscript\tempCairngenUM\commands<br />
     [copy] Copying 1 file to E:\fb3Workspace\TestUMCG\test\com\axelscript\tempCairngenUM\commands<br />
internal-register-sequence:<br />
BUILD SUCCESSFUL<br />
Total time: 3 minutes 34 seconds</code></p>
<ul>
<li>now you need to create the delegate class that talks to the service that will retrieve the data or execute the function you need to do.
<ul>
<li>with build.xml open, in outline view right click &#8220;create-delegate&#8221;
<ul>
<li>now you will be prompted for the stub name of the delegate
<ul>
<li>type &#8220;Users&#8221; click OK</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<p>the message in the console should look something like this<br />
<code>Buildfile: E:\fb3Workspace\TestUMCG\cairngenum\build.xml<br />
create-delegate:<br />
     [echo] @Invoking Cairngenum on [TestUMCG] --&amp;gt; Generating file(s): UsersDelegate.as<br />
     [copy] Copying 1 file to E:\fb3Workspace\TestUMCG\src\com\axelscript\tempCairngenUM\business<br />
BUILD SUCCESSFUL<br />
Total time: 39 seconds</code></p>
<ul>
<li>Now open business/Services.xml and add the following code</li>
<p><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;<br />
&lt;service:ServiceLocator xmlns:mx="http://www.adobe.com/2006/mxml"<br />
	xmlns:service="com.universalmind.cairngorm.business.*"&gt;</p>
<p>	&lt;mx:Script&gt;<br />
		&lt;![CDATA[<br />
			public static var USERS_SERVICE:String = 'usersService';<br />
		]]&gt;<br />
	&lt;/mx:Script&gt;</p>
<p>	&lt;mx:HTTPService<br />
		id="usersService"<br />
		resultFormat="e4x"<br />
		url="assets/data/users.xml"<br />
		/&gt;<br />
&lt;/service:ServiceLocator&gt;</code></p>
<li>This is where there are some slight differences in Cairngorm vs. CairngormUM because the UM version lets its base class handle the service and the responder, where as you used to have to rewrite the two variables every time.</li>
<li>You now need to adjust the Constructor Function in the the UsersDelegate so it looks like this
<ul>
<li>super( handlers,  Services.USER_SERVICE );</li>
</ul>
</li>
<li>You need to add a function to your delegate class that actually connects to the service, and returns the data back to the command.<br />
<code>public function readUsers():void<br />
{<br />
	var token:AsyncToken = service.send();<br />
	token.addResponder( this.responder );<br />
}</code>
</li>
<li>now you need to adjust your UserReadCommand to call the delegates function &#8220;readUsers()&#8221;<br />
<code>override public function execute( event:CairngormEvent ):void<br />
		{<br />
			super.execute( event );</p>
<p>			var evt:UsersReadEvent = event as UsersReadEvent;<br />
			var delegate:UsersDelegate = new UsersDelegate( new Callbacks( handleDelegateResult, handleDelegateFault ) );</p>
<p>			delegate.readUsers();<br />
			// insert delegate method call here<br />
		}</code>
</li>
<li>Finally you need to dispatch the event in this case we&#8217;ll do it on the initialize event of the main application file
<ul>
<li>TestUMCG.mxml</li>
<p><code>	&lt;mx:Script&gt;<br />
		&lt;![CDATA[<br />
			import mx.rpc.events.FaultEvent;<br />
			import mx.rpc.events.ResultEvent;<br />
			import com.universalmind.cairngorm.events.Callbacks;<br />
			import com.domain.project.events.UsersReadEvent;<br />
			private function handleInitialize():void<br />
			{<br />
				new UsersReadEvent( new Callbacks(usersReadResult,usersReadFault) ).dispatch();<br />
			}</p>
<p>			private function usersReadResult( event:ResultEvent ):void<br />
			{<br />
				trace(event);<br />
			}</p>
<p>			private function usersReadFault( event:FaultEvent ):void<br />
			{<br />
				trace(event);<br />
			}</p>
<p>		]]&gt;<br />
	&lt;/mx:Script&gt;</code>
</ul>
</li>
</ul>
<h4>The Video</h4>
<p>(it takes a minute to load)<br />
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="640" height="498" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="name" value="csSWF" /><param name="bgcolor" value="#1a1a1a" /><param name="flashvars" value="autostart=false" /><param name="src" value="http://www.axelscript.com/wp-content/Examples/CairngenUM/usingCairngenUM.swf" /><embed type="application/x-shockwave-flash" width="640" height="498" src="http://www.axelscript.com/wp-content/Examples/CairngenUM/usingCairngenUM.swf" flashvars="autostart=false" bgcolor="#1a1a1a" name="csSWF"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.axelscript.com/2008/10/13/cairngen-with-cairngorm-with-um-extensions/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.axelscript.com/2008/10/13/cairngen-with-cairngorm-with-um-extensions/</feedburner:origLink></item>
		<item>
		<title>Publishing your app by Email with ANT</title>
		<link>http://feedproxy.google.com/~r/Axelology/~3/l4fwrkfCaZ4/</link>
		<comments>http://www.axelscript.com/2008/10/08/publishing-by-email-with-ant/#comments</comments>
		<pubDate>Wed, 08 Oct 2008 20:15:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[ANT]]></category>

		<category><![CDATA[Air]]></category>

		<category><![CDATA[Flex]]></category>

		<category><![CDATA[VideoBlog]]></category>

		<guid isPermaLink="false">http://www.axelscript.com/?p=213</guid>
		<description><![CDATA[This post has a video that explains how to you use ANT to email your source code and or swf (or .air) file to the client (if you need to).  It even involves how to zip the project up using ANT as well.
To use email with ant you need the following 3 jar files [...]]]></description>
			<content:encoded><![CDATA[<p>This post has a video that explains how to you use <a href="http://ant.apache.org/">ANT</a> to email your source code and or swf (or .air) file to the client (if you need to).  It even involves how to zip the project up using ANT as well.</p>
<p>To use email with ant you need the following 3 jar files installed.</p>
<ul>
<li><a href="http://www.java2s.com/Code/Jar/glassfish/Downloadantjavamailjar.htm" target="_blank">ant-javamail.jar</a></li>
<li><a href="http://www.java2s.com/Code/Jar/glassfish/Downloadactivationjar.htm" target="_blank">activation.jar</a></li>
<li><a href="http://www.java2s.com/Code/Jar/glassfish/Downloadmailjar.htm" target="_blank">mail.jar</a></li>
</ul>
<p>After you download the files you need to put them into your ant directory under your eclipse install &#8220;/plugins/org.apache.ant_******/ folder.  If you watch the video, I explain how to find the ant folder if you don&#8217;t know where it is.  For me it is &#8220;C:\Program Files\Adobe\Flex Builder 3\plugins\org.apache.ant_1.7.0.v200706080842\lib&#8221;.  That is where all the ant jar files are held.  You need to put the jar&#8217;s you downloaded into that folder, and then in eclipse you need to do the following.</p>
<ol>
<li>Window > Preferences > (on left tree) Ant > Runtime</li>
<li>Once you&#8217;ve clicked on &#8220;Runtime&#8221; you&#8217;ll see a tree in the right side and the first entry should say &#8220;Ant Home Entries(Default) you need to click that, and then all of the buttons on the right will become enabled to click on</li>
<li>click on &#8220;Add External JARs</li>
<li>browse to your ant directory where all the jars are (for me its C:\Program Files\Adobe\Flex Builder 3\plugins\org.apache.ant_1.7.0.v200706080842\lib)</li>
<li>highlight your jar files that you downloaded and click ok (ant-javamail.jar,activation.jar,mail.jar)</li>
<li>click apply</li>
<li>restart flex builder or eclipse (whichever you are using)</li>
</ol>
<p>Now we are finally ready to get into the ANT part&#8230;<br />
<span id="more-213"></span></p>
<p>Start by going into whatever flex project you want (or creating one) and then create two files under the root.</p>
<p><b>project.properties</b><br />
<code>##### EMAIL PROPERTIES #####<br />
email.server	= smtp.gmail.com<br />
email.ssl	 	= true<br />
email.user	 	= someemail@gmail.com<br />
email.from	 	= someemail@gmail.com<br />
email.password	= myReallyStrongPassword<br />
email.to	 	= someemail@gmail.com<br />
email.port	 	= 465</p>
<p>##### ZIP PROPERTIES #####<br />
zip.destinationFile		= E:/fb3Workspace/TempPublish/${zip.filename}.zip<br />
zip.filename			= src-code<br />
zip.dir					= E:/fb3Workspace/TempPublish/src<br />
</code></p>
<p><b>Build.xml</b><br />
<code>&lt;project name="Publishing your project via Email with ANT"&gt;</p>
<p>	<!--<br />
	User specific configuration properties. Typically this is the only file you need to modify<br />
	--><br />
	&lt;property file="project.properties" /&gt;</p>
<p>	&lt;target name="mail-project-to-client" depends="zip-project, send-email" /&gt;</p>
<p>	&lt;target name="send-email"&gt;<br />
		&lt;mail<br />
			tolist			=	"${email.to}"<br />
			from			=	"${email.from}"<br />
			subject			=	"New Version of file"<br />
			mailhost		=	"${email.server}"<br />
			mailport		=	"${email.port}"<br />
			ssl				=	"${email.ssl}"<br />
			user			=	"${email.user}"<br />
			password		=	"${email.password}"<br />
			messagemimetype	=	"text/html"<br />
			&gt;<br />
			&lt;message&gt;&lt;![CDATA[<br />
			&lt;p&gt;<br />
				this is my html message you have a new zip file attached<br />
			&lt;/p&gt;<br />
			]]&gt;<br />
			&lt;/message&gt;<br />
			&lt;fileset file="${zip.destinationFile}"&gt;<br />
				&lt;exclude name="**/*.svn"/&gt;<br />
			&lt;/fileset&gt;<br />
		&lt;/mail&gt;<br />
	&lt;/target&gt;</p>
<p>	&lt;target name="zip-project"&gt;<br />
		&lt;zip destfile="${zip.destinationFile}" duplicate="preserve"&gt;<br />
			&lt;zipfileset dir="${zip.dir}" /&gt;<br />
		&lt;/zip&gt;<br />
	&lt;/target&gt;<br />
&lt;/project&gt;</code></p>
<p>Please see the video for more detail.</p>
<h4>Pushing your project via Email with ANT (takes a little bit to load)</h4>
<p><object id="csSWF" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="640" height="498" codebase="http://active.macromedia.com/flash7/cabs/ swflash.cab#version=9,0,28,0"><param name="src" value="http://www.axelscript.com/wp-content/Examples/UsingAntToPublishProjectViaEmail/usingANTtoPublishProjectViaEmail.swf"/><param name="bgcolor" value="#1a1a1a"/><param name="quality" value="best"/><param name="allowScriptAccess" value="always"/><param name="allowFullScreen" value="true"/><param name="scale" value="showall"/><param name="flashVars" value="autostart=false"/><embed name="csSWF" src="http://www.axelscript.com/wp-content/Examples/UsingAntToPublishProjectViaEmail/usingANTtoPublishProjectViaEmail.swf" width="640" height="498" bgcolor="#1a1a1a" quality="best" allowScriptAccess="always" allowFullScreen="true" scale="showall" flashVars="autostart=false" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></embed></object></p>
<p>NOTE:Please note that the zip format allows multiple files of the same fully-qualified name to exist within a single archive. This has been documented as causing various problems for unsuspecting users. If you wish to avoid this behavior you must set the duplicate attribute to a value other than its default, &#8220;add&#8221;. (<a href="http://ant.apache.org/manual/CoreTasks/zip.html">zip tag documentation</a>)</p>
<p>Links:</p>
<ul>
<li><a href="http://ant.apache.org/manual/CoreTasks/zip.html">zip tag documentation</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.axelscript.com/2008/10/08/publishing-by-email-with-ant/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.axelscript.com/2008/10/08/publishing-by-email-with-ant/</feedburner:origLink></item>
		<item>
		<title>Publishing Air Apps with ANT and FTP</title>
		<link>http://feedproxy.google.com/~r/Axelology/~3/xNemYbPVglM/</link>
		<comments>http://www.axelscript.com/2008/10/07/publishing-air-apps-with-ant-and-ftp/#comments</comments>
		<pubDate>Tue, 07 Oct 2008 20:11:30 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[ANT]]></category>

		<category><![CDATA[Actionscript]]></category>

		<category><![CDATA[Air]]></category>

		<category><![CDATA[Flex]]></category>

		<category><![CDATA[VideoBlog]]></category>

		<guid isPermaLink="false">http://www.axelscript.com/?p=193</guid>
		<description><![CDATA[This post discusses and includes a video of how to publish your .air files to your server with an ANT script via FTP. ANT is a xml scripting language that can be used for many things, but in our case it&#8217;s going to be application deployment.
The Problem
When you create an air app and host it [...]]]></description>
			<content:encoded><![CDATA[<p>This post discusses and includes a video of how to publish your .air files to your server with an <a href="http://ant.apache.org/" taget="_blank">ANT</a> script via FTP. ANT is a xml scripting language that can be used for many things, but in our case it&#8217;s going to be application deployment.</p>
<h4>The Problem</h4>
<p>When you create an air app and host it on a server somewhere, you often times have updates, and you need to publish a new .air file to the server so people that continue to download your app, get the newest, healthiest version.  The problem with that is that after bug fix (which may take all of 2 minutes), you need to connect to your ftp site, or ssh, or email the new file to yourself, remote desktop into the server, and check your email and put the new file into it&#8217;s correct path on the server.</p>
<h4>The Solution</h4>
<p>Create an ANT Script that logs into you ftp site, and uploads the new files, and it goes from a some what menacing task, to being a delightful 2 or 3 click deployment.  There are some things you have to do to eclipse to get the ftp tag to work right in ANT&#8230; They are listed below in the steps to take to get ANT up and going in eclipse or flexbuilder.</p>
<p><code>ftp.username        = username<br />
ftp.password        = password<br />
ftp.dir		= dirToUploadFilesTo<br />
ftp.server          = myDomain.com<br />
ftp.localDir        = E:/ClickStats_Basketball_1_0/update</p>
<p>&lt;target name="ftp-push-to-server"&gt;<br />
		&lt;echo&gt;Pushing files to ftp site: ${ftp.server}&lt;/echo&gt;<br />
		&lt;ftp<br />
			server		=	"${ftp.server}"<br />
			userid		=	"${ftp.username}"<br />
			password	=	"${ftp.password}"<br />
			action		=	"put"<br />
			remotedir	=	"${ftp.dir}"<br />
			verbose		=	"true"<br />
			&gt;<br />
			&lt;fileset id="ftp.upload.fileset" dir="${ftp.localDir}" /&gt;<br />
		&lt;/ftp&gt;<br />
	&lt;/target&gt;</code></p>
<h4>The Video</h4>
<p><span id="more-193"></span><br />
Prerequisite: <a href="http://www.axelscript.com/2008/10/06/using-the-air-update-framework/">/using-the-air-update-framework</a></p>
<p><object id="csSWF" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="640" height="498" codebase="http://active.macromedia.com/flash7/cabs/ swflash.cab#version=9,0,28,0"><param name="src" value="http://www.axelscript.com/wp-content/Examples/UsingFTPtoPushYourApp/usingFTPtoPushYourApp.swf"/><param name="bgcolor" value="#1a1a1a"/><param name="quality" value="best"/><param name="allowScriptAccess" value="always"/><param name="allowFullScreen" value="true"/><param name="scale" value="showall"/><param name="flashVars" value="autostart=false"/><embed name="csSWF" src="http://www.axelscript.com/wp-content/Examples/UsingFTPtoPushYourApp/usingFTPtoPushYourApp.swf" width="640" height="498" bgcolor="#1a1a1a" quality="best" allowScriptAccess="always" allowFullScreen="true" scale="showall" flashVars="autostart=false" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></embed></object></p>
<p>Your going to need to do a few things to make sure ant is working:</p>
<ol>
<li><a href="http://blogs.adobe.com/flexdoc/2008/04/adding_java_development_tools_1.html" target="_blank">follow the steps on adobe&#8217;s site</a></li>
<li>once ant is installed (how to is in the previous link) you then need to make sure you have at least java 6 installed</li>
<li>now in eclipse or flexbuilder open your prefrences > (in tree on left go to) Java > Installed JREs > click &#8220;Add&#8221; > Browse for &#8220;JRE home directory&#8221; > &#8220;C:\Program Files\Java\1.6.x&#8221; (or something like that) > it should find a bunch of system libs > then click &#8220;OK&#8221;</li>
<li>WHILE STILL IN THE PREFERENCES WINDOW > verify new JRE is checked Preferences > Java > Installed JREs (should have jre1.6.xxx checked, INSTEAD OF Flex builder 3</li>
<li>Preferences > Java > Compiler > (in first drop down) Compiler compliance level: select &#8220;6.0&#8243; instead of &#8220;5&#8243;</li>
<li>
NET Commons Jar file: <a href="http://commons.apache.org/downloads/download_net.cgi" target="_blank">commons-net-1.4.1.jar</a>
</li>
<li>
Getting FTP to work with Eclipse: <a href="http://devnulled.com/content/2004/11/getting-ftp-to-work-with-ant-in-eclipse/" target="_blank">getting-ftp-to-work-with-ant-in-eclipse</a>
</li>
<li>
ANT Commons Jar file: <a href="http://www.java2s.com/Code/Jar/ANT/Downloadantcommonsnetjar.htm" target="_blank">ant-commons-net.jar</a>
</li>
<li>That should be all you have to do to get ANT up and running.</li>
</ol>
<p>Links:</p>
<ul>
<li>
Some Noteworthy negatives about deployment using ant: <a href="http://debuggable.com/posts/ant-sucks-for-ftp-deployment-what-alternatives-do-we-have:480f4dd6-72fc-42d0-aa9c-44c5cbdd56cb" target="_blank">ant-sucks-for-ftp-deployment</a>
</li>
<li>
Book: <a href="http://www.amazon.com/Ant-Action-Manning-Steve-Loughran/dp/193239480X/ref=sr_1_1?ie=UTF8&#038;s=books&#038;qid=1223317472&#038;sr=1-1" target="_blank">Ant In Action By Steve Loughran</a>
</li>
<li>
Adobe: <a href="http://labs.adobe.com/wiki/index.php/Adobe_AIR_Update_Framework" target="_blank">AIR Update Framework</a>
</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.axelscript.com/2008/10/07/publishing-air-apps-with-ant-and-ftp/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.axelscript.com/2008/10/07/publishing-air-apps-with-ant-and-ftp/</feedburner:origLink></item>
		<item>
		<title>Using the Air Update Framework</title>
		<link>http://feedproxy.google.com/~r/Axelology/~3/AxLv1NF5AuA/</link>
		<comments>http://www.axelscript.com/2008/10/06/using-the-air-update-framework/#comments</comments>
		<pubDate>Mon, 06 Oct 2008 19:51:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Air]]></category>

		<category><![CDATA[Flex]]></category>

		<category><![CDATA[VideoBlog]]></category>

		<guid isPermaLink="false">http://www.axelscript.com/?p=197</guid>
		<description><![CDATA[This post is a simple video on using the air update framework. It explains how to upload your .air file to your server, and a simple way to organize the directories.  
Here are some links that you may need to follow along with the video.

Download Air Update Framework

 you will need the update framework
 [...]]]></description>
			<content:encoded><![CDATA[<p>This post is a simple video on using the air update framework. It explains how to upload your .air file to your server, and a simple way to organize the directories.  </p>
<p>Here are some links that you may need to follow along with the video.</p>
<ul>
<li><a href="http://labs.adobe.com/wiki/index.php/Adobe_AIR_Update_Framework#Download">Download Air Update Framework
<ul>
<li> <a href="http://download.macromedia.com/pub/labs/air/appupdater/air_appupdater_062408.zip">you will need the update framework</a></li>
<li> <a href="http://download.macromedia.com/pub/labs/air/appupdater/air_appupdater_samples_062408.zip">as well as the sample files</a> </li>
</ul>
</li>
</ul>
<p>Here is the video.<br />
<span id="more-197"></span></p>
<h4>Video on using the air update framework</h4>
<p><object id="csSWF" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="640" height="498" codebase="http://active.macromedia.com/flash7/cabs/ swflash.cab#version=9,0,28,0"><param name="src" value="http://www.axelscript.com/wp-content/Examples/AirUpdaterExample/airUpdaterExample.swf"/><param name="bgcolor" value="#1a1a1a"/><param name="quality" value="best"/><param name="allowScriptAccess" value="always"/><param name="allowFullScreen" value="true"/><param name="scale" value="showall"/><param name="flashVars" value="autostart=false"/><embed name="csSWF" src="http://www.axelscript.com/wp-content/Examples/AirUpdaterExample/airUpdaterExample.swf" width="640" height="498" bgcolor="#1a1a1a" quality="best" allowScriptAccess="always" allowFullScreen="true" scale="showall" flashVars="autostart=false" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.axelscript.com/2008/10/06/using-the-air-update-framework/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.axelscript.com/2008/10/06/using-the-air-update-framework/</feedburner:origLink></item>
		<item>
		<title>Improving compile times with runtime css</title>
		<link>http://feedproxy.google.com/~r/Axelology/~3/ZHJ9idJPnac/</link>
		<comments>http://www.axelscript.com/2008/10/03/improving-compile-times-with-runtime-css/#comments</comments>
		<pubDate>Fri, 03 Oct 2008 19:36:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Actionscript]]></category>

		<category><![CDATA[Air]]></category>

		<category><![CDATA[CSS]]></category>

		<category><![CDATA[Flex]]></category>

		<category><![CDATA[Flex Builder Tips]]></category>

		<category><![CDATA[VideoBlog]]></category>

		<guid isPermaLink="false">http://www.axelscript.com/?p=170</guid>
		<description><![CDATA[This post is a video showing how embedding fonts and images can have a drastic effect on compile times.  It goes on in the video to show a possible way to improve those compile times with runtime css.
Here is the zip of the Project - SOURCE
The Problem
When you embed a lot of fonts you immediately [...]]]></description>
			<content:encoded><![CDATA[<p>This post is a video showing how embedding fonts and images can have a drastic effect on compile times.  It goes on in the video to show a possible way to improve those compile times with runtime css.</p>
<p>Here is the zip of the Project - <a href="http://axelscript.com/wp-content/Examples/RuntimeCSS/RuntimeCSS.zip" target="_blank">SOURCE</a></p>
<h4>The Problem</h4>
<p>When you embed a lot of fonts you immediately hurt your compile times.  In the video I go about showing you how just embedding a few fonts can&#8217;t hurt your compile times, I have about 8 fonts embedded and 2 of them with bold font embeddings as well.  This slowed down my compile time to 8 seconds, with barely any mxml, it&#8217;s all css and embedding fonts that caused the issue.  This post goes to show you how to create a separate project to hold your css and how to include it as runtime css in your original project.</p>
<p><span id="more-170"></span></p>
<h4>A (possible) Solution</h4>
<p>The solution is to create a separate project to hold you css and embedded assets, the reason for this is most the time in your development cycle once you are done setting up the style it just sets there&#8230; and then you work on the logic of the application&#8230;</p>
<p>So what you do is create a separate project put your css and the embedded assets in the seperate project, and set its output folder to be the actual project&#8217;s html-template folder, then you right-click the css file and make sure &#8220;Compile CSS to SWF&#8221; is checked.  This tells flexbuilder to compile a swf just for the css file&#8230; NOTE: you may have to make a change to the css file to get it to output the swf.</p>
<p>Once the file is a swf, and the output folder is your destination project you simply use StyleManager.loadStyleDeclarations(&#8217;somecss.swf&#8217;); to load your css on the &#8220;initialize&#8221; event of the main application mxml file.</p>
<p>To also help improve compile times you can try using unicode ranges for you font as well, and only embedding what you need <a href="http://www.axelscript.com/2008/08/20/using-unicode-ranges-for-fonts-because-of-compile-times/" target="_blank">Using unicode ranges for fonts</a></p>
<p>Please see the video for more details</p>
<p> Here is the zip of the Project - <a href="http://axelscript.com/wp-content/Examples/RuntimeCSS/RuntimeCSS.zip" target="_blank">SOURCE</a></p>
<h4>THE VIDEO </h4>
<p>(be patient, it takes a minute to load)<br />
            <object id="csSWF" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="640" height="498" codebase="http://active.macromedia.com/flash7/cabs/ swflash.cab#version=9,0,28,0"><param name="src" value="http://www.axelscript.com/wp-content/Examples/RuntimeCSS/runtimeCSS.swf"/><param name="bgcolor" value="#1a1a1a"/><param name="quality" value="best"/><param name="allowScriptAccess" value="always"/><param name="allowFullScreen" value="true"/><param name="scale" value="showall"/><param name="flashVars" value="autostart=false"/><embed name="csSWF" src="http://www.axelscript.com/wp-content/Examples/RuntimeCSS/runtimeCSS.swf" width="640" height="498" bgcolor="#1a1a1a" quality="best" allowScriptAccess="always" allowFullScreen="true" scale="showall" flashVars="autostart=false" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.axelscript.com/2008/10/03/improving-compile-times-with-runtime-css/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.axelscript.com/2008/10/03/improving-compile-times-with-runtime-css/</feedburner:origLink></item>
		<item>
		<title>Air Badger app</title>
		<link>http://feedproxy.google.com/~r/Axelology/~3/WR9VpaOTWuU/</link>
		<comments>http://www.axelscript.com/2008/10/02/air-badger-app/#comments</comments>
		<pubDate>Thu, 02 Oct 2008 18:58:02 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Air]]></category>

		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://www.axelscript.com/?p=168</guid>
		<description><![CDATA[This is just a simple reminder post to keep ahold of this link.
http://www.adobe.com/devnet/air/articles/badger_for_air_apps.html?devcon=f3
]]></description>
			<content:encoded><![CDATA[<p>This is just a simple reminder post to keep ahold of this link.</p>
<p><a href="http://www.adobe.com/devnet/air/articles/badger_for_air_apps.html?devcon=f3" target="_blank">http://www.adobe.com/devnet/air/articles/badger_for_air_apps.html?devcon=f3</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.axelscript.com/2008/10/02/air-badger-app/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.axelscript.com/2008/10/02/air-badger-app/</feedburner:origLink></item>
		<item>
		<title>Project work flow - 360Flex Preso</title>
		<link>http://feedproxy.google.com/~r/Axelology/~3/2UqWxwDhpNE/</link>
		<comments>http://www.axelscript.com/2008/09/30/360flex-preso-by-adobe/#comments</comments>
		<pubDate>Tue, 30 Sep 2008 12:44:08 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Actionscript]]></category>

		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://www.axelscript.com/?p=165</guid>
		<description><![CDATA[Here is a link to my 360Flex preso.
http://link.brightcove.com/services/player/bcpid1733261879?bclid=1729365228&#38;bctid=1738803895
]]></description>
			<content:encoded><![CDATA[<p>Here is a link to my 360Flex preso.</p>
<p><a href="http://link.brightcove.com/services/player/bcpid1733261879?bclid=1729365228&amp;bctid=1738803895">http://link.brightcove.com/services/player/bcpid1733261879?bclid=1729365228&amp;bctid=1738803895</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.axelscript.com/2008/09/30/360flex-preso-by-adobe/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.axelscript.com/2008/09/30/360flex-preso-by-adobe/</feedburner:origLink></item>
		<item>
		<title>Building a simple slider component</title>
		<link>http://feedproxy.google.com/~r/Axelology/~3/3TkeD0OYqpk/</link>
		<comments>http://www.axelscript.com/2008/09/25/building-a-simple-slider-component/#comments</comments>
		<pubDate>Thu, 25 Sep 2008 14:30:21 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Actionscript]]></category>

		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://www.axelscript.com/?p=160</guid>
		<description><![CDATA[Application - Source 
A friend asked me today how to create a simple slider component&#8230; I told him, the simplest way in flex, would probably be to have a MoveEffect that would just move a container.
So basically you use masking to mask some stuff, then turn off horizontalScrollPolicy, and verticalScrollPolicy, and then you just set the moveEffect.xBy [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://axelscript.com/wp-content/Examples/Slider/Slider.html" target="_blank">Application</a> - <a href="http://axelscript.com/wp-content/Examples/Slider/srcview/index.html" target="_blank">Source </a></p>
<p>A friend asked me today how to create a simple slider component&#8230; I told him, the simplest way in flex, would probably be to have a <a href="http://livedocs.adobe.com/flex/3/langref/mx/effects/Move.html" target="_blank">MoveEffect</a> that would just move a container.</p>
<p>So basically you use masking to mask some stuff, then turn off horizontalScrollPolicy, and verticalScrollPolicy, and then you just set the moveEffect.xBy to -100 or positive 100, (depending on the distance you want to move it, and what your trying to show&#8230; here is a really simple example.</p>
<p>Please don&#8217;t take this code too seriosly, it&#8217;s nothing fancy, it&#8217;s super simple, and all you would have to do to spice it up would be add a black background, and reflection or two, some images instead of vbox&#8217;s, and some better looking buttons with arrow icons&#8230; but i&#8217;m not the one who needs the component, so I&#8217;m not gonna put too much more time into this&#8230; (not that it took long)</p>
<p> </p>
<p><a href="http://axelscript.com/wp-content/Examples/Slider/Slider.html" target="_blank">Application</a> - <a href="http://axelscript.com/wp-content/Examples/Slider/srcview/index.html" target="_blank">Source </a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.axelscript.com/2008/09/25/building-a-simple-slider-component/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.axelscript.com/2008/09/25/building-a-simple-slider-component/</feedburner:origLink></item>
		<item>
		<title>Facebook Sharer plugin for wordpress</title>
		<link>http://feedproxy.google.com/~r/Axelology/~3/5Av15Bb56mg/</link>
		<comments>http://www.axelscript.com/2008/09/24/facebook-sharer-plugin-for-wordpress/#comments</comments>
		<pubDate>Wed, 24 Sep 2008 21:42:14 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://www.axelscript.com/?p=163</guid>
		<description><![CDATA[This is a test for the wordpress facebook sharer plugin
]]></description>
			<content:encoded><![CDATA[<p>This is a test for the wordpress facebook sharer plugin</p>
]]></content:encoded>
			<wfw:commentRss>http://www.axelscript.com/2008/09/24/facebook-sharer-plugin-for-wordpress/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.axelscript.com/2008/09/24/facebook-sharer-plugin-for-wordpress/</feedburner:origLink></item>
		<item>
		<title>360Flex session review</title>
		<link>http://feedproxy.google.com/~r/Axelology/~3/bKOF23SBmSs/</link>
		<comments>http://www.axelscript.com/2008/09/23/360flex-session-review/#comments</comments>
		<pubDate>Tue, 23 Sep 2008 18:46:09 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://www.axelscript.com/?p=158</guid>
		<description><![CDATA[I recieved my session notes and comments from everyone, THANKS TO ALL THOSE WHO ATTENDED, AND FILLED OUT THE SURVEY! http://www.360conferences.com/surveyresponses/?attendeeID=2952102
I really dont have all that much time to blog right now, lots of stuff goin on w/ work&#8230; but I was very relieved at the results this time around&#8230; I think I may have mislead [...]]]></description>
			<content:encoded><![CDATA[<p>I recieved my session notes and comments from everyone, THANKS TO ALL THOSE WHO ATTENDED, AND FILLED OUT THE SURVEY! <a href="http://www.360conferences.com/surveyresponses/?attendeeID=2952102" target="_blank">http://www.360conferences.com/surveyresponses/?attendeeID=2952102</a></p>
<p>I really dont have all that much time to blog right now, lots of stuff goin on w/ work&#8230; but I was very relieved at the results this time around&#8230; I think I may have mislead some people when writing my overview of what i thought the session would be vs. what it ended up being, but that should be fixed next time, because the talk went really well, I think I may try to do it again.</p>
<p>some of the notes i got were things like,  people thought they were gonna hear more about ANT, and how-to&#8217;s on svn, and trac&#8230; but when i asked everyone in the room, 95% of the people said they were using SVN, so i didnt want to bore people, so i didnt really go over too much, and trac is relatively simple and i covered the stuff i thought was important&#8230; i recieve a 3.8 out of 5 or somthing like that&#8230; so i was pretty happy about that, definitely nothing too negative was said, most of it was just constructive criticm&#8230; 360Flex was great! thanks!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.axelscript.com/2008/09/23/360flex-session-review/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.axelscript.com/2008/09/23/360flex-session-review/</feedburner:origLink></item>
		<item>
		<title>Single Tick issues with AIR</title>
		<link>http://feedproxy.google.com/~r/Axelology/~3/3fiXU0sAjDE/</link>
		<comments>http://www.axelscript.com/2008/08/26/single-tick-issues-with-air/#comments</comments>
		<pubDate>Tue, 26 Aug 2008 14:00:27 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Air]]></category>

		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://www.axelscript.com/?p=157</guid>
		<description><![CDATA[This post describes a way to get around the issue of inserting and updated a sqlLite db with single ticks&#8230;
There probably is more than likely a better way to do this, I&#8217;m told that when you use &#8220;Prepared&#8221; sql statements in air, it may fix the issue, but I&#8217;m on my first Air project, i&#8217;ve [...]]]></description>
			<content:encoded><![CDATA[<p>This post describes a way to get around the issue of inserting and updated a sqlLite db with single ticks&#8230;</p>
<p>There probably is more than likely a better way to do this, I&#8217;m told that when you use &#8220;Prepared&#8221; sql statements in air, it may fix the issue, but I&#8217;m on my first Air project, i&#8217;ve been doing flex for like 2 and a half years with CF on the backend, and so i know all the tricks in cf to fix the issues, but in AIR we just wrote a function to do it&#8230;</p>
<p>PROBLEM:</p>
<p>I have an object called &#8220;TeamVO&#8221; it looks like this</p>
<ul>
<li>TeamVO
<ul>
<li>TeamName:String</li>
<li>TeamID:Number</li>
</ul>
</li>
</ul>
<p><code>teamVO:TeamVO = new TeamVO;<br />
teamVO.teamName = "Jakes's Team";</code></p>
<p>When I insert that into the db, I always get errors back&#8230; so we (by we I mean <a href="http://reynacho.net" target="_blank">Jake Churchill </a>) came up with a function to handle that for use&#8230; this will only work if your using objects like we are, but more than likely you are&#8230; if not, you can still use the replace statment in it.</p>
<p><code>/**<br />
* this escapes single ticks so they can be stored in the DB correctly<br />
**/<br />
public function escapeStrings( value:Object ):Object<br />
{<br />
// get object details<br />
var objectDescription:XML = flash.utils.describeType(value);<br />
// get object properties as XMLList<br />
var objectProperties:XMLList = new XMLList(objectDescription.accessor);<br />
// create a new object to store modified data in<br />
var newVal:Object = new Object();</code></p>
<p>// loop over all properties<br />
for( var x:uint = 0; x &lt; objectProperties.length(); x++ )<br />
{<br />
// if the property is a string, escape single ticks<br />
if( objectDescription.accessor[x].@type == &#8220;String&#8221; )<br />
{<br />
newVal[objectDescription.accessor[x].@name] = String(value[objectDescription.accessor[x].@name]).replace(&#8217;\&#8221;,&#8217;\'\&#8221;);<br />
}<br />
// otherwise just grab the value of the property as it is<br />
else<br />
{<br />
newVal[objectDescription.accessor[x].@name] = value[objectDescription.accessor[x].@name];<br />
}<br />
}</p>
<p>// return new value<br />
return newVal;<br />
}</p>
<p>this function loops of the properties of an object, finds out if it&#8217;s a string, and replaces the single ticks with something acceptable in the db&#8230; </p>
]]></content:encoded>
			<wfw:commentRss>http://www.axelscript.com/2008/08/26/single-tick-issues-with-air/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.axelscript.com/2008/08/26/single-tick-issues-with-air/</feedburner:origLink></item>
	</channel>
</rss>
