<?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>Christophe Coenraets&#187; LiveCycle Data Services</title>
	<atom:link href="http://coenraets.org/blog/category/livecycle-data-services/feed/" rel="self" type="application/rss+xml" />
	<link>http://coenraets.org/blog</link>
	<description>Mobile, Cloud, HTML, JavaScript, Java, PHP, Flex</description>
	<lastBuildDate>Wed, 16 May 2012 19:36:45 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Real Time Trader Desktop for Android Updated</title>
		<link>http://coenraets.org/blog/2010/09/real-time-trader-desktop-for-android-updated/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=real-time-trader-desktop-for-android-updated</link>
		<comments>http://coenraets.org/blog/2010/09/real-time-trader-desktop-for-android-updated/#comments</comments>
		<pubDate>Thu, 02 Sep 2010 18:10:40 +0000</pubDate>
		<dc:creator>Christophe</dc:creator>
				<category><![CDATA[Air]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[LiveCycle Data Services]]></category>

		<guid isPermaLink="false">http://coenraets.org/blog/?p=1009</guid>
		<description><![CDATA[I updated my Real Time Trader Desktop for Android sample application to work with the latest AIR for Android build (8/26/2010). To make it easier to find the latest version of the application, I also created a project page for the application where you will always be able to download the lastest build. That way [...]
	
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/?status=RT @ Real Time Trader Desktop for Android Updated http://coenraets.org/blog/?p=1009" target="_blank">Retweet this</a>
<!-- End WP Socializer Plugin - Retweet Button -->

	
	
<!-- Start WP Socializer Plugin - Facebook Button -->
<a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fcoenraets.org%2Fblog%2F2010%2F09%2Freal-time-trader-desktop-for-android-updated%2F" target="_blank">Share on Facebook</a>
<!-- End WP Socializer Plugin - Facebook Button -->



Follow @ccoenraets
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
]]></description>
			<content:encoded><![CDATA[<p>I updated my <em>Real Time Trader Desktop for Android</em> sample application to work with the latest AIR for Android build (8/26/2010). To make it easier to find the latest version of the application, I also created a <a href="http://coenraets.org/blog/air-for-android-samples/real-time-trader-desktop-for-android/">project page</a> for the application where you will always be able to download the lastest build. That way you won&#8217;t have to skim through blog posts to make sure you found the latest one.</p>
<p>Both the apk file and the source code are available for download on the project page.</p>
<p>
	<span class="margin5">
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal"  data-lang="en"  data-url="http://coenraets.org/blog/2010/09/real-time-trader-desktop-for-android-updated/"></a>
<!-- End WP Socializer Plugin - Retweet Button -->
</span>
	<span class="margin5">
<!-- Start WP Socializer Plugin - +1 Button -->
<g:plusone size="medium" href="http://coenraets.org/blog/2010/09/real-time-trader-desktop-for-android-updated/" ></g:plusone>
<!-- End WP Socializer Plugin - +1 Button -->
</span>
	<span class="margin5">
<!-- Start WP Socializer Plugin - Facebook Button -->
<iframe src="http://www.facebook.com/plugins/like.php?&amp;href=http://coenraets.org/blog/2010/09/real-time-trader-desktop-for-android-updated/&amp;layout=button_count&amp;show_faces=0&amp;width=80&amp;action=like&amp;font=arial&amp;colorscheme=light&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:80px; height:21px;" allowTransparency="true"></iframe>
<!-- End WP Socializer Plugin - Facebook Button -->
</span>
</p>
<p>
<a href="https://twitter.com/ccoenraets" class="twitter-follow-button" data-show-count="false" data-lang="en" data-size="large">Follow @ccoenraets</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
</p>
	
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/?status=RT @ Real Time Trader Desktop for Android Updated http://coenraets.org/blog/?p=1009" target="_blank">Retweet this</a>
<!-- End WP Socializer Plugin - Retweet Button -->

	
	
<!-- Start WP Socializer Plugin - Facebook Button -->
<a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fcoenraets.org%2Fblog%2F2010%2F09%2Freal-time-trader-desktop-for-android-updated%2F" target="_blank">Share on Facebook</a>
<!-- End WP Socializer Plugin - Facebook Button -->



Follow @ccoenraets
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
]]></content:encoded>
			<wfw:commentRss>http://coenraets.org/blog/2010/09/real-time-trader-desktop-for-android-updated/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Spring/BlazeDS Integration Test Drive: M2 Update Available</title>
		<link>http://coenraets.org/blog/2009/03/springblazeds-integration-test-drive-m2-update-available/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=springblazeds-integration-test-drive-m2-update-available</link>
		<comments>http://coenraets.org/blog/2009/03/springblazeds-integration-test-drive-m2-update-available/#comments</comments>
		<pubDate>Wed, 11 Mar 2009 13:50:50 +0000</pubDate>
		<dc:creator>Christophe</dc:creator>
				<category><![CDATA[Flex]]></category>
		<category><![CDATA[LiveCycle Data Services]]></category>

		<guid isPermaLink="false">http://coenraets.org/blog/?p=110</guid>
		<description><![CDATA[UPDATE: This version of the Test Drive is now obsolete. I posted a new version of the Test Drive for the RC1 build of the Spring / BlazeDS integration project here. I updated my Test Drive for the M2 build of the Spring / BlazeDS integration project. The Test Drive now includes a sample demonstrating [...]
	
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/?status=RT @ Spring/BlazeDS Integration Test Drive: M2 Update Available http://coenraets.org/blog/?p=110" target="_blank">Retweet this</a>
<!-- End WP Socializer Plugin - Retweet Button -->

	
	
<!-- Start WP Socializer Plugin - Facebook Button -->
<a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fcoenraets.org%2Fblog%2F2009%2F03%2Fspringblazeds-integration-test-drive-m2-update-available%2F" target="_blank">Share on Facebook</a>
<!-- End WP Socializer Plugin - Facebook Button -->



Follow @ccoenraets
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
]]></description>
			<content:encoded><![CDATA[<p><strong>UPDATE: This version of the Test Drive is now obsolete. I posted a new version of the Test Drive for the RC1 build of the Spring / BlazeDS integration project <a href="http://coenraets.org/blog/2009/05/new-test-drive-for-spring-blazeds-integration-rc1/">here</a>.</strong></p>
<p>I updated my <a href="http://coenraets.org/blog/2009/01/new-springblazeds-integration-test-drive/">Test Drive</a> for the M2 build of the <a href="http://www.springsource.org/spring-flex">Spring / BlazeDS integration project</a>.</p>
<p>The Test Drive now includes a sample demonstrating the integration with Spring Security (the key new feature in M2). The Spring configuration file has also been updated to use the new simplified XML-namespace-based configuration.</p>
<h3>Installation Instructions:</h3>
<ol>
<li>Download the Spring / Flex TestDrive here: <a href="http://coenraets.org/downloads/spring-flex-testdrive-M2.zip">http://coenraets.org/downloads/spring-flex-testdrive-M2.zip</a></li>
<li>Unzip it in your root directory</li>
<li>Navigate to /spring-flex-testdrive/tomcat/bin and start Tomcat (for instance: catalina run)</li>
<li>Open a browser and access http://localhost:8080</li>
<li>Follow the instructions</li>
</ol>
<p>As always, I&#8217;d love to hear your feedback and your ideas to improve this Test Drive.</p>
<p>Christophe</p>
<p>
	<span class="margin5">
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal"  data-lang="en"  data-url="http://coenraets.org/blog/2009/03/springblazeds-integration-test-drive-m2-update-available/"></a>
<!-- End WP Socializer Plugin - Retweet Button -->
</span>
	<span class="margin5">
<!-- Start WP Socializer Plugin - +1 Button -->
<g:plusone size="medium" href="http://coenraets.org/blog/2009/03/springblazeds-integration-test-drive-m2-update-available/" ></g:plusone>
<!-- End WP Socializer Plugin - +1 Button -->
</span>
	<span class="margin5">
<!-- Start WP Socializer Plugin - Facebook Button -->
<iframe src="http://www.facebook.com/plugins/like.php?&amp;href=http://coenraets.org/blog/2009/03/springblazeds-integration-test-drive-m2-update-available/&amp;layout=button_count&amp;show_faces=0&amp;width=80&amp;action=like&amp;font=arial&amp;colorscheme=light&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:80px; height:21px;" allowTransparency="true"></iframe>
<!-- End WP Socializer Plugin - Facebook Button -->
</span>
</p>
<p>
<a href="https://twitter.com/ccoenraets" class="twitter-follow-button" data-show-count="false" data-lang="en" data-size="large">Follow @ccoenraets</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
</p>
	
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/?status=RT @ Spring/BlazeDS Integration Test Drive: M2 Update Available http://coenraets.org/blog/?p=110" target="_blank">Retweet this</a>
<!-- End WP Socializer Plugin - Retweet Button -->

	
	
<!-- Start WP Socializer Plugin - Facebook Button -->
<a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fcoenraets.org%2Fblog%2F2009%2F03%2Fspringblazeds-integration-test-drive-m2-update-available%2F" target="_blank">Share on Facebook</a>
<!-- End WP Socializer Plugin - Facebook Button -->



Follow @ccoenraets
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
]]></content:encoded>
			<wfw:commentRss>http://coenraets.org/blog/2009/03/springblazeds-integration-test-drive-m2-update-available/feed/</wfw:commentRss>
		<slash:comments>43</slash:comments>
		</item>
		<item>
		<title>My New Adobe TV Episode: Model-Driven Development in Flex Builder 4 and LCDS &quot;Next&quot;</title>
		<link>http://coenraets.org/blog/2009/02/my-new-adobe-tv-episode-model-driven-development-in-flex-builder-4-and-lcds-next/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=my-new-adobe-tv-episode-model-driven-development-in-flex-builder-4-and-lcds-next</link>
		<comments>http://coenraets.org/blog/2009/02/my-new-adobe-tv-episode-model-driven-development-in-flex-builder-4-and-lcds-next/#comments</comments>
		<pubDate>Wed, 18 Feb 2009 14:53:18 +0000</pubDate>
		<dc:creator>Christophe</dc:creator>
				<category><![CDATA[Flex]]></category>
		<category><![CDATA[LiveCycle Data Services]]></category>

		<guid isPermaLink="false">http://coenraets.org/blog/?p=104</guid>
		<description><![CDATA[Using Adobe Flex Builder 4 and LCDS &#8220;Next&#8221;, you will be able to build data-driven applications using a Model-Driven Development approach. In this Adobe TV episode, I give a sneak peek of this new feature. Follow @ccoenraets
	
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/?status=RT @ My New Adobe TV Episode: Model-Driven Development in Flex Builder 4 and LCDS &quot;Next&quot; http://coenraets.org/blog/?p=104" target="_blank">Retweet this</a>
<!-- End WP Socializer Plugin - Retweet Button -->

	
	
<!-- Start WP Socializer Plugin - Facebook Button -->
<a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fcoenraets.org%2Fblog%2F2009%2F02%2Fmy-new-adobe-tv-episode-model-driven-development-in-flex-builder-4-and-lcds-next%2F" target="_blank">Share on Facebook</a>
<!-- End WP Socializer Plugin - Facebook Button -->



Follow @ccoenraets
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
]]></description>
			<content:encoded><![CDATA[<p>Using Adobe Flex Builder 4 and LCDS &#8220;Next&#8221;, you will be able to build data-driven applications using a Model-Driven Development approach. In this Adobe TV episode, I give a sneak peek of this new feature.</p>
<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~aHR0cDovL2Fkb2JlLmVkZ2Vib3NzLm5ldC9mbGFzaC9hZG9iZS9hZG9iZXR2Mi9hZGNfcHJlc2VudHMvNjRfYWRjXzA4OC5mbHY/cnNzX2ZlZWRpZD0xNDcyJnhtbHZlcnM9Mg==&#038;w=600&#038;t=http://tv.adobe.com/#vi+f1472v1052&#038;h=385"></embed></p>
<p>
	<span class="margin5">
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal"  data-lang="en"  data-url="http://coenraets.org/blog/2009/02/my-new-adobe-tv-episode-model-driven-development-in-flex-builder-4-and-lcds-next/"></a>
<!-- End WP Socializer Plugin - Retweet Button -->
</span>
	<span class="margin5">
<!-- Start WP Socializer Plugin - +1 Button -->
<g:plusone size="medium" href="http://coenraets.org/blog/2009/02/my-new-adobe-tv-episode-model-driven-development-in-flex-builder-4-and-lcds-next/" ></g:plusone>
<!-- End WP Socializer Plugin - +1 Button -->
</span>
	<span class="margin5">
<!-- Start WP Socializer Plugin - Facebook Button -->
<iframe src="http://www.facebook.com/plugins/like.php?&amp;href=http://coenraets.org/blog/2009/02/my-new-adobe-tv-episode-model-driven-development-in-flex-builder-4-and-lcds-next/&amp;layout=button_count&amp;show_faces=0&amp;width=80&amp;action=like&amp;font=arial&amp;colorscheme=light&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:80px; height:21px;" allowTransparency="true"></iframe>
<!-- End WP Socializer Plugin - Facebook Button -->
</span>
</p>
<p>
<a href="https://twitter.com/ccoenraets" class="twitter-follow-button" data-show-count="false" data-lang="en" data-size="large">Follow @ccoenraets</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
</p>
	
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/?status=RT @ My New Adobe TV Episode: Model-Driven Development in Flex Builder 4 and LCDS &quot;Next&quot; http://coenraets.org/blog/?p=104" target="_blank">Retweet this</a>
<!-- End WP Socializer Plugin - Retweet Button -->

	
	
<!-- Start WP Socializer Plugin - Facebook Button -->
<a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fcoenraets.org%2Fblog%2F2009%2F02%2Fmy-new-adobe-tv-episode-model-driven-development-in-flex-builder-4-and-lcds-next%2F" target="_blank">Share on Facebook</a>
<!-- End WP Socializer Plugin - Facebook Button -->



Follow @ccoenraets
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
]]></content:encoded>
			<wfw:commentRss>http://coenraets.org/blog/2009/02/my-new-adobe-tv-episode-model-driven-development-in-flex-builder-4-and-lcds-next/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Tour of California 2009 with Lance Armstrong, Flex and LiveCycle Data Services</title>
		<link>http://coenraets.org/blog/2009/02/tour-of-california-2009-with-lance-armstrong-flex-and-livecycle-data-services/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tour-of-california-2009-with-lance-armstrong-flex-and-livecycle-data-services</link>
		<comments>http://coenraets.org/blog/2009/02/tour-of-california-2009-with-lance-armstrong-flex-and-livecycle-data-services/#comments</comments>
		<pubDate>Fri, 13 Feb 2009 20:32:06 +0000</pubDate>
		<dc:creator>Christophe</dc:creator>
				<category><![CDATA[Flex]]></category>
		<category><![CDATA[LiveCycle Data Services]]></category>

		<guid isPermaLink="false">http://coenraets.org/blog/?p=102</guid>
		<description><![CDATA[The 2009 edition of the Tour of California starts tomorrow. For the third consecutive year, you will be able to follow the race live using the Adobe Tour Tracker. Read the press release here. I wrote about the initial implementation of the LCDS backend back in 2007. This write-up is now a little dated but [...]
	
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/?status=RT @ Tour of California 2009 with Lance Armstrong, Flex and LiveCycle Data Services http://coenraets.org/blog/?p=102" target="_blank">Retweet this</a>
<!-- End WP Socializer Plugin - Retweet Button -->

	
	
<!-- Start WP Socializer Plugin - Facebook Button -->
<a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fcoenraets.org%2Fblog%2F2009%2F02%2Ftour-of-california-2009-with-lance-armstrong-flex-and-livecycle-data-services%2F" target="_blank">Share on Facebook</a>
<!-- End WP Socializer Plugin - Facebook Button -->



Follow @ccoenraets
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
]]></description>
			<content:encoded><![CDATA[<p>The 2009 edition of the <a href="http://www.amgentourofcalifornia.com/">Tour of California</a> starts tomorrow. For the third consecutive year, you will be able to follow the race live using the <a href="http://tracker.amgentourofcalifornia.com/">Adobe Tour Tracker</a>.</p>
<p><img src="http://coenraets.org/downloads/toc.gif"/></p>
<p>Read the press release <a href="http://biz.yahoo.com/bw/090213/20090212006514.html?.v=1">here</a>.</p>
<p>I <a href="http://coenraets.org/blog/2007/02/building-the-back-end-of-the-tour-of-california-%E2%80%9Ctour-tracker%E2%80%9D-using-flex-data-services/">wrote about</a> the initial implementation of the LCDS backend back in 2007. This write-up is now a little dated but still provides a high level overview of how LCDS is being used.</p>
<p>Start the <a href="http://tracker.amgentourofcalifornia.com/">Adobe Tour Tracker</a>.</p>
<p></p>
<p>
	<span class="margin5">
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal"  data-lang="en"  data-url="http://coenraets.org/blog/2009/02/tour-of-california-2009-with-lance-armstrong-flex-and-livecycle-data-services/"></a>
<!-- End WP Socializer Plugin - Retweet Button -->
</span>
	<span class="margin5">
<!-- Start WP Socializer Plugin - +1 Button -->
<g:plusone size="medium" href="http://coenraets.org/blog/2009/02/tour-of-california-2009-with-lance-armstrong-flex-and-livecycle-data-services/" ></g:plusone>
<!-- End WP Socializer Plugin - +1 Button -->
</span>
	<span class="margin5">
<!-- Start WP Socializer Plugin - Facebook Button -->
<iframe src="http://www.facebook.com/plugins/like.php?&amp;href=http://coenraets.org/blog/2009/02/tour-of-california-2009-with-lance-armstrong-flex-and-livecycle-data-services/&amp;layout=button_count&amp;show_faces=0&amp;width=80&amp;action=like&amp;font=arial&amp;colorscheme=light&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:80px; height:21px;" allowTransparency="true"></iframe>
<!-- End WP Socializer Plugin - Facebook Button -->
</span>
</p>
<p>
<a href="https://twitter.com/ccoenraets" class="twitter-follow-button" data-show-count="false" data-lang="en" data-size="large">Follow @ccoenraets</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
</p>
	
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/?status=RT @ Tour of California 2009 with Lance Armstrong, Flex and LiveCycle Data Services http://coenraets.org/blog/?p=102" target="_blank">Retweet this</a>
<!-- End WP Socializer Plugin - Retweet Button -->

	
	
<!-- Start WP Socializer Plugin - Facebook Button -->
<a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fcoenraets.org%2Fblog%2F2009%2F02%2Ftour-of-california-2009-with-lance-armstrong-flex-and-livecycle-data-services%2F" target="_blank">Share on Facebook</a>
<!-- End WP Socializer Plugin - Facebook Button -->



Follow @ccoenraets
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
]]></content:encoded>
			<wfw:commentRss>http://coenraets.org/blog/2009/02/tour-of-california-2009-with-lance-armstrong-flex-and-livecycle-data-services/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Salesbuilder 1.5 with new AIR 1.5 Database Encryption</title>
		<link>http://coenraets.org/blog/2008/11/salesbuilder-15-with-new-air-15-database-encryption/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=salesbuilder-15-with-new-air-15-database-encryption</link>
		<comments>http://coenraets.org/blog/2008/11/salesbuilder-15-with-new-air-15-database-encryption/#comments</comments>
		<pubDate>Mon, 17 Nov 2008 14:22:25 +0000</pubDate>
		<dc:creator>Christophe</dc:creator>
				<category><![CDATA[Air]]></category>
		<category><![CDATA[Collaboration]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[LiveCycle Data Services]]></category>
		<category><![CDATA[MAX]]></category>

		<guid isPermaLink="false">http://coenraets.org/blog/?p=88</guid>
		<description><![CDATA[As you probably already know, AIR 1.5 is now available. New features include database encryption, Flash Player 10 support, and an updated version of WebKit. I updated my Salesbuilder sample application to leverage the AIR 1.5 capabilities. Salesbuilder 1.5 leverages the new database encryption feature to allow you to secure your local database. The first [...]
	
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/?status=RT @ Salesbuilder 1.5 with new AIR 1.5 Database Encryption http://coenraets.org/blog/?p=88" target="_blank">Retweet this</a>
<!-- End WP Socializer Plugin - Retweet Button -->

	
	
<!-- Start WP Socializer Plugin - Facebook Button -->
<a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fcoenraets.org%2Fblog%2F2008%2F11%2Fsalesbuilder-15-with-new-air-15-database-encryption%2F" target="_blank">Share on Facebook</a>
<!-- End WP Socializer Plugin - Facebook Button -->



Follow @ccoenraets
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
]]></description>
			<content:encoded><![CDATA[<p>As you probably already know, <a href="http://www.adobe.com/devnet/logged_in/rchristensen_lpolanco_air_1.5.html">AIR 1.5</a> is now available. New features include database encryption, Flash Player 10 support, and an updated version of WebKit.</p>
<p><img src='http://coenraets.org/salesbuilder/salesbuilder15.jpg' alt='' class='alignnone' /></p>
<p>I updated my Salesbuilder sample application to leverage the AIR 1.5 capabilities. Salesbuilder 1.5 leverages the new database encryption feature to allow you to secure your local database.</p>
<p>The first time you start Salesbuilder, the application will generate the encrypted database on your local file system. Salesbuilder implements the key generation approach described in the section <a href="http://help.adobe.com/en_US/AIR/1.5/devappsflex/WS8AFC5E35-DC79-4082-9AD4-DE1A2B41DAAF.html">Using encryption with SQL databases in the manual Developing Adobe AIR Applications</a>. The encryption key is based on a password provided by you and a SALT generated by the system.</p>
<p>You can install the new version and download the source code <a href="http://www.adobe.com/devnet/air/flex/samples.html#salesbuilder">here</a>.</p>
<p>A basic script explaining how to use the application is available <a href="http://www.adobe.com/devnet/air/flex/articles/salesbuilder_demo.html">here</a>.</p>
<p>
	<span class="margin5">
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal"  data-lang="en"  data-url="http://coenraets.org/blog/2008/11/salesbuilder-15-with-new-air-15-database-encryption/"></a>
<!-- End WP Socializer Plugin - Retweet Button -->
</span>
	<span class="margin5">
<!-- Start WP Socializer Plugin - +1 Button -->
<g:plusone size="medium" href="http://coenraets.org/blog/2008/11/salesbuilder-15-with-new-air-15-database-encryption/" ></g:plusone>
<!-- End WP Socializer Plugin - +1 Button -->
</span>
	<span class="margin5">
<!-- Start WP Socializer Plugin - Facebook Button -->
<iframe src="http://www.facebook.com/plugins/like.php?&amp;href=http://coenraets.org/blog/2008/11/salesbuilder-15-with-new-air-15-database-encryption/&amp;layout=button_count&amp;show_faces=0&amp;width=80&amp;action=like&amp;font=arial&amp;colorscheme=light&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:80px; height:21px;" allowTransparency="true"></iframe>
<!-- End WP Socializer Plugin - Facebook Button -->
</span>
</p>
<p>
<a href="https://twitter.com/ccoenraets" class="twitter-follow-button" data-show-count="false" data-lang="en" data-size="large">Follow @ccoenraets</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
</p>
	
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/?status=RT @ Salesbuilder 1.5 with new AIR 1.5 Database Encryption http://coenraets.org/blog/?p=88" target="_blank">Retweet this</a>
<!-- End WP Socializer Plugin - Retweet Button -->

	
	
<!-- Start WP Socializer Plugin - Facebook Button -->
<a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fcoenraets.org%2Fblog%2F2008%2F11%2Fsalesbuilder-15-with-new-air-15-database-encryption%2F" target="_blank">Share on Facebook</a>
<!-- End WP Socializer Plugin - Facebook Button -->



Follow @ccoenraets
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
]]></content:encoded>
			<wfw:commentRss>http://coenraets.org/blog/2008/11/salesbuilder-15-with-new-air-15-database-encryption/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>Sneak Peek of LiveCycle Data Services &quot;Next&quot; Tomorrow at MAX</title>
		<link>http://coenraets.org/blog/2008/11/sneak-peak-of-livecycle-data-services-next-tomorrow-at-max/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=sneak-peak-of-livecycle-data-services-next-tomorrow-at-max</link>
		<comments>http://coenraets.org/blog/2008/11/sneak-peak-of-livecycle-data-services-next-tomorrow-at-max/#comments</comments>
		<pubDate>Mon, 17 Nov 2008 07:24:41 +0000</pubDate>
		<dc:creator>Christophe</dc:creator>
				<category><![CDATA[BlazeDS]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[LCDS]]></category>
		<category><![CDATA[LiveCycle Data Services]]></category>
		<category><![CDATA[MAX]]></category>

		<guid isPermaLink="false">http://coenraets.org/blog/?p=87</guid>
		<description><![CDATA[I will demonstrate some new and really exciting features of LiveCycle Data Services &#8220;Next&#8221; tomorrow (Monday), as part of my session called &#8220;Introduction to BlazeDS and LiveCycle Data Services ES&#8221;. I hope to see you there if you are interested in Data Services for Flex. Introduction to BlazeDS and LiveCycle Data Services ES Moscone West [...]
	
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/?status=RT @ Sneak Peek of LiveCycle Data Services &quot;Next&quot; Tomorrow at MAX http://coenraets.org/blog/?p=87" target="_blank">Retweet this</a>
<!-- End WP Socializer Plugin - Retweet Button -->

	
	
<!-- Start WP Socializer Plugin - Facebook Button -->
<a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fcoenraets.org%2Fblog%2F2008%2F11%2Fsneak-peak-of-livecycle-data-services-next-tomorrow-at-max%2F" target="_blank">Share on Facebook</a>
<!-- End WP Socializer Plugin - Facebook Button -->



Follow @ccoenraets
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
]]></description>
			<content:encoded><![CDATA[<p>I will demonstrate some new and really exciting features of LiveCycle Data Services &#8220;Next&#8221; tomorrow (Monday), as part of my session called &#8220;Introduction to BlazeDS and LiveCycle Data Services ES&#8221;. I hope to see you there if you are interested in Data Services for Flex.</p>
<p>Introduction to BlazeDS and LiveCycle Data Services ES<br />
Moscone West 2007<br />
5:00pm to 6:00pm</p>
<p>
	<span class="margin5">
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal"  data-lang="en"  data-url="http://coenraets.org/blog/2008/11/sneak-peak-of-livecycle-data-services-next-tomorrow-at-max/"></a>
<!-- End WP Socializer Plugin - Retweet Button -->
</span>
	<span class="margin5">
<!-- Start WP Socializer Plugin - +1 Button -->
<g:plusone size="medium" href="http://coenraets.org/blog/2008/11/sneak-peak-of-livecycle-data-services-next-tomorrow-at-max/" ></g:plusone>
<!-- End WP Socializer Plugin - +1 Button -->
</span>
	<span class="margin5">
<!-- Start WP Socializer Plugin - Facebook Button -->
<iframe src="http://www.facebook.com/plugins/like.php?&amp;href=http://coenraets.org/blog/2008/11/sneak-peak-of-livecycle-data-services-next-tomorrow-at-max/&amp;layout=button_count&amp;show_faces=0&amp;width=80&amp;action=like&amp;font=arial&amp;colorscheme=light&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:80px; height:21px;" allowTransparency="true"></iframe>
<!-- End WP Socializer Plugin - Facebook Button -->
</span>
</p>
<p>
<a href="https://twitter.com/ccoenraets" class="twitter-follow-button" data-show-count="false" data-lang="en" data-size="large">Follow @ccoenraets</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
</p>
	
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/?status=RT @ Sneak Peek of LiveCycle Data Services &quot;Next&quot; Tomorrow at MAX http://coenraets.org/blog/?p=87" target="_blank">Retweet this</a>
<!-- End WP Socializer Plugin - Retweet Button -->

	
	
<!-- Start WP Socializer Plugin - Facebook Button -->
<a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fcoenraets.org%2Fblog%2F2008%2F11%2Fsneak-peak-of-livecycle-data-services-next-tomorrow-at-max%2F" target="_blank">Share on Facebook</a>
<!-- End WP Socializer Plugin - Facebook Button -->



Follow @ccoenraets
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
]]></content:encoded>
			<wfw:commentRss>http://coenraets.org/blog/2008/11/sneak-peak-of-livecycle-data-services-next-tomorrow-at-max/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>&quot;Zero Code&quot; Data Access using LiveCycle Data Services Runtime Configuration</title>
		<link>http://coenraets.org/blog/2008/09/zero-code-data-access-using-livecycle-data-services-runtime-configuration/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=zero-code-data-access-using-livecycle-data-services-runtime-configuration</link>
		<comments>http://coenraets.org/blog/2008/09/zero-code-data-access-using-livecycle-data-services-runtime-configuration/#comments</comments>
		<pubDate>Fri, 12 Sep 2008 17:26:35 +0000</pubDate>
		<dc:creator>Christophe</dc:creator>
				<category><![CDATA[Flex]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[LiveCycle Data Services]]></category>

		<guid isPermaLink="false">http://coenraets.org/blog/?p=82</guid>
		<description><![CDATA[When using the LCDS data management service, developers usually create a custom assembler for each destination, or use the Hibernate assembler if they happen to use Hibernate as their persistence framework. Other developers don&#8217;t use the data management service at all because of its perceived complexity. The Data Management Service provides a set of low [...]
	
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/?status=RT @ &quot;Zero Code&quot; Data Access using LiveCycle Data Services Runtime Configuration http://coenraets.org/blog/?p=82" target="_blank">Retweet this</a>
<!-- End WP Socializer Plugin - Retweet Button -->

	
	
<!-- Start WP Socializer Plugin - Facebook Button -->
<a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fcoenraets.org%2Fblog%2F2008%2F09%2Fzero-code-data-access-using-livecycle-data-services-runtime-configuration%2F" target="_blank">Share on Facebook</a>
<!-- End WP Socializer Plugin - Facebook Button -->



Follow @ccoenraets
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
]]></description>
			<content:encoded><![CDATA[<p>When using the LCDS data management service, developers usually create a custom assembler for each destination, or use the Hibernate assembler if they happen to use Hibernate as their persistence framework. Other developers don&#8217;t use the data management service at all because of its perceived complexity.</p>
<p>The Data Management Service provides a set of low level APIs on top of which you can build your own higher level / higher productivity framework. The Hibernate assembler provides an example of a &#8220;generic assembler&#8221;, but you can also create your own. When used in this fashion, the Data Management Service can provide, by far, the most productive way to build data-driven applications.</p>
<p>To illustrate this point, I have been showing a demo at a few conferences this year, and I finally decided to package it. The demo combines a generic assembler and the runtime configuration feature of LCDS to provide a zero (server-side) code, zero configuration strategy to build data-driven applications. The demo goes like this:</p>
<p><span id="more-82"></span></p>
<ol>
<li>Create a table in MySQL Query Browser&#8230; just to show that I was starting from scratch.</li>
<li>Add a few rows in the new table (still in MySQL Query Browser)</li>
<li>Create a new project in Flex Builder, and with the help of a DynamicDataService class, build a data maintenance application in literally three lines of code.</li>
</ol>
<p>The key point of the demo was that I didn’t have to write any server-side code, or even configure anything (no XML) at the server-side&#8230; a table was all I needed.</p>
<p>Here is a quick and rough version of the demo:</p>
<p><embed src="http://blip.tv/play/Ac2GbgA" type="application/x-shockwave-flash" width="640" height="480" allowscriptaccess="always" allowfullscreen="true"></embed></p>
<p>Follow the instruction below to try it on your system:</p>
<ol>
<li>Download <a href="http://coenraets.org/downloads/flex-dynamic-data.zip">flex-dynamic-data.zip</a> and unzip it on your local file system.</li>
<li>
<p>Copy bin/flex-dynamic-data.jar in /tomcat/webapps/lcds-samples/WEB-INF/lib.</p>
<p>flex-dynamic-data.jar includes two classes: DestinationService and DynamicJDBCAssembler. DestinationService creates data management destinations on the fly. Each destination created by DestinationService uses an instance of DynamicJDBCAssembler to dynamically generate the appropriate SQL statements for the fill, getItem, createItem, updateItem and deleteItem operations.  You never have to directly work with or configure these two classes: they are automatically invoked by the client-side DynamicDataService component. The source code is available in /flex-dynamic-data/src/java.</p>
</li>
<li>
<p>Open remoting-config.xml in lcds-samples\WEB-INF\flex and add the following destination:</p>
<pre class="brush: xml; title: ; notranslate">
&lt;destination id=&quot;destination-factory&quot;&gt;
    &lt;properties&gt;
        &lt;source&gt;flex.dynamic.data.DestinationService&lt;/source&gt;
    &lt;/properties&gt;
&lt;/destination&gt;
</pre>
</li>
<li>
<p>Copy flex-dynamic-data.properties in /tomcat/webapps/lcds-samples/WEB-INF/classes.</p>
<p>Open the file. Notice that the default database is set to the HSQLDB sample database (flexdemodb) shipping with the product.</p>
</li>
<li>
<p>Create a new Flex Builder project. Specify J2EE as the application server type, check the &#8220;Use remote object access service&#8221; checkbox, uncheck the &#8220;Create a combined Java/Flex project using WTP&#8221; checkbox, and point to the lcds-samples web application:</p>
<ul>
<li>Root folder: c:\lcds26\tomcat\webapps\lcds-samples</li>
<li>Root URL: http://localhost:8400/lcds-samples</li>
<li>Context root: /lcds-samples</li>
</ul>
</li>
<li>
<p>Add flex_dynamic_data.swc to your build path.</p>
<p>flex_dynamic_data.swc includes the DynamicDataService class. The source code is available in /flex-dynamic-data/src/as.</p>
</li>
<li>Code the application as follows.
<p><pre class="brush: xml; title: ; notranslate">
&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
&lt;mx:Application xmlns:mx=&quot;http://www.adobe.com/2006/mxml&quot; xmlns:data=&quot;flex.dynamic.data.*&quot;&gt;

	&lt;mx:ArrayCollection id=&quot;items&quot;/&gt;

	&lt;data:DynamicDataService id=&quot;ds&quot; destination=&quot;dynamic.company&quot;
		ready=&quot;ds.fill(items)&quot; /&gt;

	&lt;mx:DataGrid dataProvider=&quot;{items}&quot; width=&quot;100%&quot; height=&quot;100%&quot; editable=&quot;true&quot;/&gt;

&lt;/mx:Application&gt;
</pre>
</p>
</li>
<li>Run the application.</li>
<li>Modify data (not the primary key)</li>
<li>Click the refresh button and notice that the data has been persisted.</li>
<li>Open a second browser and access the same URL. Modify data in one browser and notice that changes are automatically being pushed to the other browser.</li>
</ol>
<p>Disclaimer: The mini framework provided with this sample is for demo purpose only. The goal is not to provide a production quality solution: I took many shortcuts and although it may be good for rapid prototyping, the specific strategy implemented here has serious limitations (single table, no support for associations, etc.). The goal is to illustrate what’s possible when building generic assemblers and runtime configuration, and hopefully generate a few ideas.</p>
<p>
	<span class="margin5">
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal"  data-lang="en"  data-url="http://coenraets.org/blog/2008/09/zero-code-data-access-using-livecycle-data-services-runtime-configuration/"></a>
<!-- End WP Socializer Plugin - Retweet Button -->
</span>
	<span class="margin5">
<!-- Start WP Socializer Plugin - +1 Button -->
<g:plusone size="medium" href="http://coenraets.org/blog/2008/09/zero-code-data-access-using-livecycle-data-services-runtime-configuration/" ></g:plusone>
<!-- End WP Socializer Plugin - +1 Button -->
</span>
	<span class="margin5">
<!-- Start WP Socializer Plugin - Facebook Button -->
<iframe src="http://www.facebook.com/plugins/like.php?&amp;href=http://coenraets.org/blog/2008/09/zero-code-data-access-using-livecycle-data-services-runtime-configuration/&amp;layout=button_count&amp;show_faces=0&amp;width=80&amp;action=like&amp;font=arial&amp;colorscheme=light&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:80px; height:21px;" allowTransparency="true"></iframe>
<!-- End WP Socializer Plugin - Facebook Button -->
</span>
</p>
<p>
<a href="https://twitter.com/ccoenraets" class="twitter-follow-button" data-show-count="false" data-lang="en" data-size="large">Follow @ccoenraets</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
</p>
	
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/?status=RT @ &quot;Zero Code&quot; Data Access using LiveCycle Data Services Runtime Configuration http://coenraets.org/blog/?p=82" target="_blank">Retweet this</a>
<!-- End WP Socializer Plugin - Retweet Button -->

	
	
<!-- Start WP Socializer Plugin - Facebook Button -->
<a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fcoenraets.org%2Fblog%2F2008%2F09%2Fzero-code-data-access-using-livecycle-data-services-runtime-configuration%2F" target="_blank">Share on Facebook</a>
<!-- End WP Socializer Plugin - Facebook Button -->



Follow @ccoenraets
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
]]></content:encoded>
			<wfw:commentRss>http://coenraets.org/blog/2008/09/zero-code-data-access-using-livecycle-data-services-runtime-configuration/feed/</wfw:commentRss>
		<slash:comments>40</slash:comments>
		</item>
		<item>
		<title>&quot;LiveHelp / Call Center&quot; Application Source Code</title>
		<link>http://coenraets.org/blog/2008/05/livehelp-call-center-application-source-code/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=livehelp-call-center-application-source-code</link>
		<comments>http://coenraets.org/blog/2008/05/livehelp-call-center-application-source-code/#comments</comments>
		<pubDate>Fri, 16 May 2008 20:27:20 +0000</pubDate>
		<dc:creator>Christophe</dc:creator>
				<category><![CDATA[BlazeDS]]></category>
		<category><![CDATA[Collaboration]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[LCDS]]></category>
		<category><![CDATA[LiveCycle Data Services]]></category>

		<guid isPermaLink="false">http://coenraets.org/blog/?p=77</guid>
		<description><![CDATA[I recently posted an example of a “Live Help / Call Center” application built with Flex and BlazeDS. A number of you have asked me for the source code. So here it is&#8230; Installation instructions Install BlazeDS or LCDS. Download the client-side of the application. The end-user application is mortgageapp.mxml, and the support representative application [...]
	
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/?status=RT @ &quot;LiveHelp / Call Center&quot; Application Source Code http://coenraets.org/blog/?p=77" target="_blank">Retweet this</a>
<!-- End WP Socializer Plugin - Retweet Button -->

	
	
<!-- Start WP Socializer Plugin - Facebook Button -->
<a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fcoenraets.org%2Fblog%2F2008%2F05%2Flivehelp-call-center-application-source-code%2F" target="_blank">Share on Facebook</a>
<!-- End WP Socializer Plugin - Facebook Button -->



Follow @ccoenraets
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
]]></description>
			<content:encoded><![CDATA[<p>I recently posted an example of a <a href="http://coenraets.org/blog/2008/04/live-help-call-center-application-with-flex-and-blazeds/">“Live Help / Call Center” application</a> built with Flex and BlazeDS. A number of you have asked me for the source code. So here it is&#8230;<br />
<span id="more-77"></span></p>
<h3>Installation instructions</h3>
<ol>
<li>Install <a href="http://opensource.adobe.com/wiki/display/blazeds/BlazeDS">BlazeDS</a> or <a href="http://labs.adobe.com/technologies/livecycle_dataservices2_6/">LCDS</a>.</li>
<li><a href="http://coenraets.org/blog/wp-content/uploads/2008/05/livehelp-client.zip">Download</a> the client-side of the application. The end-user application is mortgageapp.mxml, and the support representative application is callcenter.mxml.</li>
<li><a href="http://coenraets.org/blog/wp-content/uploads/2008/05/livehelp-server.zip">Download</a> and deploy the server-side of the application.</li>
<li>Add the following destination in WEB-INF/flex/remoting-config.xml.
<p><pre class="brush: xml; title: ; notranslate">
&lt;destination id=&quot;ticket-service&quot;&gt;
    &lt;properties&gt;
        &lt;source&gt;flex.samples.livehelp.TicketService&lt;/source&gt;
        &lt;scope&gt;application&lt;/scope&gt;
    &lt;/properties&gt;
    &lt;channels&gt;
        &lt;channel ref=&quot;my-rtmp&quot;/&gt;
        &lt;channel ref=&quot;my-amf&quot;/&gt;
    &lt;/channels&gt;
&lt;/destination&gt;
</pre>
</p>
<p>NOTE: If you are using BlazeDS, remove the line that defines the &#8220;my-rtmp&#8221; channel.
</li>
<li>Add the following destination in WEB-INF/flex/messaging-config.xml.
<p><pre class="brush: xml; title: ; notranslate">
&lt;destination id=&quot;callcenter&quot;&gt;
    &lt;properties&gt;
        &lt;server&gt;
            &lt;allow-subtopics&gt;true&lt;/allow-subtopics&gt;
            &lt;subtopic-separator&gt;.&lt;/subtopic-separator&gt;
        &lt;/server&gt;
    &lt;/properties&gt;
    &lt;channels&gt;
        &lt;channel ref=&quot;my-rtmp&quot;/&gt;
        &lt;channel ref=&quot;my-longpolling-amf&quot;/&gt;
    &lt;/channels&gt;
&lt;/destination&gt;
</pre>
</p>
<p>NOTE: If you are using BlazeDS, remove the line that defines the &#8220;my-rtmp&#8221; channel in the above destination, and add the following channel definition in WEB-INF/flex/services-config.xml:</p>
<p><pre class="brush: xml; title: ; notranslate">
&lt;channel-definition id=&quot;my-longpolling-amf&quot; class=&quot;mx.messaging.channels.AMFChannel&quot;&gt;
	&lt;endpoint url=&quot;http://{server.name}:{server.port}/{context.root}/messagebroker/amflongpolling&quot; class=&quot;flex.messaging.endpoints.AMFEndpoint&quot;/&gt;
	&lt;properties&gt;
		&lt;polling-enabled&gt;true&lt;/polling-enabled&gt;
		&lt;polling-interval-seconds&gt;3&lt;/polling-interval-seconds&gt;
		&lt;wait-interval-millis&gt;60000&lt;/wait-interval-millis&gt;
		&lt;client-wait-interval-millis&gt;1&lt;/client-wait-interval-millis&gt;
		&lt;max-waiting-poll-requests&gt;200&lt;/max-waiting-poll-requests&gt;
	&lt;/properties&gt;
&lt;/channel-definition&gt;
</pre>
</p>
</li>
<li>Follow the instructions in my <a href="http://coenraets.org/blog/2008/04/live-help-call-center-application-with-flex-and-blazeds/">original post</a> to experience the application.</li>
</ol>
<p>
	<span class="margin5">
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal"  data-lang="en"  data-url="http://coenraets.org/blog/2008/05/livehelp-call-center-application-source-code/"></a>
<!-- End WP Socializer Plugin - Retweet Button -->
</span>
	<span class="margin5">
<!-- Start WP Socializer Plugin - +1 Button -->
<g:plusone size="medium" href="http://coenraets.org/blog/2008/05/livehelp-call-center-application-source-code/" ></g:plusone>
<!-- End WP Socializer Plugin - +1 Button -->
</span>
	<span class="margin5">
<!-- Start WP Socializer Plugin - Facebook Button -->
<iframe src="http://www.facebook.com/plugins/like.php?&amp;href=http://coenraets.org/blog/2008/05/livehelp-call-center-application-source-code/&amp;layout=button_count&amp;show_faces=0&amp;width=80&amp;action=like&amp;font=arial&amp;colorscheme=light&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:80px; height:21px;" allowTransparency="true"></iframe>
<!-- End WP Socializer Plugin - Facebook Button -->
</span>
</p>
<p>
<a href="https://twitter.com/ccoenraets" class="twitter-follow-button" data-show-count="false" data-lang="en" data-size="large">Follow @ccoenraets</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
</p>
	
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/?status=RT @ &quot;LiveHelp / Call Center&quot; Application Source Code http://coenraets.org/blog/?p=77" target="_blank">Retweet this</a>
<!-- End WP Socializer Plugin - Retweet Button -->

	
	
<!-- Start WP Socializer Plugin - Facebook Button -->
<a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fcoenraets.org%2Fblog%2F2008%2F05%2Flivehelp-call-center-application-source-code%2F" target="_blank">Share on Facebook</a>
<!-- End WP Socializer Plugin - Facebook Button -->



Follow @ccoenraets
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
]]></content:encoded>
			<wfw:commentRss>http://coenraets.org/blog/2008/05/livehelp-call-center-application-source-code/feed/</wfw:commentRss>
		<slash:comments>90</slash:comments>
		</item>
		<item>
		<title>Live Help / Call Center Application with Flex and BlazeDS</title>
		<link>http://coenraets.org/blog/2008/04/live-help-call-center-application-with-flex-and-blazeds/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=live-help-call-center-application-with-flex-and-blazeds</link>
		<comments>http://coenraets.org/blog/2008/04/live-help-call-center-application-with-flex-and-blazeds/#comments</comments>
		<pubDate>Tue, 29 Apr 2008 21:02:05 +0000</pubDate>
		<dc:creator>Christophe</dc:creator>
				<category><![CDATA[BlazeDS]]></category>
		<category><![CDATA[Collaboration]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[LiveCycle Data Services]]></category>

		<guid isPermaLink="false">http://coenraets.org/blog/2008/04/live-help-call-center-application-with-flex-and-blazeds/</guid>
		<description><![CDATA[I recently posted a number of examples (Yahoo Maps Collaboration and Collaborative Data Entry) showing how to use the BlazeDS / LCDS Message Service to build collaborative applications. In this post, I’m extending the Collaborative Forms application to provide an example of a more complete and real life &#8220;Live Help / Call Center&#8221; application. The [...]
	
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/?status=RT @ Live Help / Call Center Application with Flex and BlazeDS http://coenraets.org/blog/?p=72" target="_blank">Retweet this</a>
<!-- End WP Socializer Plugin - Retweet Button -->

	
	
<!-- Start WP Socializer Plugin - Facebook Button -->
<a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fcoenraets.org%2Fblog%2F2008%2F04%2Flive-help-call-center-application-with-flex-and-blazeds%2F" target="_blank">Share on Facebook</a>
<!-- End WP Socializer Plugin - Facebook Button -->



Follow @ccoenraets
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
]]></description>
			<content:encoded><![CDATA[<p><a href='http://coenraets.org/apps/livehelp/customer.html'><img src='http://coenraets.org/blog/wp-content/uploads/2008/04/customer3.jpg' alt='customer3.jpg' /></a><a href='http://coenraets.org/apps/livehelp/callcenter.html'><img src='http://coenraets.org/blog/wp-content/uploads/2008/04/callcenter.jpg' alt='callcenter.jpg' /></a>
<p>I recently posted a number of examples (<a href="http://coenraets.org/blog/2008/04/yahoo-maps-collaboration-using-flex-and-blazeds/">Yahoo Maps Collaboration</a> and <a href="http://coenraets.org/blog/2008/04/collaborative-data-entry-with-flex-and-blazeds/">Collaborative Data Entry</a>) showing how to use the BlazeDS / LCDS Message Service to build collaborative applications. In this post, I’m extending the Collaborative Forms application to provide an example of a more complete and real life &#8220;Live Help / Call Center&#8221; application.</p>
<p><span id="more-72"></span></p>
<p>The use case goes like this: a customer tries to complete a task (in this case: apply for a mortgage) on a web site, gets in trouble, and starts a “Live Help” session with a support representative. Among other things, the support representative can remotely drive the customer’s application, enter data collaboratively with the customer, chat with the customer using a text-based and/or a video-chat session, close the support ticket, etc.</p>
<p>To make it easier for you to experience the application, I’m hosting it on my server. You can test it using the instructions below. </p>
<h3>Testing the application:</h3>
<ol>
<li>
<p>Open a browser and access <a href="http://coenraets.org/apps/livehelp/customer.html">http://coenraets.org/apps/livehelp/customer.html</a>. Enter your email address and click Start.</p>
<p>Note: Your email address is used as a unique identifier to allow you to test the application in your own sandbox: your experiments are isolated from the experiments of other users testing the application.</p>
</li>
<li>
<p>Open another browser window (on the same computer or on a different computer) and access <a href="http://coenraets.org/apps/livehelp/callcenter.html">http://coenraets.org/apps/livehelp/callcenter.html</a>. Enter your email address and click “Start”. <strong>Make sure you use the same email address you used in the customer application.</strong></p>
</li>
<li>
<p>In the customer application, enter some data in different tabs.</p>
</li>
<li>
<p>Click “Start session” to initiate a Live Help session with a support rep.</p>
</li>
<li>
<p>Notice that a new ticket appears in the call center application.</p>
</li>
<li>
<p>In the call center application select the new ticket, and click “Handle Ticket” (upper right corner). A message should appear in the chat window of the customer application. Notice that the data you typed in the customer application automatically appears in the support rep application.</p>
</li>
<li>
<p>Type a chat message in the support rep app: the message appears in the customer app.</p>
</li>
<li>
<p>The support rep can remotely drive the customer application: in the support rep application, change the selected Accordion tab, and notice that the customer application’s user interface is automatically synchronized. This works in both directions: you can change the Accordion tab in the customer app and the support rep’s user interface will be automatically synchronized as well.</p>
</li>
<li>
<p>The application supports collaborative data entry (collaborative form filling): Enter some data in the support rep application: notice that the data automatically appears in the customer application. This works in both directions as well.</p>
</li>
<li>
<p>On the Employment History tab, add a few companies (including start date, end date, and salary) and notice that the employment history list is automatically synchronized in the other browser.</p>
</li>
<li>
<p>If you have a webcam attached to your system, click the “Start webcam” button in one of the applications.</p>
<p>Note: Live video streaming is powered by Flash Media Server. Since I don’t have access to a hosted instance of Flash Media Server, live video streaming is not enabled in this hosted version.</p>
</li>
</ol>
<p>I will post the source code in the coming days.</p>
<p>
	<span class="margin5">
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal"  data-lang="en"  data-url="http://coenraets.org/blog/2008/04/live-help-call-center-application-with-flex-and-blazeds/"></a>
<!-- End WP Socializer Plugin - Retweet Button -->
</span>
	<span class="margin5">
<!-- Start WP Socializer Plugin - +1 Button -->
<g:plusone size="medium" href="http://coenraets.org/blog/2008/04/live-help-call-center-application-with-flex-and-blazeds/" ></g:plusone>
<!-- End WP Socializer Plugin - +1 Button -->
</span>
	<span class="margin5">
<!-- Start WP Socializer Plugin - Facebook Button -->
<iframe src="http://www.facebook.com/plugins/like.php?&amp;href=http://coenraets.org/blog/2008/04/live-help-call-center-application-with-flex-and-blazeds/&amp;layout=button_count&amp;show_faces=0&amp;width=80&amp;action=like&amp;font=arial&amp;colorscheme=light&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:80px; height:21px;" allowTransparency="true"></iframe>
<!-- End WP Socializer Plugin - Facebook Button -->
</span>
</p>
<p>
<a href="https://twitter.com/ccoenraets" class="twitter-follow-button" data-show-count="false" data-lang="en" data-size="large">Follow @ccoenraets</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
</p>
	
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/?status=RT @ Live Help / Call Center Application with Flex and BlazeDS http://coenraets.org/blog/?p=72" target="_blank">Retweet this</a>
<!-- End WP Socializer Plugin - Retweet Button -->

	
	
<!-- Start WP Socializer Plugin - Facebook Button -->
<a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fcoenraets.org%2Fblog%2F2008%2F04%2Flive-help-call-center-application-with-flex-and-blazeds%2F" target="_blank">Share on Facebook</a>
<!-- End WP Socializer Plugin - Facebook Button -->



Follow @ccoenraets
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
]]></content:encoded>
			<wfw:commentRss>http://coenraets.org/blog/2008/04/live-help-call-center-application-with-flex-and-blazeds/feed/</wfw:commentRss>
		<slash:comments>79</slash:comments>
		</item>
		<item>
		<title>New Version of SalesBuilder using LiveCycle Data Services</title>
		<link>http://coenraets.org/blog/2008/02/new-version-of-salesbuilder-using-livecycle-data-services/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=new-version-of-salesbuilder-using-livecycle-data-services</link>
		<comments>http://coenraets.org/blog/2008/02/new-version-of-salesbuilder-using-livecycle-data-services/#comments</comments>
		<pubDate>Fri, 08 Feb 2008 17:01:04 +0000</pubDate>
		<dc:creator>Christophe</dc:creator>
				<category><![CDATA[Air]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[LiveCycle Data Services]]></category>

		<guid isPermaLink="false">http://coenraets.org/blog/2008/02/new-version-of-salesbuilder-using-livecycle-data-services/</guid>
		<description><![CDATA[I have often felt that we needed a more real-life/complex sample application to adequately demonstrate LiveCycle Data Services, and specifically the Data Management Service. So, I wrote a new version of Salesbuilder that uses LCDS to persist data at the server side. &#8220;Salesbuilder LCDS&#8221; demonstrates advanced LCDS features such as associations, lazy loading, etc. This [...]
	
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/?status=RT @ New Version of SalesBuilder using LiveCycle Data Services http://coenraets.org/blog/?p=66" target="_blank">Retweet this</a>
<!-- End WP Socializer Plugin - Retweet Button -->

	
	
<!-- Start WP Socializer Plugin - Facebook Button -->
<a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fcoenraets.org%2Fblog%2F2008%2F02%2Fnew-version-of-salesbuilder-using-livecycle-data-services%2F" target="_blank">Share on Facebook</a>
<!-- End WP Socializer Plugin - Facebook Button -->



Follow @ccoenraets
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
]]></description>
			<content:encoded><![CDATA[<p>I have often felt that we needed a more real-life/complex sample application to adequately demonstrate LiveCycle Data Services, and specifically the Data Management Service. So, I wrote a new version of <a href="http://coenraets.org/blog/2008/02/salesbuilder-beta-3-air-file-flex-source-code/">Salesbuilder</a> that uses LCDS to persist data at the server side. &#8220;Salesbuilder LCDS&#8221; demonstrates advanced LCDS features such as associations, lazy loading, etc.</p>
<p>This application will also be packaged as a sample in the next version of LiveCycle Data Services currently in private beta.</p>
<p><span id="more-66"></span>
<p>Here is a quick look at the destinations and associations used in the application:</p>
<pre class="brush: xml; title: ; notranslate">
&lt;destination id=&quot;account&quot;&gt;
    &lt;adapter ref=&quot;java-dao&quot; /&gt;
    &lt;properties&gt;
        &lt;source&gt;com.salesbuilder.assembler.AccountAssembler&lt;/source&gt;
        &lt;scope&gt;application&lt;/scope&gt;
        &lt;metadata&gt;
            &lt;identity property=&quot;accountId&quot; undefined-value=&quot;0&quot;/&gt;
            &lt;many-to-one property=&quot;salesRep&quot; destination=&quot;sales-rep&quot; lazy=&quot;true&quot;/&gt;
            &lt;many-to-one property=&quot;industry&quot; destination=&quot;industry&quot; lazy=&quot;true&quot;/&gt;
            &lt;many-to-one property=&quot;category&quot; destination=&quot;account-category&quot; lazy=&quot;true&quot;/&gt;
            &lt;many-to-one property=&quot;state&quot; destination=&quot;state&quot; lazy=&quot;true&quot;/&gt;
        &lt;/metadata&gt;
    &lt;/properties&gt;
&lt;/destination&gt;

&lt;destination id=&quot;contact&quot;&gt;
    &lt;adapter ref=&quot;java-dao&quot; /&gt;
    &lt;properties&gt;
        &lt;source&gt;com.salesbuilder.assembler.ContactAssembler&lt;/source&gt;
        &lt;scope&gt;application&lt;/scope&gt;
        &lt;metadata&gt;
            &lt;identity property=&quot;contactId&quot; undefined-value=&quot;0&quot;/&gt;
            &lt;many-to-one property=&quot;account&quot; destination=&quot;account&quot; lazy=&quot;true&quot;/&gt;
            &lt;many-to-one property=&quot;manager&quot; destination=&quot;contact&quot; lazy=&quot;true&quot;/&gt;
            &lt;many-to-one property=&quot;salesRep&quot; destination=&quot;sales-rep&quot; lazy=&quot;true&quot;/&gt;
        &lt;/metadata&gt;
    &lt;/properties&gt;
&lt;/destination&gt;

&lt;destination id=&quot;opportunity&quot;&gt;
    &lt;adapter ref=&quot;java-dao&quot; /&gt;
    &lt;properties&gt;
        &lt;source&gt;com.salesbuilder.assembler.OpportunityAssembler&lt;/source&gt;
        &lt;scope&gt;application&lt;/scope&gt;
        &lt;metadata&gt;
            &lt;identity property=&quot;opportunityId&quot; undefined-value=&quot;0&quot;/&gt;
            &lt;many-to-one property=&quot;account&quot; destination=&quot;account&quot; lazy=&quot;true&quot;/&gt;
            &lt;many-to-one property=&quot;salesRep&quot; destination=&quot;sales-rep&quot; lazy=&quot;true&quot;/&gt;
        &lt;/metadata&gt;
    &lt;/properties&gt;
&lt;/destination&gt;

&lt;destination id=&quot;industry&quot;&gt;
    &lt;adapter ref=&quot;java-dao&quot; /&gt;
    &lt;properties&gt;
        &lt;source&gt;com.salesbuilder.assembler.IndustryAssembler&lt;/source&gt;
        &lt;scope&gt;application&lt;/scope&gt;
        &lt;metadata&gt;
            &lt;identity property=&quot;industryId&quot; undefined-value=&quot;0&quot;/&gt;
        &lt;/metadata&gt;
    &lt;/properties&gt;
&lt;/destination&gt;

&lt;destination id=&quot;sales-rep&quot;&gt;
    &lt;adapter ref=&quot;java-dao&quot; /&gt;
    &lt;properties&gt;
        &lt;source&gt;com.salesbuilder.assembler.SalesRepAssembler&lt;/source&gt;
        &lt;scope&gt;application&lt;/scope&gt;
        &lt;metadata&gt;
            &lt;identity property=&quot;salesRepId&quot; undefined-value=&quot;0&quot;/&gt;
        &lt;/metadata&gt;
    &lt;/properties&gt;
&lt;/destination&gt;

&lt;destination id=&quot;account-category&quot;&gt;
    &lt;adapter ref=&quot;java-dao&quot; /&gt;
    &lt;properties&gt;
        &lt;source&gt;com.salesbuilder.assembler.AccountCategoryAssembler&lt;/source&gt;
        &lt;scope&gt;application&lt;/scope&gt;
        &lt;metadata&gt;
            &lt;identity property=&quot;categoryId&quot; undefined-value=&quot;0&quot;/&gt;
        &lt;/metadata&gt;
    &lt;/properties&gt;
&lt;/destination&gt;

&lt;destination id=&quot;state&quot;&gt;
    &lt;adapter ref=&quot;java-dao&quot; /&gt;
    &lt;properties&gt;
        &lt;source&gt;com.salesbuilder.assembler.StateAssembler&lt;/source&gt;
        &lt;scope&gt;application&lt;/scope&gt;
        &lt;metadata&gt;
            &lt;identity property=&quot;stateId&quot;/&gt;
        &lt;/metadata&gt;
    &lt;/properties&gt;
&lt;/destination&gt;
</pre>
<p></p>
<p><strong>Installation instructions:</strong></p>
<p>Prerequisite: You need to have LiveCycle Data Services installed on your system before executing the steps below.</p>
<ol>
<li>Download <a href="http://coenraets.org/downloads/salesbuilderlcds.zip">salesbuilderlcds.zip</a></li>
<li>Unzip salesbuilderlcds.zip in /salesbuilderlcds</p>
<li>Copy the content /salesbuilderlcds/webapp/WEB-INF/classes to the WEB-INF/classes directory of your web application</li>
<li>Add the destinations defined in /salesbuilderlcds/webapp/WEB-INF/flex/data-management-config.xml to the data-management-config.xml file of your web application</li>
<li>Start the salesbuilder database</li>
<ol style="list-style-type: lower-alpha">
<li>Open a command prompt and go to /salesbuilderlcds/db</li>
<li>Run startdb.bat (Windows) or startdb.sh (Unix-based systems)</li>
</ol>
<li>Start your application server</li>
<li>Double-click /salesbuilderlcds/salesbuilderlcds.air to install the air application</li>
<li>Run the application</li>
</ol>
<p><strong>Configuration Note:</strong></p>
<p>By default, the application tries to connect to the localhost server using the RTMP protocol on port 2037. If your server configuration is different, edit config.xml in the salesbuilder installation directory (&#8220;Program Files\Salesbuilder LCDS&#8221; on Windows).</p>
<p>If you are not familiar with the Salesbuilder application, here is a quick walkthrough:</p>
<p><strong>Sales Pipeline</strong><br />
The sales pipeline features many &#8220;direct manipulation&#8221; options:</p>
<ol>
<li>Grab the background of the chart with your mouse and scroll it left and write to navigate along the time axis.</li>
<li>Grab a vertical grid line, and move it left and right to zoom-out/zoom-in.</li>
<li>To modify your pipeline directly, grab a bubble with your mouse and move it up and down or left and right to adjust the probability and the expected closing date respectively. The projected revenue is automatically updated in the chart title. When you release the mouse button, the opportunity is automatically updated (probability and close date) in the database.</li>
<li>You can also double click a bubble to open a details view for the opportunity.</li>
</ol>
<p><strong>Search and Summary Screens</strong></p>
<ol>
<li>Type a few letters in the search box (upper right corner): matching accounts, contacts, and opportunities appear.</li>
<li>Use the arrow keys to navigate in the search results popup.</li>
<li>Use the Enter key to open the selected item.</li>
<li>Alternatively, you can also open the summary screens (&#8220;Accounts&#8221;, &#8220;Contacts&#8221;, and &#8220;Opportunities&#8221; buttons in the menu bar), and open individual items from there.</li>
</ol>
<p><strong>Working with Data</strong></p>
<ol>
<li>Open the &#8220;Alpha Corp&#8221; account.</li>
<li>Make some changes to the Alpha Corp data (for example, change the phone number), and click &#8220;Save&#8221;”.</li>
<li>In the Contacts view of the Alpha Corp tab, you can grab an org chart item with your mouse and move the org chart around.</li>
<li>To open the details view for a contact, either double-click an org chart item or click the Grid button (lower left corner) and double-click a contact in the datagrid.</li>
<li>Add a contact by clicking &#8220;Quick Contact&#8221;. Make sure you select a manager, click save and notice that the org chart is updated automatically.</li>
<li>Continue to add and modify accounts, contacts, and opportunities. The data is persisted using the Data Management Service.</li>
</ol>
<p><strong>Native drag-and-drop</strong></p>
<ol>
<li>Click the &#8220;Opportunities&#8221; menu button.</li>
<li>Drag the dashboard title on the desktop: the chart is saved as a JPG on the desktop. Note: it can take a few seconds before you actually see the drag icon.
<li>Open a Word document, drag the dashboard title again, and, this time, drop it directly in the Word document.</li>
<li>Select some rows in the datagrid, and, without releasing the mouse button, drag the selected rows and drop them on the desktop. The rows are saved as an Excel document on the desktop.</li>
<li>Double-click the Excel document to open the spreadsheet.</li>
<li>Drag some rows from the Datagrid again, and, this time, drop them directly somewhere in the Excel spreadsheet.</li>
</ol>
<p><br/></p>
<p>
	<span class="margin5">
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal"  data-lang="en"  data-url="http://coenraets.org/blog/2008/02/new-version-of-salesbuilder-using-livecycle-data-services/"></a>
<!-- End WP Socializer Plugin - Retweet Button -->
</span>
	<span class="margin5">
<!-- Start WP Socializer Plugin - +1 Button -->
<g:plusone size="medium" href="http://coenraets.org/blog/2008/02/new-version-of-salesbuilder-using-livecycle-data-services/" ></g:plusone>
<!-- End WP Socializer Plugin - +1 Button -->
</span>
	<span class="margin5">
<!-- Start WP Socializer Plugin - Facebook Button -->
<iframe src="http://www.facebook.com/plugins/like.php?&amp;href=http://coenraets.org/blog/2008/02/new-version-of-salesbuilder-using-livecycle-data-services/&amp;layout=button_count&amp;show_faces=0&amp;width=80&amp;action=like&amp;font=arial&amp;colorscheme=light&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:80px; height:21px;" allowTransparency="true"></iframe>
<!-- End WP Socializer Plugin - Facebook Button -->
</span>
</p>
<p>
<a href="https://twitter.com/ccoenraets" class="twitter-follow-button" data-show-count="false" data-lang="en" data-size="large">Follow @ccoenraets</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
</p>
	
<!-- Start WP Socializer Plugin - Retweet Button -->
<a href="http://twitter.com/?status=RT @ New Version of SalesBuilder using LiveCycle Data Services http://coenraets.org/blog/?p=66" target="_blank">Retweet this</a>
<!-- End WP Socializer Plugin - Retweet Button -->

	
	
<!-- Start WP Socializer Plugin - Facebook Button -->
<a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fcoenraets.org%2Fblog%2F2008%2F02%2Fnew-version-of-salesbuilder-using-livecycle-data-services%2F" target="_blank">Share on Facebook</a>
<!-- End WP Socializer Plugin - Facebook Button -->



Follow @ccoenraets
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
]]></content:encoded>
			<wfw:commentRss>http://coenraets.org/blog/2008/02/new-version-of-salesbuilder-using-livecycle-data-services/feed/</wfw:commentRss>
		<slash:comments>104</slash:comments>
		</item>
	</channel>
</rss>

