<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	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:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>James Ward &#187; LCDS</title>
	<atom:link href="http://www.jamesward.com/category/lcds/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jamesward.com</link>
	<description>Heroku &#124; Java &#124; Scala &#124; Cloud &#124; Open Source &#124; Linux</description>
	<lastBuildDate>Fri, 03 Feb 2012 19:29:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>My Video from MAX 2009 &#8211; Introduction to BlazeDS and LCDS</title>
		<link>http://www.jamesward.com/2009/11/04/my-video-from-max-2009-introduction-to-blazeds-and-lcds/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=my-video-from-max-2009-introduction-to-blazeds-and-lcds</link>
		<comments>http://www.jamesward.com/2009/11/04/my-video-from-max-2009-introduction-to-blazeds-and-lcds/#comments</comments>
		<pubDate>Wed, 04 Nov 2009 16:25:23 +0000</pubDate>
		<dc:creator>James Ward</dc:creator>
				<category><![CDATA[BlazeDS]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[LCDS]]></category>

		<guid isPermaLink="false">http://www.jamesward.com/blog/?p=1268</guid>
		<description><![CDATA[Here is the video of my session from MAX 2009 &#8211; Introduction to BlazeDS and LCDS. In this session I walk through the basics of connecting Flex applications to BlazeDS and LCDS. Let me know what you think!]]></description>
			<content:encoded><![CDATA[<p>Here is the video of my session from MAX 2009 &#8211; Introduction to BlazeDS and LCDS.  In this session I walk through the basics of connecting Flex applications to BlazeDS and LCDS.  Let me know what you think!</p>
<p><object width='480' height='360'><param name='movie' value='http://max.adobe.com/video/AdobeMaxPlayer.swf'><param name='flashvars' value='start=0&#038;xml=http%3A//2009.max.adobe.com/video/xml/26.xml&#038;twitterHash=adobemax26&#038;longID=38f90275-4f7f-4c9e-9456-a87ae4428a8a&#038;mode=blogAudioAndSlides&#038;shareURL=http://2009.max.adobe.com/online/session/'></param><param name='allowFullScreen' value='true'></param><param name='allowscriptaccess' value='always'></param><embed src='http://max.adobe.com/video/AdobeMaxPlayer.swf' type='application/x-shockwave-flash' allowscriptaccess='always' allowfullscreen='true' flashvars='start=0&#038;xml=http%3A//2009.max.adobe.com/video/xml/26.xml&#038;twitterHash=adobemax26&#038;longID=38f90275-4f7f-4c9e-9456-a87ae4428a8a&#038;mode=blogAudioAndSlides&#038;shareURL=http://2009.max.adobe.com/online/session/' width='480' height='360'></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jamesward.com/2009/11/04/my-video-from-max-2009-introduction-to-blazeds-and-lcds/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Adobe and Salesforce.com Unite RIA and The Cloud</title>
		<link>http://www.jamesward.com/2009/10/26/adobe-and-salesforce-com-unite-ria-and-the-cloud/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=adobe-and-salesforce-com-unite-ria-and-the-cloud</link>
		<comments>http://www.jamesward.com/2009/10/26/adobe-and-salesforce-com-unite-ria-and-the-cloud/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 16:17:03 +0000</pubDate>
		<dc:creator>James Ward</dc:creator>
				<category><![CDATA[Flex]]></category>
		<category><![CDATA[LCDS]]></category>
		<category><![CDATA[RIA]]></category>
		<category><![CDATA[Salesforce.com]]></category>

		<guid isPermaLink="false">http://www.jamesward.com/blog/?p=1270</guid>
		<description><![CDATA[The two major trends transforming software right now are Rich Internet Applications (RIAs) and Cloud Computing / Software as a Service (SaaS or PaaS). These trends are driven by two needs: Full client capabilities, which allow software to perform optimally and increase usability Easy deployment, which allows developers to focus on business needs instead of [...]]]></description>
			<content:encoded><![CDATA[<p>The two major trends transforming software right now are Rich Internet Applications (RIAs) and Cloud Computing / Software as a Service (SaaS or PaaS).  These trends are driven by two needs:</p>
<ul>
<li>Full client capabilities, which allow software to perform optimally and increase usability
<li>
<li>Easy deployment, which allows developers to focus on business needs instead of building infrastructure</li>
</ul>
<p>The combination of RIA and Cloud is the future of software because it provides full client capabilities and easy deployment.  The chart below illustrates this in comparison to the other major software architectures (main-frame, client / server, and web).</p>
<p><img src="http://www.jamesward.com/blog/wp-content/uploads/2009/10/RIA.png" alt="RIA" title="RIA" width="600" height="370" class="alignnone size-full wp-image-1272" /></p>
<p>In line with these trends Adobe and Salesforce.com <a href="http://bit.ly/w29bL">announced today</a> that they are working together to unite Rich Internet Applications and The Cloud.  At the core of this announcement is a developer preview of the <a href="http://developer.force.com/flashbuilder">Adobe Flash Builder for Force.com</a> tool.  This tool enables developers to easily build intuitive user interfaces with Flex which connect to the Force.com cloud platform and Salesforce.com CRM data.  These applications can be deployed either in the browser or on the desktop using Adobe AIR.  When utilizing Adobe AIR, the applications can still function when users are disconnected.  Later, when users reconnect, the changes are synchronized with Force.com using the LiveCycle Data Services synchronization engine.</p>
<p>Being able to connect Flex applications to Salesforce.com / Force.com has been possible (and easy) since I co-created what was originally called the <a href="http://www.jamesward.com/blog/2007/04/17/the-open-source-flex-and-apollo-toolkit-for-salesforcecom/">Flex Toolkit for Apex</a>.  So while it has been possible to build Rich Cloud Applications for a few years, today&#8217;s announcement is significant for a few reasons:</p>
<ul>
<li>Adobe and Salesforce are now officially partnered together around Rich Cloud Applications</li>
<li>Much better, officially supported developer tooling</li>
<li>Much better offline data synchronization</li>
</ul>
<p>It&#8217;s really exciting to see how the vision of Rich Cloud Applications is becoming reality!</p>
<p>If you&#8217;d like to learn more or try out the new tooling check out these resources:</p>
<ul>
<li><a href="http://developer.force.com/flashbuilder">Get the developer preview and watch video demos</a></li>
<li><a href="http://www.adobe.com/devnet/salesforce/index.html?devcon=f1">Get inspired and see how it works</a></li>
<li><a href="http://www.youtube.com/watch?v=vUsC8sdJaE0">Watch a video walk-through</a></li>
</ul>
<p>Another great way to learn more is to sign up for a <a href="https://www.developerforce.com/events/flashbuilder_webinar/registration.php?d=70130000000EuzT">Webinar / Tech Talk</a> that I will be co-presenting.</p>
<p>Let me know what you think about this exciting new partnership and developer tooling.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jamesward.com/2009/10/26/adobe-and-salesforce-com-unite-ria-and-the-cloud/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>My MAX 2009 Sessions</title>
		<link>http://www.jamesward.com/2009/09/01/my-max-2009-sessions/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=my-max-2009-sessions</link>
		<comments>http://www.jamesward.com/2009/09/01/my-max-2009-sessions/#comments</comments>
		<pubDate>Tue, 01 Sep 2009 17:09:16 +0000</pubDate>
		<dc:creator>James Ward</dc:creator>
				<category><![CDATA[Adobe AIR]]></category>
		<category><![CDATA[Augmented Reality]]></category>
		<category><![CDATA[BlazeDS]]></category>
		<category><![CDATA[Conferences]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[LCDS]]></category>

		<guid isPermaLink="false">http://www.jamesward.com/blog/?p=1148</guid>
		<description><![CDATA[MAX 2009 is coming fast! It&#8217;s going to be another great event with tons of great speakers and after party fun. Here are my sessions this year: Introduction to BlazeDS and LiveCycle Data Services Designing for Augmented Reality Building Flex and Adobe AIR Service Clients 2009 Flex and Adobe AIR Boot Camp Also Drunk on [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://max.adobe.com/">MAX 2009</a> is coming fast!  It&#8217;s going to be another great event with tons of great speakers and after party fun.  Here are my sessions this year:</p>
<ul>
<li><a href="http://max.adobe.com/scheduler/#view=1;session=38f90275-4f7f-4c9e-9456-a87ae4428a8a">Introduction to BlazeDS and LiveCycle Data Services</a></li>
<li><a href="http://max.adobe.com/scheduler/#view=1;session=3ed8c7b5-d2fc-4572-b4fd-44e7ab9b4da6">Designing for Augmented Reality</a></li>
<li><a href="http://max.adobe.com/scheduler/#view=1;session=51f7122b-42e8-4c10-ad75-d87e7a62aa98">Building Flex and Adobe AIR Service Clients 2009</a></li>
<li><a href="http://max.adobe.com/scheduler/#view=1;session=536613cb-9409-4187-81ec-7d00607c2786">Flex and Adobe AIR Boot Camp</a></li>
</ul>
<p>Also <a href="http://www.drunkonsoftware.com">Drunk on Software</a> will be there filming some episodes.</p>
<p>So this is certainly a MAX you don&#8217;t want to miss!  I hope to see you there!</p>
<p>Also check out the very cool MAX Widget (there are some funny facts about me in there):<br />
<img style="visibility:hidden;width:0px;height:0px;" border=0 width=0 height=0 src="http://counters.gigya.com/wildfire/IMP/CXNID=2000002.0NXC/bT*xJmx*PTEyNTE4MjI2MTI4MzgmcHQ9MTI1MTgyMjYyMjY5NSZwPTc3NDM3MSZkPW1heDA5d2lkZ2V*Jmc9MyZvPTRhYTY5MWUyMDYwZjQ4MzFhNDEyNDg4ZWVlOTMyN2VjJnM9d2Via2l*Y2hlbi5iZSZvZj*w.gif" /><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" id="MaxWidget" width="400" height="400" codebase="http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab"><param name="movie" value="http://max.adobe.com/widget/MaxWidget.swf" /><param name="quality" value="high" /><param name="bgcolor" value="#869ca7" /><param name="allowScriptAccess" value="sameDomain" /><embed src="http://max.adobe.com/widget/MaxWidget.swf" quality="high" bgcolor="#869ca7" width="400" height="400" name="MaxWidget" align="middle" play="true" loop="false" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.adobe.com/go/getflashplayer" FlashVars="crtr=1&#038;gig_lt=1251822612838&#038;gig_pt=1251822622695&#038;gig_g=3&#038;gig_s=webkitchen.be&#038;gig_crtr=1"></embed><param name="FlashVars" value="crtr=1&#038;gig_lt=1251822612838&#038;gig_pt=1251822622695&#038;gig_g=3&#038;gig_s=webkitchen.be&#038;gig_crtr=1" /></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jamesward.com/2009/09/01/my-max-2009-sessions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Protected Messaging in Flex with BlazeDS and LCDS</title>
		<link>http://www.jamesward.com/2009/07/22/protected-messaging-in-flex-with-blazeds-and-lcds/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=protected-messaging-in-flex-with-blazeds-and-lcds</link>
		<comments>http://www.jamesward.com/2009/07/22/protected-messaging-in-flex-with-blazeds-and-lcds/#comments</comments>
		<pubDate>Wed, 22 Jul 2009 15:47:49 +0000</pubDate>
		<dc:creator>James Ward</dc:creator>
				<category><![CDATA[BlazeDS]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[LCDS]]></category>

		<guid isPermaLink="false">http://www.jamesward.com/blog/?p=1068</guid>
		<description><![CDATA[UPDATE: BlazeDS 4 and LCDS 3.1 now have built-in support to disallow subscriptions to wildcard subtopics. Just set the following parameter on the messaging destination&#8217;s server properties: &#60;disallow-wildcard-subtopics&#62;false&#60;/disallow-wildcard-subtopics&#62; You no longer need to use the ProtectedMessagingAdapter from the code examples below in order to protect your messages. One of the great things about Flex is [...]]]></description>
			<content:encoded><![CDATA[<p><font color="red">UPDATE: BlazeDS 4 and LCDS 3.1 now have built-in support to <a href="https://bugs.adobe.com/jira/browse/BLZ-415">disallow subscriptions to wildcard subtopics</a>.  Just set the following parameter on the messaging destination&#8217;s server properties:</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;disallow-wildcard-subtopics<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>false<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/disallow-wildcard-subtopics<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

<p>You no longer need to use the ProtectedMessagingAdapter from the code examples below in order to protect your messages.<br />
</font></p>
<p>One of the great things about Flex is how easy it is to set up publish and subscribe messaging using BlazeDS, LCDS, or other various server technologies.  Basically a Flex application can be either a Consumer of messages from the server, a Producer of messages to the server, or both.  The channels that are used for the actual transport can vary dramatically depending on the needs.  <a href="http://devgirl.wordpress.com/2009/07/14/livecycle-data-services-channels-and-endpoints-explained/">Here is a great blog</a> that explains the different transports.  No matter what transport / channel is used the API in Flex is the same.  If you&#8217;d like to see how to use those APIs check out <a href="http://www.jamesward.com/blog/2008/07/21/video-flex-and-java/">this video</a> I recorded.</p>
<p>Many times with pub/sub messaging the messages should only be sent to a subset of the subscribers.  There are two ways to achieve this in Flex &#8211; either using a subtopic or a selector.  Subtopics allow simple dot separated expressions such as &#8220;stocks.ADBE&#8221; which would allow Flex clients to subscribe to only messages about the ADBE stock.  A Flex client could also subscribe to wild card subtopics like &#8220;stocks.*&#8221; or &#8220;*&#8221;.  The developer usually hard codes the subtopics (if any) that an app will use.</p>
<p>Subtopics seem like a great way to send point-to-point or point-to-group messages.  To send a message to a particular client it&#8217;s as easy as setting the subtopic of the message to a special complex token &#8211; usually a generated UID or the server&#8217;s session ID.  The subscriber then subscribes to a subtopic with that particular complex token and none of the other clients listening on that messaging destination will receive that message.  Or maybe they can&#8230;</p>
<p>A malicious developer could easily determine the endpoint being used by an application.  After discovering this they could also very easily create a Flex application that subscribes to the &#8220;*&#8221; subtopic of a messaging destination.  Then the server would send them ALL of the messages on all of the subtopics for that destination.  Pretty scary stuff.  To see an example of this follow these steps:</p>
<ol>
<li>Open the <a href="http://www.jamesward.com/protectedMessaging/protectedMessaging.html">test application</a></li>
<li>Open the <a href="http://www.jamesward.com/protectedMessaging/HackerApp.html">hacker application</a></li>
<li>Click the send button in the test application</li>
<li>Watch the message appear in the regularDestination output panel of the hacker application</li>
</ol>
<p>Both panels use the same messaging API and same subtopic to send and receive messages.  However the protectedDestination uses a customized Messaging Adapter that doesn&#8217;t allow subscriptions to subtopics containing a wild card (&#8220;*&#8221;).  Here is the Java code for the ProtectedMessagingAdapter:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">package</span> <span style="color: #006699;">com.jamesward</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">flex.messaging.services.messaging.Subtopic</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">flex.messaging.services.messaging.adapters.ActionScriptAdapter</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> ProtectedMessagingAdapter <span style="color: #000000; font-weight: bold;">extends</span> ActionScriptAdapter
<span style="color: #009900;">&#123;</span>
&nbsp;
  <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">boolean</span> allowSubscribe<span style="color: #009900;">&#40;</span>Subtopic subtopic<span style="color: #009900;">&#41;</span>
  <span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">return</span> <span style="color: #339933;">!</span><span style="color: #009900;">&#40;</span>subtopic.<span style="color: #006633;">containsSubtopicWildcard</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Here is an example of how to use the new adapter in the messaging-config.xml file:</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;?xml</span> <span style="color: #000066;">version</span>=<span style="color: #ff0000;">&quot;1.0&quot;</span> <span style="color: #000066;">encoding</span>=<span style="color: #ff0000;">&quot;UTF-8&quot;</span><span style="color: #000000; font-weight: bold;">?&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;service</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;message-service&quot;</span> </span>
<span style="color: #009900;">    <span style="color: #000066;">class</span>=<span style="color: #ff0000;">&quot;flex.messaging.services.MessageService&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
&nbsp;
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;adapters<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;adapter-definition</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;protectedMessagingAdapter&quot;</span> <span style="color: #000066;">class</span>=<span style="color: #ff0000;">&quot;com.jamesward.ProtectedMessagingAdapter&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/adapters<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
&nbsp;
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;default-channels<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;channel</span> <span style="color: #000066;">ref</span>=<span style="color: #ff0000;">&quot;my-polling-amf&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/default-channels<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
&nbsp;
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;destination</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;protectedDestination&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;adapter</span> <span style="color: #000066;">ref</span>=<span style="color: #ff0000;">&quot;protectedMessagingAdapter&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;properties<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;server<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;allow-subtopics<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>true<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/allow-subtopics<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;subtopic-separator<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>.<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/subtopic-separator<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/server<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/properties<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/destination<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
&nbsp;
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/service<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

<p>If you are using subtopics (or selectors) to protect messages from being sent to the wrong people then I highly recommend that you use my ProtectedMessagingAdapter or something else so that malicious hackers can&#8217;t snoop on private messages or send impostor messages.  In my demo I run both the test app and hacker app on the same server but this can be done in other ways (such as proxy servers or local apps).  Also authentication may not protect you because a malicious user might also be an authenticated user.  So the only solution is to really protect destinations from subscriptions to wild card subtopics.</p>
<p>I hope this is helpful for those using messaging.  Let me know what you think.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jamesward.com/2009/07/22/protected-messaging-in-flex-with-blazeds-and-lcds/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Adobe TV &#8211; Data Synchronization with Flex and LCDS</title>
		<link>http://www.jamesward.com/2009/01/27/adobe-tv-data-synchronization-with-flex-and-lcds/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=adobe-tv-data-synchronization-with-flex-and-lcds</link>
		<comments>http://www.jamesward.com/2009/01/27/adobe-tv-data-synchronization-with-flex-and-lcds/#comments</comments>
		<pubDate>Tue, 27 Jan 2009 21:07:00 +0000</pubDate>
		<dc:creator>James Ward</dc:creator>
				<category><![CDATA[Flex]]></category>
		<category><![CDATA[LCDS]]></category>

		<guid isPermaLink="false">http://www.jamesward.com/blog/?p=685</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><embed src="http://tv.adobe.com/Embed.swf" quality="high" bgcolor="#000000" width="600" height="385" name="AdobeTVPlayer" play="true" loop="false" quality="high" allowScriptAccess="always" type="application/x-shockwave-flash" pluginspage="http://www.adobe.com/go/getflashplayer" flashVars="v=~b64~aHR0cDovL2Fkb2JlLmVkZ2Vib3NzLm5ldC9mbGFzaC9hZG9iZS9hZG9iZXR2Mi9hZGNfcHJlc2VudHMvNjRfYWRjXzAwOC5mbHY/cnNzX2ZlZWRpZD0xNDcyJnhtbHZlcnM9Mg==&#038;w=600&#038;t=http://tv.adobe.com/vi+f1472v1514&#038;h=385"></embed></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jamesward.com/2009/01/27/adobe-tv-data-synchronization-with-flex-and-lcds/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>RTMP Spec To Be Opened</title>
		<link>http://www.jamesward.com/2009/01/20/rtmp-spec-to-be-opened/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=rtmp-spec-to-be-opened</link>
		<comments>http://www.jamesward.com/2009/01/20/rtmp-spec-to-be-opened/#comments</comments>
		<pubDate>Tue, 20 Jan 2009 20:14:57 +0000</pubDate>
		<dc:creator>James Ward</dc:creator>
				<category><![CDATA[Flex]]></category>
		<category><![CDATA[LCDS]]></category>

		<guid isPermaLink="false">http://www.jamesward.com/blog/?p=657</guid>
		<description><![CDATA[A little over a year ago Adobe opened the AMF spec. Now Adobe has announced it will be opening the RTMP spec! Wahoo!!! This is big news for Flex developers! For those that don&#8217;t know, RTMP is the streaming protocol used for streaming video and audio in Flash Media Server and for streaming data in [...]]]></description>
			<content:encoded><![CDATA[<p>A little over a year ago Adobe opened the <a href="http://download.macromedia.com/pub/labs/amf/amf3_spec_121207.pdf">AMF spec</a>.  Now Adobe <a href="http://www.adobe.com/aboutadobe/pressroom/pressreleases/200901/012009RTMP.html">has announced</a> it will be opening the RTMP spec!  Wahoo!!!  This is big news for Flex developers!  For those that don&#8217;t know, RTMP is the streaming protocol used for streaming video and audio in Flash Media Server and for streaming data in LiveCycle Data Services.  The spec is expected to be published first half of this year.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jamesward.com/2009/01/20/rtmp-spec-to-be-opened/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Take the Tour de Flex</title>
		<link>http://www.jamesward.com/2008/11/17/take-the-tour-de-flex/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=take-the-tour-de-flex</link>
		<comments>http://www.jamesward.com/2008/11/17/take-the-tour-de-flex/#comments</comments>
		<pubDate>Mon, 17 Nov 2008 17:28:15 +0000</pubDate>
		<dc:creator>James Ward</dc:creator>
				<category><![CDATA[Adobe AIR]]></category>
		<category><![CDATA[BlazeDS]]></category>
		<category><![CDATA[Flash Player]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[LCDS]]></category>

		<guid isPermaLink="false">http://www.jamesward.com/wordpress/?p=556</guid>
		<description><![CDATA[Over the past few months Greg Wilson, Christophe Coenraets, and myself have been hard at work on a secret project. So today we are proud to announce the new Tour de Flex has just gone live! Tour de Flex showcases the capabilities of Flex, BlazeDS, LCDS, Adobe AIR, and Flash Player (now collectively called the [...]]]></description>
			<content:encoded><![CDATA[<p>Over the past few months <a href="http://gregsramblings.com/">Greg Wilson</a>, <a href="http://coenraets.org/">Christophe Coenraets</a>, and myself have been hard at work on a secret project.  So today we are proud to announce the new <a href="http://flex.org/tour">Tour de Flex</a> has just gone live!  Tour de Flex showcases the capabilities of Flex, BlazeDS, LCDS, Adobe AIR, and Flash Player (now collectively called the Adobe Flash Platform).</p>
<p><a href="http://flex.org/tour"><img src="http://flex.org/files/Screenshot_0.png"/></a></p>
<p>Like the old <a href="http://examples.adobe.com/flex3/componentexplorer/explorer.html">Flex Component Explorer</a>, Tour de Flex can be used to find components.  But it goes way beyond just out-of-the-box Flex components.  This first release contains 217 components and samples including popular Cloud APIs like <a href="http://developer.salesforce.com">Salesforce.com</a> and <a href="http://developer.intuit.com">Intuit</a>, numerous community components from people like <a href="http://dougmccune.com/blog/">Doug McCune</a> and <a href="http://tink.ws/blog/">Tink</a>, commercial components from companies like <a href="http://www.ilog.com/products/elixir/">ILog</a>, and numerous other goodies.  If you find something missing you can <a href="http://flex.org/2008/10/31/submit-component-tour-de-flex">submit it</a>!</p>
<p>Also in this release is an Eclipse / Flex Builder plugin which allows you to find components from inside Flex Builder!</p>
<p>We hope the Tour de Flex will provide an easy way for you to find components and see what is great about the Adobe Flash Platform.  Give it a try and let us know what you think!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jamesward.com/2008/11/17/take-the-tour-de-flex/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Podcast about Adobe AIR, Flex and BlazeDS / LCDS</title>
		<link>http://www.jamesward.com/2008/08/28/podcast-about-adobe-air-flex-and-blazeds-lcds/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=podcast-about-adobe-air-flex-and-blazeds-lcds</link>
		<comments>http://www.jamesward.com/2008/08/28/podcast-about-adobe-air-flex-and-blazeds-lcds/#comments</comments>
		<pubDate>Thu, 28 Aug 2008 20:35:05 +0000</pubDate>
		<dc:creator>James Ward</dc:creator>
				<category><![CDATA[Adobe AIR]]></category>
		<category><![CDATA[BlazeDS]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[LCDS]]></category>

		<guid isPermaLink="false">http://www.jamesward.com/wordpress/?p=408</guid>
		<description><![CDATA[A podcast I recently did with Chariot Solutions has just been published. Let me know what you think.]]></description>
			<content:encoded><![CDATA[<p>A podcast I recently did with <a href="http://www.chariotsolutions.com">Chariot Solutions</a> has just been <a href="http://www.chariotsolutions.com/shownotes/show/17">published</a>.  Let me know what you think.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jamesward.com/2008/08/28/podcast-about-adobe-air-flex-and-blazeds-lcds/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Video: Flex and Java</title>
		<link>http://www.jamesward.com/2008/07/21/video-flex-and-java/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=video-flex-and-java</link>
		<comments>http://www.jamesward.com/2008/07/21/video-flex-and-java/#comments</comments>
		<pubDate>Mon, 21 Jul 2008 21:24:03 +0000</pubDate>
		<dc:creator>James Ward</dc:creator>
				<category><![CDATA[BlazeDS]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[LCDS]]></category>

		<guid isPermaLink="false">http://www.jamesward.com/wordpress/?p=303</guid>
		<description><![CDATA[Here is the recording of a presentation I gave at the NLJUG a few weeks ago on Flex and Java. I hope you find this useful. Let me know what you think.]]></description>
			<content:encoded><![CDATA[<p>Here is the recording of a presentation I gave at the NLJUG a few weeks ago on Flex and Java.  I hope you find this useful.  Let me know what you think.</p>
<p><object width="640" height="498"><param name="movie" value="http://content.screencast.com/users/jlward4th/folders/Default/media/71c196a4-a60d-4e13-b075-63b516a244f3/bootstrap.swf"></param><param name="quality" value="high"></param><param name="bgcolor" value="#FFFFFF"></param><param name="flashVars" value="thumb=http://content.screencast.com/users/jlward4th/folders/Default/media/71c196a4-a60d-4e13-b075-63b516a244f3/FirstFrame.jpg&#038;containerwidth=640&#038;containerheight=498&#038;content=http://content.screencast.com/users/jlward4th/folders/Default/media/71c196a4-a60d-4e13-b075-63b516a244f3/flex_and_java.swf"></param><param name="allowFullScreen" value="true"></param><param name="scale" value="showall"></param><param name="allowScriptAccess" value="always"></param><param name="base" value="http://content.screencast.com/users/jlward4th/folders/Default/media/71c196a4-a60d-4e13-b075-63b516a244f3/"></param>  <embed src="http://content.screencast.com/users/jlward4th/folders/Default/media/71c196a4-a60d-4e13-b075-63b516a244f3/bootstrap.swf" quality="high" bgcolor="#FFFFFF" width="640" height="498" type="application/x-shockwave-flash" allowScriptAccess="always" flashVars="thumb=http://content.screencast.com/users/jlward4th/folders/Default/media/71c196a4-a60d-4e13-b075-63b516a244f3/FirstFrame.jpg&#038;containerwidth=640&#038;containerheight=498&#038;content=http://content.screencast.com/users/jlward4th/folders/Default/media/71c196a4-a60d-4e13-b075-63b516a244f3/flex_and_java.swf" allowFullScreen="true" base="http://content.screencast.com/users/jlward4th/folders/Default/media/71c196a4-a60d-4e13-b075-63b516a244f3/" scale="showall"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jamesward.com/2008/07/21/video-flex-and-java/feed/</wfw:commentRss>
		<slash:comments>66</slash:comments>
		</item>
		<item>
		<title>Article &amp; Videos on Integrating Flex and Java</title>
		<link>http://www.jamesward.com/2008/07/09/article-videos-on-integrating-flex-and-java/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=article-videos-on-integrating-flex-and-java</link>
		<comments>http://www.jamesward.com/2008/07/09/article-videos-on-integrating-flex-and-java/#comments</comments>
		<pubDate>Wed, 09 Jul 2008 20:38:48 +0000</pubDate>
		<dc:creator>James Ward</dc:creator>
				<category><![CDATA[BlazeDS]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[LCDS]]></category>

		<guid isPermaLink="false">http://www.jamesward.com/wordpress/?p=293</guid>
		<description><![CDATA[This week I&#8217;m in Europe speaking at various Java User Groups about integrating Flex and Java. I tend to move quickly through code demos so many people have asked me how they can continue learning. Here are a few resources to get you started: InfoQ Article: Building Web and Desktop Applications with BlazeDS and AMF [...]]]></description>
			<content:encoded><![CDATA[<p>This week I&#8217;m in Europe <a href="http://www.jamesward.com/wordpress/2008/07/07/europe_jug_tour/">speaking at various Java User Groups</a> about integrating Flex and Java.  I tend to move quickly through code demos so many people have asked me how they can continue learning.  Here are a few resources to get you started:</p>
<p>InfoQ Article: <a href="http://www.infoq.com/articles/blazeds-intro">Building Web and Desktop Applications with BlazeDS and AMF</a></p>
<p>Adobe TV Video: <a href="http://tv.adobe.com/#v=http%3A//adobe.edgeboss.net/flash/adobe/adobetvprod/adc_presents/64_adc_010.flv%3Frss_feedid%3D1216%26xmlvers%3D2">Flex Messaging Service</a></p>
<p>Adobe TV Video: <a href="http://tv.adobe.com/#v=http%3A//adobe.edgeboss.net/flash/adobe/adobetvprod/adc_presents/64_adc_008.flv%3Frss_feedid%3D1216%26xmlvers%3D2">The Data Management Service in LiveCycle Data Services</a></p>
<p>Email List: <a href="http://tech.groups.yahoo.com/group/javaflexcoders/">JavaFlexCoders Yahoo! Group</a></p>
<p><a href="http://opensource.adobe.com/wiki/display/blazeds/BlazeDS">BlazeDS</a></p>
<p><a href="http://labs.adobe.com/technologies/livecycle_dataservices2_6/">LiveCycle Data Services 2.6 Beta</a></p>
<p>Hopefully that is enough to get you started.  Have fun and let me know how it goes!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jamesward.com/2008/07/09/article-videos-on-integrating-flex-and-java/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

