<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;DUQFSHk4eyp7ImA9WhRRFE4.&quot;"><id>tag:blogger.com,1999:blog-2897201377558618334</id><updated>2011-11-27T15:41:59.733-08:00</updated><category term="Blog keyword" /><title>Imam Raza</title><subtitle type="html" /><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://imamrazaansari.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://imamrazaansari.blogspot.com/" /><author><name>Imam Raza</name><uri>http://www.blogger.com/profile/04199744515202718863</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>10</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/ImamRaza" /><feedburner:info uri="imamraza" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;CUIHRHY6eSp7ImA9WhdTE0U.&quot;"><id>tag:blogger.com,1999:blog-2897201377558618334.post-3624362224819136633</id><published>2011-07-11T04:25:00.001-07:00</published><updated>2011-07-11T04:25:35.811-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-07-11T04:25:35.811-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Blog keyword" /><title>Blog Title</title><content type="html">
    &lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;
        Blog content
    &lt;/div&gt;
  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2897201377558618334-3624362224819136633?l=imamrazaansari.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/MvLlyi04P7B93blGCc5AMl12lQc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/MvLlyi04P7B93blGCc5AMl12lQc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/MvLlyi04P7B93blGCc5AMl12lQc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/MvLlyi04P7B93blGCc5AMl12lQc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ImamRaza/~4/3SYuOIIP6Y8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://imamrazaansari.blogspot.com/feeds/3624362224819136633/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2897201377558618334&amp;postID=3624362224819136633" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2897201377558618334/posts/default/3624362224819136633?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2897201377558618334/posts/default/3624362224819136633?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ImamRaza/~3/3SYuOIIP6Y8/blog-title.html" title="Blog Title" /><author><name>Imam Raza</name><uri>http://www.blogger.com/profile/04199744515202718863</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://imamrazaansari.blogspot.com/2011/07/blog-title.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkIBQ30zfyp7ImA9WxBVE0w.&quot;"><id>tag:blogger.com,1999:blog-2897201377558618334.post-7788802580496656343</id><published>2010-02-16T03:01:00.000-08:00</published><updated>2010-02-16T03:09:12.387-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-16T03:09:12.387-08:00</app:edited><title>Installing SSL Certificate on Tomcat</title><content type="html">Recently I installed SSL certificate on tomcat. Thought below information might be helpful for others installing SSL certificate on tomcat.

There are two ways of installing SSL certificate in tomcat:
&lt;ul&gt;   &lt;li&gt;CA gives only certificate against CSR. &lt;/li&gt;   &lt;li&gt;CA gives you certificate and private key&lt;/li&gt; &lt;/ul&gt;
&lt;h3&gt;CA gives only certificate against CSR&lt;/h3&gt; In this scenario, you create CSR request using jdk keytool and send CSR file to CA (Certificate Authority). Then CA send gives you the certificate to import. In this scenario you need to perform below two steps:
&lt;ul&gt;   &lt;li&gt;Download chain certificate from CA where you obtained the certificate and import it in new keystore with following command:&lt;/li&gt; &lt;/ul&gt; &lt;span class="Apple-style-span"   style="border-collapse: separate; color: rgb(0, 0, 0);  font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; font-family:'Times New Roman';font-size:medium;"&gt;&lt;span class="Apple-style-span" style=""&gt; &lt;pre&gt;  keytool -import -alias root -keystore &lt;your_keystore_filename&gt; -trustcacerts -file &lt;filename_of_the_chain_certificate&gt;&lt;/pre&gt; &lt;/span&gt;&lt;/span&gt; &lt;ul&gt;   &lt;li&gt;Import CA provided certificate into the same  keystore as used above:&lt;/li&gt; &lt;/ul&gt; &lt;blockquote&gt;   &lt;blockquote&gt;     &lt;blockquote&gt;&lt;span class="Apple-style-span"   style="border-collapse: separate; color: rgb(0, 0, 0);  font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; font-family:'Times New Roman';font-size:medium;"&gt;&lt;span class="Apple-style-span" style=""&gt;       &lt;pre&gt;keytool -import -alias tomcat -keystore &lt;your_keystore_filename&gt; -trustcacerts -file &lt;your_certificate_filename&gt;&lt;/pre&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;   &lt;/blockquote&gt; &lt;/blockquote&gt;
&lt;h3&gt;CA gives you certificate and private key&lt;/h3&gt; In this scenario CA provides you two thing i.e private key and certificate. you need to perform below two steps:
&lt;ul&gt;   &lt;li&gt;Download chain certificate from CA where you obtained the certificate.&lt;/li&gt;   &lt;li&gt;Till now you have 3 things namely private key, certificate and chain certificate. Use following command to make your keystore:&lt;/li&gt; &lt;/ul&gt; &lt;blockquote&gt;   &lt;blockquote&gt;&lt;span class="Apple-style-span"   style="border-collapse: separate; color: rgb(0, 0, 0);  font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; font-family:'Times New Roman';font-size:medium;"&gt;&lt;span class="Apple-style-span" style=""&gt;     &lt;pre&gt;openssl pkcs12 -export -in mycert.crt -inkey mykey.key -out mycert.p12 -name tomcat -CAfile myCA.crt -caname root -chain &lt;/pre&gt;&lt;pre&gt;For openSSL install microsoft tool available at &lt;a href="http://www.slproweb.com/products/Win32OpenSSL.html"&gt;http://www.slproweb.com/products/Win32OpenSSL.html&lt;/a&gt;      &lt;/pre&gt;     &lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;   &lt;span class="Apple-style-span"   style="border-collapse: separate; color: rgb(0, 0, 0);  font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; font-family:'Times New Roman';font-size:medium;"&gt;&lt;span class="Apple-style-span" style=""&gt;&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2897201377558618334-7788802580496656343?l=imamrazaansari.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/n9qc7eTnDIgnIjnMxDGSVk7xSvw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/n9qc7eTnDIgnIjnMxDGSVk7xSvw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/n9qc7eTnDIgnIjnMxDGSVk7xSvw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/n9qc7eTnDIgnIjnMxDGSVk7xSvw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ImamRaza/~4/DfZs6qC2W6U" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://imamrazaansari.blogspot.com/feeds/7788802580496656343/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2897201377558618334&amp;postID=7788802580496656343" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2897201377558618334/posts/default/7788802580496656343?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2897201377558618334/posts/default/7788802580496656343?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ImamRaza/~3/DfZs6qC2W6U/installing-ssl-certificate-on-tomcat.html" title="Installing SSL Certificate on Tomcat" /><author><name>Imam Raza</name><uri>http://www.blogger.com/profile/04199744515202718863</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://imamrazaansari.blogspot.com/2010/02/installing-ssl-certificate-on-tomcat.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0ADQXkyfCp7ImA9WxBWGE0.&quot;"><id>tag:blogger.com,1999:blog-2897201377558618334.post-8785559551430325816</id><published>2010-02-10T04:33:00.000-08:00</published><updated>2010-02-10T04:42:50.794-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-10T04:42:50.794-08:00</app:edited><title>DragonFireSDK pre-release Vs Monotouch Review by IPhone developer</title><content type="html">I am IPhone developer and always looking for ways to get rid of Objective-C syntax. I have evaluated Monotouch and now evaluating DragonFireSDK both.

Below is what I found about both alternatives:

&lt;ul&gt;   &lt;li&gt;The good think about DragonFireSDK is that it provides complete development environment in C++ on windows machine&lt;/li&gt;   &lt;li&gt;DragonFireSDK hides typical IPhone application architecture when writing in Objective-c in Xcode, while MonoTouch doesn't hide the architecture of typical IPhone application. In Monotouch developer must follow Iphone application typical design. It only provide c# syntax but design is same as that of IPhone typical application.&lt;/li&gt;   &lt;li&gt;Niether DragonFireSDK nor Monotouch provides IPhone objective-C Core-Data API features like things that save our lots of time in developing app in IPhone when playing with backend storage.&lt;/li&gt; &lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2897201377558618334-8785559551430325816?l=imamrazaansari.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/xvHUst6aaDoyOFG5AiEQMctFrm8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/xvHUst6aaDoyOFG5AiEQMctFrm8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/xvHUst6aaDoyOFG5AiEQMctFrm8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/xvHUst6aaDoyOFG5AiEQMctFrm8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ImamRaza/~4/B87A9y9TXME" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://imamrazaansari.blogspot.com/feeds/8785559551430325816/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2897201377558618334&amp;postID=8785559551430325816" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2897201377558618334/posts/default/8785559551430325816?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2897201377558618334/posts/default/8785559551430325816?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ImamRaza/~3/B87A9y9TXME/dragonfiresdk-pre-release-vs-monotouch.html" title="DragonFireSDK pre-release Vs Monotouch Review by IPhone developer" /><author><name>Imam Raza</name><uri>http://www.blogger.com/profile/04199744515202718863</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>4</thr:total><feedburner:origLink>http://imamrazaansari.blogspot.com/2010/02/dragonfiresdk-pre-release-vs-monotouch.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkcBR3Y4fip7ImA9WxBWFkw.&quot;"><id>tag:blogger.com,1999:blog-2897201377558618334.post-3583748298160192976</id><published>2010-02-07T23:23:00.000-08:00</published><updated>2010-02-07T23:27:36.836-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-07T23:27:36.836-08:00</app:edited><title>IPhone Development on Windows Plateform</title><content type="html">Some great news for IPhone developer. Now IPhone developer can use windows machine to do IPhone development. &lt;br&gt; The &lt;a moz-do-not-send="true" target="Netscape851" linkindex="20"  href="http://dragonfiresdk.com/" title="Link to DragonFireSDK"&gt;DragonFireSDK&lt;/a&gt; will let you create iPhone Apps in Windows in C++. You can run them on a provided simulator, debug using Visual Studio (not sure if it's full or Express versions) and install it on a (shush) jailbroken iPhone. &lt;p&gt;However where it gets interesting is that you can use it to put apps in to the App Store and get paid. You can do this is in the traditional way as a registered developer(and pay $49.95 to Zimusoft for their Windows sdk) or do it for free through Zimusoft who distribute it as part of their brand but pay you all (they take nothing) of the royalties through paypal &lt;/p&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2897201377558618334-3583748298160192976?l=imamrazaansari.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/cNm_yKyhSwPDuBNUXAi49sjFh7s/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/cNm_yKyhSwPDuBNUXAi49sjFh7s/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/cNm_yKyhSwPDuBNUXAi49sjFh7s/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/cNm_yKyhSwPDuBNUXAi49sjFh7s/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ImamRaza/~4/fIDDg6PHiu4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://imamrazaansari.blogspot.com/feeds/3583748298160192976/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2897201377558618334&amp;postID=3583748298160192976" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2897201377558618334/posts/default/3583748298160192976?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2897201377558618334/posts/default/3583748298160192976?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ImamRaza/~3/fIDDg6PHiu4/iphone-development-on-windows-plateform.html" title="IPhone Development on Windows Plateform" /><author><name>Imam Raza</name><uri>http://www.blogger.com/profile/04199744515202718863</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://imamrazaansari.blogspot.com/2010/02/iphone-development-on-windows-plateform.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkcBR3Y4cSp7ImA9WxBWFkw.&quot;"><id>tag:blogger.com,1999:blog-2897201377558618334.post-8776322253684967532</id><published>2010-02-03T09:36:00.000-08:00</published><updated>2010-02-07T23:27:36.839-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-07T23:27:36.839-08:00</app:edited><title>Google Software updates nexus one with Multitouch !!</title><content type="html">Great News!&lt;br&gt; &amp;nbsp;&lt;br&gt; Google has announced software upgrade for Nexus One smart phone.&amp;nbsp; &lt;br&gt; Nexus One&amp;#8217;s software update includes some enhancements, fixes and great new features describe below:&lt;br&gt; &lt;br&gt; &lt;b&gt;&lt;span class="Apple-style-span"  style="border-collapse: separate; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; font-size: medium;"&gt;&lt;span  class="Apple-style-span"  style="color: rgb(21, 21, 21); font-family: Verdana,Georgia,'Times New Roman',Times,serif; font-size: 13px; line-height: 18px; text-align: left;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;Multi-touch&lt;/b&gt; /&lt;b&gt;Pinch-to-zoom Functionality&lt;/b&gt;: New pinch-to-zoom mechanism is included which was missing before and now it works for phone&amp;#8217;s browser, gallery and maps. &lt;a  href="http://www.geek.com/articles/mobile/google-updates-nexus-one-with-multitouch-2010022/"&gt;http://www.geek.com/articles/mobile/google-updates-nexus-one-with-multitouch-2010022/&lt;/a&gt;&lt;br&gt; &lt;br&gt; &lt;b&gt;Google Goggles&lt;/b&gt;: It will be available directly on your mobile phone and you can launch it from All Apps menu. So, you can use Nexus One&amp;#8217;s camera to start searching the web. (&lt;a  href="http://www.google.com/mobile/goggles/#landmark"&gt;http://www.google.com/mobile/goggles&lt;/a&gt;)&lt;br&gt; &lt;br&gt; &lt;b&gt;Google Maps&lt;/b&gt;: The updated Maps application version 3.4 is available with many new enhancements which include: Starred items synchronized, Search suggestions, Night mode in Google Maps Navigation&lt;br&gt; &lt;br&gt; &lt;b&gt;3G Connectivity: &lt;/b&gt;This fix helps some users who have problems with 3G connectivity.&lt;br&gt; &lt;br&gt; &lt;b&gt;Note: Nexus One&amp;#8217;s software update will be rolled out on the air and users may receive it until the end of the week.&lt;/b&gt;&lt;br&gt; &lt;br&gt; Thanks and Regards&lt;br&gt; Imam Raza &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2897201377558618334-8776322253684967532?l=imamrazaansari.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/pqnbvwt-RpIuy7botTbPPd60t1U/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/pqnbvwt-RpIuy7botTbPPd60t1U/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/pqnbvwt-RpIuy7botTbPPd60t1U/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/pqnbvwt-RpIuy7botTbPPd60t1U/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ImamRaza/~4/gmKP16mkeXs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://imamrazaansari.blogspot.com/feeds/8776322253684967532/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2897201377558618334&amp;postID=8776322253684967532" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2897201377558618334/posts/default/8776322253684967532?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2897201377558618334/posts/default/8776322253684967532?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ImamRaza/~3/gmKP16mkeXs/google-software-updates-nexus-one-with.html" title="Google Software updates nexus one with Multitouch !!" /><author><name>Imam Raza</name><uri>http://www.blogger.com/profile/04199744515202718863</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://imamrazaansari.blogspot.com/2010/02/google-software-updates-nexus-one-with.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkQCQH8zfSp7ImA9WxBXE0k.&quot;"><id>tag:blogger.com,1999:blog-2897201377558618334.post-7206501131695235622</id><published>2010-01-24T06:42:00.000-08:00</published><updated>2010-01-24T06:46:01.185-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-24T06:46:01.185-08:00</app:edited><title>Installing Android problem (failed to rename directory)</title><content type="html">&lt;span class="Apple-style-span"   style="border-collapse: separate; color: rgb(0, 0, 0);   font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;font-family:'Times New Roman';font-size:medium;"&gt; &lt;div   style="margin: 0px; padding: 0.6em; background-color: rgb(255, 255, 255);  font-style: normal; font-variant: normal; font-weight: normal;  line-height: 19px; font-size-adjust: none; font-stretch: normal; -x-system-font: none;font-family:Georgia,'Times New Roman','Bitstream Charter',Times,serif;font-size:13px;"&gt; &lt;p&gt;Recently I started development on Android platform.  When I first installed Android sdk 2.1 through SVD Manager, I encounter a very strange error below. The major problem with this error is that it occurs after taking longer time of downloading the component. For my internet connection it took about 23 min which it requires for downloading the component. After downloading the component it renames the&lt;span class="Apple-converted-space"&gt; &lt;/span&gt;&lt;span mce_name="strong" mce_style="font-weight: bold;" class="Apple-style-span" style="font-weight: bold;"&gt;tool&lt;/span&gt;&lt;span class="Apple-converted-space"&gt; &lt;/span&gt;folder which causes this error to occur  :&lt;/p&gt; &lt;blockquote&gt;   &lt;div id="_mcePaste"&gt;Downloading Android SDK Tools, revision 4&lt;/div&gt;   &lt;div id="_mcePaste"&gt;Installing Android SDK Tools, revision 4&lt;/div&gt;   &lt;div id="_mcePaste"&gt;Failed to rename directory E:\android-sdk_r3-windows\tools to E:\android-sdk_r3-windows\temp\ToolPackage.old01&lt;/div&gt;   &lt;div id="_mcePaste"&gt;-= Warning ! =-&lt;/div&gt;   &lt;div id="_mcePaste"&gt;A folder failed to be renamed or moved. On Windows this typically means that a program is using that folder (for example Windows Explorer.) Please close all running programs that may be locking the directory 'E:\android-sdk_r3-windows\tools' and try again.&lt;/div&gt;   &lt;div id="_mcePaste"&gt;Skipping 'SDK Platform Android 2.1, API 7, revision 1'; it depends on 'Android SDK Tools, revision 4' which was not installed.&lt;/div&gt;   &lt;div id="_mcePaste"&gt;Downloading SDK Platform Android 2.1, API 7, revision 1&lt;/div&gt; &lt;/blockquote&gt; &lt;p&gt;First I thought that I mistakenly opened tool folder in some other application so I started SVD manager again which took me again 23 min and after that I got the error again. Very frustrating. Since I was using windows 7 so I thing there might be some problem with windows 7. I started googling on this problem and then reviewing few ppls work around I came to know that this is typical problem with Antivirus. So when I turned off my Antivirus the error resolved. Hope my this post would definitly helps to novice you are just entering in the realm of the android development.&lt;/p&gt; &lt;/div&gt; &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2897201377558618334-7206501131695235622?l=imamrazaansari.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/rC5TwjRdEBokQqI7RFy19InFtVk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rC5TwjRdEBokQqI7RFy19InFtVk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/rC5TwjRdEBokQqI7RFy19InFtVk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rC5TwjRdEBokQqI7RFy19InFtVk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ImamRaza/~4/RUIhm0efwMs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://imamrazaansari.blogspot.com/feeds/7206501131695235622/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2897201377558618334&amp;postID=7206501131695235622" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2897201377558618334/posts/default/7206501131695235622?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2897201377558618334/posts/default/7206501131695235622?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ImamRaza/~3/RUIhm0efwMs/installing-android-problem-failed-to.html" title="Installing Android problem (failed to rename directory)" /><author><name>Imam Raza</name><uri>http://www.blogger.com/profile/04199744515202718863</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://imamrazaansari.blogspot.com/2010/01/installing-android-problem-failed-to.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0ENQno_cCp7ImA9WxBQGEU.&quot;"><id>tag:blogger.com,1999:blog-2897201377558618334.post-7302825794087501221</id><published>2010-01-18T22:11:00.000-08:00</published><updated>2010-01-18T22:14:53.448-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-18T22:14:53.448-08:00</app:edited><title>Nexus One Vs IPhone Review</title><content type="html">I have been using IPhone for some time and recently after the arrival of Nexus, I got chance to use it. Below are my unbiased review about both IPhone and Nexus as an end user.

&lt;ul&gt;   &lt;li&gt;Nexus doesn't have multi-touch feature while IPhone already had it. This seems to me the major feature missing in Nexus. This would make it hard atleast for IPhone community to use it.
 &lt;/li&gt;   &lt;li&gt;Nexus user feeling experience cannot compare with IPhone. IPhone provide much smoother and sophisticated user experience.&lt;/li&gt; &lt;/ul&gt; I was planning to buy nexus but now after using it in my company I would not want to purchase it. It needs to much mature for user experience as compare to IPhone&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2897201377558618334-7302825794087501221?l=imamrazaansari.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/3dRPcFH4U47d6L4sLm52ctma19Q/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3dRPcFH4U47d6L4sLm52ctma19Q/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/3dRPcFH4U47d6L4sLm52ctma19Q/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3dRPcFH4U47d6L4sLm52ctma19Q/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ImamRaza/~4/gWbBXgJbXo8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://imamrazaansari.blogspot.com/feeds/7302825794087501221/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2897201377558618334&amp;postID=7302825794087501221" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2897201377558618334/posts/default/7302825794087501221?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2897201377558618334/posts/default/7302825794087501221?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ImamRaza/~3/gWbBXgJbXo8/nexus-vs-iphone-review.html" title="Nexus One Vs IPhone Review" /><author><name>Imam Raza</name><uri>http://www.blogger.com/profile/04199744515202718863</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://imamrazaansari.blogspot.com/2010/01/nexus-vs-iphone-review.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUQFQHw9eCp7ImA9WxJVFU0.&quot;"><id>tag:blogger.com,1999:blog-2897201377558618334.post-1659652573043206000</id><published>2008-11-17T21:23:00.000-08:00</published><updated>2009-07-01T21:01:51.260-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-07-01T21:01:51.260-07:00</app:edited><title>Adobe Flex</title><content type="html">&lt;h1 align="center"&gt;Adobe Flex
&lt;/h1&gt;
&lt;p&gt;This blog is extracted from my presentations that I gave one and half years ago (May 02, 2007) in my firm to introduce flex technology and make my company realize the importance of flex and its future. I am glad that my prediction made at that time about flex future was right. Rightnow flex is the hottest RIA solution in the market and its hard to find its good developer. I am also glad that there are around more than 4  project in flex that my firm is doing and it has developed good flex expertise developer during last two years that I can bet probably among few excellent flex resource in the world. &lt;/p&gt;
&lt;p&gt;Following are the contents of the blog:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="#intro"&gt;Introduction&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#successstories"&gt;Successful stories&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#riachallenges"&gt;How Flex meets with RIA Challenges&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#FRArchitecture"&gt;Flex Runtime Architecture&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#fpm"&gt;What is Flex Programming Model&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#hfc"&gt;How Flex code is compiled&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#fpd"&gt;What are Flex Products&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#sample"&gt;Some Code Examples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#FlexTagLib"&gt;Flex 2 Tag Library for JSP&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#flexfordotnet"&gt;Flex for dotnet developer&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#moreflex"&gt;More on Flex&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#techqueries"&gt;Some queries about the technology&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#reference"&gt;References&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;h1&gt;&lt;a name="intro" id="intro"&gt;&lt;/a&gt;Introduction&lt;/h1&gt;&lt;ul&gt;  &lt;li&gt;Since the invent of internet and its improvement in the
bandwidth endeavors were being made to develop RIA (Rich
Internet Application) that would be same as desktop
applications. Researches, cientist and developers
(especially companies like Adobe and Microsoft) made their
efforts to develop a platform that would make RIA dream a
reality.&lt;/li&gt;
&lt;li&gt; There comes the race among different companies for
providing a platform for developing RIA. Microsoft made
some serious efforts few years ago and come up with RIA
and SOA based technology called “Microsoft
SilverLight”. Similar effort has been made by Adobe
whose outcome is in the form technology called Flex.&lt;/li&gt;&lt;/ul&gt;&lt;h1&gt;&lt;a name="successstories" id="successstories"&gt;&lt;/a&gt;Successful stories&lt;/h1&gt;&lt;p&gt;Followings are the Flex successfuly implementations: &lt;/p&gt;&lt;ul&gt;&lt;li&gt;Yahoo Maps&lt;/li&gt;&lt;li&gt;SAP Netweaver&lt;/li&gt;&lt;li&gt;"Development tasks become very streamlined and
straightforward in Flex 2, enabling us to
accelerate programming by as much as 50
percent." Thomas Gonzalez, managing director,
BrightPoint Consulting, Inc.&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.harley-davidson.com/pr/gm/customizer/launchCustomizer.asp"&gt;Harley-Davidson&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.viddler.com/"&gt;Viddler&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://developer.yahoo.com/flash/as3_api_libraries.html"&gt;Yahoo AS3 API Libraries for weather, Maps, search, yahoo upcomming&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;h1&gt;&lt;a name="riachallenges" id="riachallenges"&gt;&lt;/a&gt;How RIA Development Challenges resolved in Flex&lt;/h1&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Provide a familiar programming model&lt;/strong&gt;:
Flex provide a familiar programming model for both java and .net Programmers that is based on OOPs.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Leverage existing architecture&lt;/strong&gt;: Flex provide integration with existing application servers and SOAs. So provide organization who have invested heavily on application servers and SOAs to implement RIA.
&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Support standard protocols and application programming interfaces (APIs):&lt;/strong&gt; Flex has support for Standard Protocol and APIs like HTTP, XML and
SOAP/Webservices etc. Flex provides easy integration with famous java frameworks like Hibernet, Xfire and Spring etc.
&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Follow common key design patterns&lt;/strong&gt;: Flex provide MVC based Framework known as “&lt;em&gt;Cairngorm&lt;/em&gt;”/"&lt;em&gt;PureMVC&lt;/em&gt;".
&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Integrate with existing processes:&lt;/strong&gt; Flex can be easily integrated with existing development processes like using
automated build script ant for deployment etc..
&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Provide rich tooling&lt;/strong&gt;: Flex provide rich tools.&lt;/li&gt;&lt;/ul&gt;&lt;h1&gt;&lt;a name="FRArchitecture" id="FRArchitecture"&gt;&lt;/a&gt;Flex Runtime Architecture&lt;/h1&gt;
&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_UKic5xyOJKE/SSOcFSehceI/AAAAAAAAAD0/TcNKUUjaA8U/s1600-h/FlexRuntimeArch.jpg"&gt;&lt;img src="http://4.bp.blogspot.com/_UKic5xyOJKE/SSOcFSehceI/AAAAAAAAAD0/TcNKUUjaA8U/s320/FlexRuntimeArch.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5270227603626750434" style="cursor: pointer; width: 320px; height: 315px; " /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;h1&gt;&lt;a name="fpm" id="fpm"&gt;&lt;/a&gt;What is Flex Programming Model?&lt;/h1&gt;&lt;p&gt;The Flex programming model is made of: &lt;/p&gt;&lt;ul&gt;&lt;li&gt;MXML, an XML language used to declaratively lay out the user interface of your application. &lt;/li&gt;
&lt;li&gt;    ActionScript, an ECMAScript compliant, object-oriented programming model. With some syntactical differences, ActionScript looks and feels similar to Java, and supports the same object-oriented constructs: packages, classes, inheritance, interfaces, strong (but also dynamic) typing etc. &lt;/li&gt;
&lt;li&gt;    An extensive set of class libraries. The online API documentation is available in a Javadoc-like format. &lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;&lt;a name="hfc" id="hfc"&gt;&lt;/a&gt;How Flex Code is compiled?&lt;/h1&gt;&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_UKic5xyOJKE/SSOcFqeStrI/AAAAAAAAAD8/Uy_MHF1jLTs/s1600-h/codeCompile.jpg"&gt;&lt;img src="http://2.bp.blogspot.com/_UKic5xyOJKE/SSOcFqeStrI/AAAAAAAAAD8/Uy_MHF1jLTs/s320/codeCompile.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5270227610068235954" style="cursor: pointer; width: 320px; height: 87px; " /&gt;&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;The Flex source code (.mxml and .as files) is compiled into Flash bytecode (.swf) that is executed at the client-side by the Flash virtual machine. &lt;/p&gt;
&lt;p&gt;There are different ways you can use the Flex compiler (mxmlc):&lt;/p&gt;&lt;ul&gt;&lt;li&gt;From the command line &lt;/li&gt;&lt;li&gt;As part of an ant script &lt;/li&gt;&lt;li&gt;Using FlexBuilder: the compilation process is integrated in the IDE &lt;/li&gt;&lt;li&gt;Using the web compiler (available with the Flex Data Services). This is similar to the JSP compilation model: The first time an application is requested it is compiled into bytecode, which is then cached to serve subsequent requests. &lt;/li&gt;&lt;/ul&gt;&lt;h1&gt;&lt;a name="fpd" id="fpd"&gt;&lt;/a&gt;Flex product line&lt;/h1&gt;&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_UKic5xyOJKE/SSOc5_ILCxI/AAAAAAAAAEE/92wLUxXtRJI/s1600-h/productline.jpg"&gt;&lt;img src="http://4.bp.blogspot.com/_UKic5xyOJKE/SSOc5_ILCxI/AAAAAAAAAEE/92wLUxXtRJI/s320/productline.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5270228508965800722" style="cursor: pointer; width: 320px; height: 199px; " /&gt;&lt;/a&gt;
&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;The Flex product line includes:
&lt;ul&gt;
&lt;li&gt; The Flex SDK which is free and includes the Flex libraries, the compiler (mxmlc), the debugger, and the documentation. &lt;/li&gt;
&lt;li&gt;        Flex Data Services (FDS), an optional set of server-side components deployed in your J2EE application server. FDS includes a Java RPC service, publish/subscribe messaging, and data management services. FDS is free for a single-CPU deployment (FDS Express), and is licensed per CPU when deployed on multiple CPUs. &lt;/li&gt;
&lt;li&gt;        FlexBuilder, an optional IDE for Flex development. Built as an Eclipse plug-in, FlexBuilder includes a design view and a code view, code hinting, visual debugging, etc. FlexBuilder is licensed on a per developer basis. &lt;/li&gt;
&lt;li&gt;        Optional charting components licensed on a per developer basis. &lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;We can develop and deploy Flex applications entirely for free using the SDK and the IDE of our choice.
&lt;/li&gt;&lt;/ul&gt;
&lt;h1&gt;&lt;a name="sample" id="sample"&gt;&lt;/a&gt;Source Code Example&lt;/h1&gt;&lt;h3&gt;Examples – 1 Fetching data from webservice&lt;/h3&gt;&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_UKic5xyOJKE/SSOdS9uHJhI/AAAAAAAAAEM/MXI7eXycWgI/s1600-h/example1.jpg"&gt;&lt;img src="http://4.bp.blogspot.com/_UKic5xyOJKE/SSOdS9uHJhI/AAAAAAAAAEM/MXI7eXycWgI/s320/example1.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5270228938084787730" style="cursor: pointer; width: 320px; height: 158px; " /&gt;&lt;/a&gt;
&lt;/p&gt;&lt;h3&gt;Source Code:&lt;/h3&gt;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;?xml version=”1.0” encoding=”utf-8”?&amp;gt;

&amp;lt;mx:Application xmlns:mx=”http://www.adobe.com/2006/mxml”
creationComplete=”ws.getList()”&amp;gt;
&lt;/em&gt;&lt;/p&gt;&lt;blockquote class="style2"&gt;&lt;p&gt;&amp;lt;mx:Style source=”main.css”/&amp;gt;
&amp;lt;mx:WebService id=”ws” wsdl=”http://mysite.com/services/CatalogWS?wsdl” &amp;gt;
&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&amp;lt;mx:operation name=”getList”/&amp;gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&amp;lt;/mx:WebService&amp;gt;
&amp;lt;mx:Panel title=”Product Catalog”&amp;gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&amp;lt;mx:DataGrid width=”100%” height=”100%”
dataProvider=”{ws.getList.lastResult}”&amp;gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&amp;lt;mx:columns&amp;gt;
&amp;lt;mx:DataGridColumn dataField=”name” headerText=”Name”/&amp;gt;
&amp;lt;mx:DataGridColumn dataField=”price” headerText=”Price”/&amp;gt;
&amp;lt;/mx:columns&amp;gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&amp;lt;/mx:DataGrid&amp;gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&amp;lt;/mx:Panel&amp;gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;em&gt;&amp;lt;/mx:Application&amp;gt;&lt;/em&gt;&lt;/p&gt;
&lt;h3&gt;Example -2 Accessing data using Java RPC&lt;/h3&gt;&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_UKic5xyOJKE/SSOdTMZ1-AI/AAAAAAAAAEU/NLoJd097vYQ/s1600-h/example2.jpg"&gt;&lt;img src="http://3.bp.blogspot.com/_UKic5xyOJKE/SSOdTMZ1-AI/AAAAAAAAAEU/NLoJd097vYQ/s320/example2.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5270228942026307586" style="cursor: pointer; width: 320px; height: 168px; " /&gt;&lt;/a&gt;
&lt;/p&gt;&lt;h3&gt;Source Code:&lt;/h3&gt;&lt;h3&gt;MXML&lt;/h3&gt;&lt;p&gt;&lt;em&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt;

&amp;lt;mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" backgroundColor="#FFFFFF"&amp;gt;&lt;/em&gt;&lt;/p&gt;&lt;blockquote class="style4"&gt;&lt;p&gt;&amp;lt;mx:RemoteObject id="srv" destination="product"/&amp;gt;

&amp;lt;mx:DataGrid dataProvider="{srv.getProducts.lastResult}" width="100%" height="100%"/&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;lt;mx:Button label="Get Data" click="srv.getProducts()"/&amp;gt; &lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;em&gt;&amp;lt;/mx:Application&amp;gt;&lt;/em&gt;&lt;/p&gt;&lt;h3&gt;ProductService.java&lt;/h3&gt;&lt;p&gt;&lt;em&gt;public class ProductService {&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;public List getProducts() {&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;ArrayList list = new ArrayList();

Connection c = null;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;try {&lt;/em&gt;&lt;/p&gt;&lt;blockquote class="style9"&gt;&lt;p&gt;c = ConnectionHelper.getConnection();
Statement s = c.createStatement();
ResultSet rs = s.executeQuery("SELECT * FROM product ORDER BY name");
while (rs.next()) {&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;list.add(new Product(
rs.getInt("product_id"),
rs.getString("name"),
rs.getString("description"),
rs.getString("image"),
rs.getString("category"),
rs.getDouble("price")));
&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;}&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;em&gt;} catch (Exception e) {

e.printStackTrace();

} finally {

try {
&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;c.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

return list;

} }&lt;/em&gt;&lt;/p&gt;
&lt;h3&gt;remoting-config.xml:&lt;/h3&gt;&lt;p&gt;&lt;em&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt; &lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;service id="remoting-service" class="flex.messaging.services.RemotingService"messageTypes="flex.messaging.messages.RemotingMessage"&amp;gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;adapters&amp;gt;
&amp;lt;adapter-definition id="java-object" class="flex.messaging.services.remoting.adapters.JavaAdapter" default="true"/&amp;gt;
&amp;lt;/adapters&amp;gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;default-channels&amp;gt;
&amp;lt;channel ref="my-amf"/&amp;gt;
&amp;lt;/default-channels&amp;gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;destination id="product"&amp;gt;
&amp;lt;properties&amp;gt;
&amp;lt;source&amp;gt;flex.testdrive.store.ProductService&amp;lt;/source&amp;gt;
&amp;lt;/properties&amp;gt;
&amp;lt;/destination&amp;gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;destination id="census"&amp;gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;properties&amp;gt;

&amp;lt;source&amp;gt;flex.testdrive.census.CensusService&amp;lt;/source&amp;gt;

&amp;lt;/properties&amp;gt;

&amp;lt;/destination&amp;gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;/service&amp;gt;&lt;/em&gt;&lt;/p&gt;&lt;h3&gt;Flex 2 Tag Library for JSP:&lt;/h3&gt;&lt;ul&gt;&lt;li&gt;The Flex 2 Tag Library for JSP is a set of JSP tags that you can use to embed Flex applications to a JSP page.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;em&gt;&amp;lt;%@ taglib uri="FlexTagLib" prefix="mm" %&amp;gt;

&amp;lt;mm:mxml&amp;gt;

&amp;lt;mx:Application  xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*"&amp;gt;

&amp;lt;% if (request.isUserInRole("admin")) { %&amp;gt;

&amp;lt;AdminConsole/&amp;gt;

&amp;lt;% } else { %&amp;gt;

&amp;lt;UserConsole/&amp;gt; &amp;lt;% } %&amp;gt;

&amp;lt;/mx:Application&amp;gt;

&amp;lt;/mm:mxml&amp;gt; &lt;/em&gt;&lt;/p&gt;
&lt;h1&gt;&lt;a name="flexfordotnet" id="flexfordotnet"&gt;&lt;/a&gt;Flex for Dotnet developer&lt;/h1&gt;&lt;h3&gt;WebORB for .Net&lt;/h3&gt;&lt;ul&gt;&lt;li&gt;WebORB offers a complete native .NET
implementation of Flex Remoting (RPC) and Flex
Messaging and in the latest release (3.0) a partial
implementation of the Flex Data Management
Services capabilities.&lt;/li&gt;
&lt;li&gt;    Flex applications can rely on WebORB to provide
functionality similar to that found in Adobe's Flex
Data Services product.&lt;/li&gt;&lt;/ul&gt;&lt;h3&gt;How to bind Dotnet Object?&lt;/h3&gt;&lt;p&gt;&amp;lt;mx:RemoteObject id="calculatorService"
destination="GenericDestination"
source="Weborb.Examples.BasicService"
fault="gotError(event)"&amp;gt; &lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&amp;lt;mx:method
name="Calculate"
result="gotCalculationResult(event)" /&amp;gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&amp;lt;/mx:RemoteObject&amp;gt;&lt;/p&gt;&lt;h1&gt;Comparing Flex syntax with ASP.net&lt;/h1&gt;&lt;h3&gt;Comparing syntactical concepts of MXML and ASP.net&lt;/h3&gt;



&lt;table width="55%" border="1"&gt;&lt;tbody&gt;  &lt;/tbody&gt;&lt;tbody&gt;  &lt;tr&gt;    &lt;td&gt;&lt;strong&gt;Asp.Net code&lt;/strong&gt;&lt;/td&gt;    &lt;td&gt;&lt;strong&gt;Flex MXML code&lt;/strong&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;    &lt;td&gt;&lt;em&gt;&amp;lt;%@ Page Language="C#" %&amp;gt;

&amp;lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0

Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-

transitional.dtd"&amp;gt; &amp;lt;html

xmlns="http://www.w3.org/1999/xhtml" &amp;gt;&lt;/em&gt;&lt;/td&gt;    &lt;td&gt;&lt;em&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt;

&amp;lt;mx:Application

xmlns:mx="http://www.adobe.com/2006/mxml" &amp;gt;&lt;/em&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;    &lt;td&gt;&lt;em&gt;&amp;lt;script runat="server"&amp;gt;

void Find_onClick (Object sender, EventArgs e) {

String prg = Program_txt.Text;

String cat = Type_cbo.SelectedItem.Text;

if (prg == "") { Message_txt.Text = "You've chosen to list everything in the " +

cat + " category."; } else { Message_txt.Text = "You've chosen to search for '"

+ prg + "' in the " + cat + " category."; }

} &amp;lt;/script&amp;gt;&lt;/em&gt;&lt;/td&gt;    &lt;td&gt;&lt;em&gt;&amp;lt;mx:Script&amp;gt; &amp;lt;![CDATA[

private function Find_onClick (event:Event):void {

var prg:String = Program_txt.text;

var cat:String = Type_cbo.selectedItem.label;

if (prg == "") { Message_txt.text = "You've chosen to list everything in

the " + cat + " category."; } else { Message_txt.text = "You've

chosen to search for '" + prg + "' in the " + cat + " category."; } } ]]&amp;gt;

&amp;lt;/mx:Script&amp;gt;&lt;/em&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;    &lt;td&gt;&lt;em&gt;&amp;lt;body&amp;gt; &amp;lt;form id="form1" runat="server"&amp;gt;

&amp;lt;div align="center"&amp;gt;

&amp;lt;asp:Label id="Program_lbl" runat="server" text="Program"/&amp;gt;

&amp;lt;asp:TextBox id="Program_txt" runat="server"/&amp;gt;

&amp;lt;asp:Label id="Type_lbl" runat="server" text="Type:"/&amp;gt;

&amp;lt;asp:DropDownList id="Type_cbo" runat="server"&amp;gt;

&amp;lt;asp:ListItem value="1" text="Literature" /&amp;gt;

&amp;lt;asp:ListItem value=“2" text="Theater" /&amp;gt;

&amp;lt;asp:ListItem value=“3" text="Visual Arts" /&amp;gt;

&amp;lt;/asp:DropDownList&amp;gt;

&amp;lt;asp:Button id="Find_btn" runat="server" text="Find"

onclick="Find_onClick" /&amp;gt;

&amp;lt;/div&amp;gt;

&amp;lt;div align="center"&amp;gt; &amp;lt;asp:Label id="Message_txt" runat="server"/&amp;gt;

&amp;lt;/div&amp;gt;

&amp;lt;/form&amp;gt;&lt;/em&gt;&lt;/td&gt;    &lt;td&gt;&lt;em&gt;&amp;lt;mx:VBox width="100%"&amp;gt;

&amp;lt;mx:HBox width="100%" horizontalAlign="center"&amp;gt;

&amp;lt;mx:Label id="Program_lbl" text="Program:"/&amp;gt;

&amp;lt;mx:TextInput id="Program_txt"/&amp;gt;

&amp;lt;mx:Label id="Type_lbl" text="Type:"/&amp;gt;

&amp;lt;mx:ComboBox id="Type_cbo"&amp;gt;

&amp;lt;mx:Array&amp;gt;

&amp;lt;mx:Object data=“1" label="Literature" /&amp;gt;

&amp;lt;mx:Object data=“2" label="Theater" /&amp;gt;

&amp;lt;mx:Object data=“3" label="Visual Arts" /&amp;gt;

&amp;lt;/mx:Array&amp;gt;

&amp;lt;/mx:ComboBox&amp;gt;

&amp;lt;mx:Button label="Find" id="Find_btn" click="Find_onClick(event)"/&amp;gt;

&amp;lt;/mx:HBox&amp;gt;

&amp;lt;mx:HBox width="100%" horizontalAlign="center"&amp;gt;

&amp;lt;mx:Label id="Message_txt"/&amp;gt;

&amp;lt;/mx:HBox&amp;gt;

&amp;lt;/mx:VBox&amp;gt;&lt;/em&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;    &lt;td&gt;&lt;strong&gt;Asp.net Output&lt;/strong&gt;&lt;/td&gt;    &lt;td&gt;&lt;strong&gt;Flex output&lt;/strong&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;    &lt;td&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; "&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_UKic5xyOJKE/SSOdTFdAq-I/AAAAAAAAAEc/AlSJonnOGIY/s1600-h/dotnetOutput.jpg"&gt;&lt;img src="http://2.bp.blogspot.com/_UKic5xyOJKE/SSOdTFdAq-I/AAAAAAAAAEc/AlSJonnOGIY/s320/dotnetOutput.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5270228940160543714" style="cursor: pointer; width: 320px; height: 40px; " /&gt;&lt;/a&gt;&lt;/span&gt;
&lt;/td&gt;    &lt;td&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; "&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_UKic5xyOJKE/SSOdTZjRpSI/AAAAAAAAAEk/nXZ42pWV-j8/s1600-h/flexoutput.jpg"&gt;&lt;img src="http://4.bp.blogspot.com/_UKic5xyOJKE/SSOdTZjRpSI/AAAAAAAAAEk/nXZ42pWV-j8/s320/flexoutput.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5270228945555531042" style="cursor: pointer; width: 320px; height: 49px; " /&gt;&lt;/a&gt;&lt;/span&gt;
&lt;/td&gt;  &lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;

&lt;h1&gt;&lt;a name="moreflex" id="moreflex"&gt;&lt;/a&gt;More on Flex&lt;/h1&gt;&lt;ul&gt;&lt;li&gt;There is MVC framework available in Flex called
“Cairngorm”.&lt;/li&gt;
&lt;li&gt; Hibernet and Spring frameworks can be used with Flex.&lt;/li&gt;
&lt;li&gt; Unit testing framework is available in Flex called
FlexUnit.&lt;/li&gt;
&lt;li&gt; Flex can be integrated with any JSR 168
compatible portal server to develop portlets.&lt;/li&gt;
&lt;li&gt;A Websphere portal page featuring five Flex-based portlets&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_UKic5xyOJKE/SSOenCuoVRI/AAAAAAAAAEs/pXh5Vu-g93g/s1600-h/webspherePortlets.jpg"&gt;&lt;img src="http://2.bp.blogspot.com/_UKic5xyOJKE/SSOenCuoVRI/AAAAAAAAAEs/pXh5Vu-g93g/s320/webspherePortlets.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5270230382538151186" style="cursor: pointer; width: 320px; height: 200px; " /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;h1&gt;&lt;a name="techqueries" id="techqueries"&gt;&lt;/a&gt;Some queries about the technology&lt;/h1&gt;&lt;ul&gt;&lt;li&gt;Would Adobe win RIA race against Microsoft?
&lt;ul&gt;
&lt;li&gt; Adobe made Flex open source. Microsoft is also planning to make
Silverlight opensource.&lt;/li&gt;
&lt;li&gt; Adobe is addressing large enterprise applications as well whereas
Microsoft in spite of its struggle didn’t able to penetrate yet in large
enterprise apps. For example Microsoft ERP solution Great Plain not
warmly welcomed. On the other hand SAP is using Flex. Also Flex
provides integration with Message Queue that makes it to be used
with any middleware solutions.&lt;/li&gt;
&lt;li&gt; Adobe has proved about its cross platform claims, whereas Microsoft
past has some questions about it.&lt;/li&gt;
&lt;li&gt; Microsoft Windows XP tour that is available at %SystemRoot
%\system32\tourstart.exe is made in flash :)&lt;/li&gt;
&lt;li&gt; According to Adobe, 97% of internet users have flash player
installed in their browser.&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;Would Job market forJ2EE developer give preferences to
developers having Flex skills?
&lt;ul&gt;
&lt;li&gt; A/c to a survey there has been an increase of 20% demand for J2EE
developers having flex skills.&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;h1&gt;&lt;a name="reference" id="reference"&gt;&lt;/a&gt;References:&lt;/h1&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.adobe.com/cfusion/tdrc/index.cfm?product=flex"&gt;Download Flex&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.adobe.com/products/flex/media/flexapp/"&gt;Video - Flex Development with flex builder&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://labs.adobe.com/wiki/index.php/Flex_2_Tag_Library_for_JSP"&gt;Flex2 Tag Library for JSP&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://labs.adobe.com/wiki/index.php/Cairngorm"&gt;Cairngorm - RIA MVC Architecture&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.adobe.com/devnet/flex/flex_java.html"&gt;Flex and Java Resource&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.flex.org/coldfusion/"&gt;Flex for ColdFusion developers&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.flex.org/java/"&gt;Flex for Java developers&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.flex.org/dotnet/"&gt;Flex for Dotnet developers&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.flex.org/php/"&gt;Flex for PHP developers&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.flex.org/ruby/"&gt;Flex for Ruby developers&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2897201377558618334-1659652573043206000?l=imamrazaansari.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/79ePBx-TPxkTXSfQi5d2n1-x_D4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/79ePBx-TPxkTXSfQi5d2n1-x_D4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/79ePBx-TPxkTXSfQi5d2n1-x_D4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/79ePBx-TPxkTXSfQi5d2n1-x_D4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ImamRaza/~4/ng3pw1sWh8E" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://imamrazaansari.blogspot.com/feeds/1659652573043206000/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2897201377558618334&amp;postID=1659652573043206000" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2897201377558618334/posts/default/1659652573043206000?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2897201377558618334/posts/default/1659652573043206000?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ImamRaza/~3/ng3pw1sWh8E/adobe-flex.html" title="Adobe Flex" /><author><name>Imam Raza</name><uri>http://www.blogger.com/profile/04199744515202718863</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_UKic5xyOJKE/SSOcFSehceI/AAAAAAAAAD0/TcNKUUjaA8U/s72-c/FlexRuntimeArch.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://imamrazaansari.blogspot.com/2008/11/adobe-flex.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkINRHg-eCp7ImA9WxRVGUQ.&quot;"><id>tag:blogger.com,1999:blog-2897201377558618334.post-6700216727689894636</id><published>2008-11-03T01:23:00.000-08:00</published><updated>2008-11-17T23:49:55.650-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-11-17T23:49:55.650-08:00</app:edited><title>Ruby On Rails For Java Developer</title><content type="html">&lt;style type="text/css"&gt;&lt;br /&gt;&lt;br /&gt;&lt;!-- .style1 {font-style: italic} .style4 {font-style: italic} --&gt;&lt;br /&gt;&lt;/style&gt;
&lt;h1 align="center"&gt;Ruby On Rails For Java Developer&lt;/h1&gt;
&lt;p&gt;In this blog I would discuss ruby on rails breifly from java developer perspective. Following are the contents of this blog:&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=2897201377558618334&amp;amp;postID=6700216727689894636#WhatIsRR"&gt;What is Ruby on Rails?&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=2897201377558618334&amp;amp;postID=6700216727689894636#HowRR"&gt;How Ruby On Rails acheive rapid development with quality?&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=2897201377558618334&amp;amp;postID=6700216727689894636#WhatIsRL"&gt;What is Ruby Language?&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=2897201377558618334&amp;amp;postID=6700216727689894636#RubyForJava"&gt;Ruby for java developer&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=2897201377558618334&amp;amp;postID=6700216727689894636#RRArchitecture"&gt;Rails Architecture&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=2897201377558618334&amp;amp;postID=6700216727689894636#RRAppStruct"&gt;Rails Application Structure&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=2897201377558618334&amp;amp;postID=6700216727689894636#MVC"&gt;Model, View and Controller (MVC)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=2897201377558618334&amp;amp;postID=6700216727689894636#sample"&gt;Sample Application&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;h2&gt;What is Ruby on Rails?&lt;/h2&gt;&lt;p&gt;Ruby on Rails is an open source Ruby framework for developing web-based, database-driven applications. One can develop web applications atleast ten times faster than any other typical java framework.
Rails’ primary goal was to bridge the gap between PHP and J2EE by providing an extensible, reusable web framework that offered an enjoyable, productive development experience. That goal was certainly met, and Rails became more than just a web framework.&lt;/p&gt;&lt;h2&gt;How Ruby On Rails acheive rapid development with quality?&lt;/h2&gt;&lt;p&gt;Rails takes full advantage of Ruby programming language.&lt;/p&gt;&lt;p&gt;Rails use two rails guiding principles:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Less software&lt;/strong&gt;
Rails require developer to write few lines of code to implement application.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Convention over configuration &lt;/strong&gt;
Ruby On Rails put an end to verbose long XML configuration files. There is no configurations files in Rails. Instead of configuration files, a Rails application uses a few simple programming conventions that allow it to figure out everything through reflection and discovery. &lt;/li&gt;&lt;/ul&gt;&lt;h2&gt;What is Ruby?&lt;/h2&gt;&lt;p&gt;Ruby is a pure object-oriented programming language. Below we will compare it with java.&lt;/p&gt;&lt;h2&gt;Ruby for Java developer&lt;/h2&gt;&lt;h4&gt;Similiarties:&lt;/h4&gt;&lt;ul&gt;&lt;li&gt;Memory is managed via a garbage collector. &lt;/li&gt;&lt;li&gt;Objects are strongly typed. &lt;/li&gt;&lt;li&gt;There are public, private, and protected methods. &lt;/li&gt;&lt;li&gt;There are embedded doc tools (Ruby’s is called RDoc). The docs generated by rdoc look very similar to those generated by javadoc.&lt;/li&gt;&lt;/ul&gt;&lt;h4&gt;Differences:&lt;/h4&gt;&lt;ul&gt;&lt;li&gt;You don’t need to compile your code. You just run it directly.&lt;/li&gt;&lt;li&gt;There are different GUI toolkits. Ruby users can try WxRuby, FXRuby, Ruby-GNOME2, or the bundled-in Ruby Tk for example.&lt;/li&gt;&lt;li&gt;You use the end keyword after defining things like classes, instead of having to put braces around blocks of code.&lt;/li&gt;&lt;li&gt;You have require instead of import.&lt;/li&gt;&lt;li&gt;All member variables are private. From the outside, you access everything via methods.&lt;/li&gt;&lt;li&gt;Parentheses in method calls are usually optional and often omitted.&lt;/li&gt;&lt;li&gt;Everything is an object.&lt;/li&gt;&lt;li&gt;Variable names are just labels. They don’t have a type associated with them. &lt;/li&gt;&lt;li&gt;There are no type declarations. You just assign to new variable names as-needed and they just “spring up” (i.e. a = [1,2,3] rather than int[] a = {1,2,3};). &lt;/li&gt;&lt;li&gt;It’s foo = Foo.new( "hi") instead of foo = new Foo( "hi" ). &lt;/li&gt;&lt;li&gt;The constructor is always named “initialize” instead of the name of the class. &lt;/li&gt;&lt;li&gt;YAML tends to be favored over XML. &lt;/li&gt;&lt;li&gt;It’s nil instead of null. &lt;/li&gt;
&lt;/ul&gt;&lt;h1&gt;Rails Architecture&lt;/h1&gt;&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_UKic5xyOJKE/SQ_nT-yhuqI/AAAAAAAAACE/IQYqlNaeb3k/s1600-h/RailsArchitecture.jpg"&gt;&lt;img src="http://2.bp.blogspot.com/_UKic5xyOJKE/SQ_nT-yhuqI/AAAAAAAAACE/IQYqlNaeb3k/s320/RailsArchitecture.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5264680819877853858" style="cursor: pointer; width: 320px; height: 226px; " /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;&lt;h1&gt;Rails Application Structure&lt;/h1&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_UKic5xyOJKE/SQ_oiNIIQJI/AAAAAAAAACc/kSosIA6fDlc/s1600-h/RailsAppStructure.jpg"&gt;&lt;img src="http://2.bp.blogspot.com/_UKic5xyOJKE/SQ_oiNIIQJI/AAAAAAAAACc/kSosIA6fDlc/s320/RailsAppStructure.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5264682163756351634" style="cursor: pointer; width: 169px; height: 320px; " /&gt;&lt;/a&gt;
&lt;p&gt;Following chart is above structure description:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;table width="1015" border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td width="102"&gt;&lt;strong&gt;Folder Name&lt;/strong&gt;&lt;/td&gt;&lt;td width="897"&gt;&lt;strong&gt;Description&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;app&lt;/td&gt;&lt;td&gt;Holds application specific code. This includes models, views, controllers, APIs and helpers.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;components&lt;/td&gt;&lt;td&gt;Components are self-contained packages of controllers and views. These are normally utilized when there is a need to reuse a view that has associated reusable behavior.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;config&lt;/td&gt;&lt;td&gt;Configuration files for Rails environment, URL routes and database&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;db&lt;/td&gt;&lt;td&gt;Database schema and migrations.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;doc&lt;/td&gt;&lt;td&gt;Holds application documentation generated from RDoc.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;lib&lt;/td&gt;&lt;td&gt;Application specific libraries.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;log&lt;/td&gt;&lt;td&gt;Development and production server logs.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;public&lt;/td&gt;&lt;td&gt;This folder is made available to the web server. It contains the dispatch scripts along with static content such as images, javascripts, stylesheets and default html files.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;script&lt;/td&gt;&lt;td&gt;Helper scripts for development server, automation, generation and plugin management.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;test&lt;/td&gt;&lt;td&gt;Unit, functional and integration tests along with test fixtures.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;tmp&lt;/td&gt;&lt;td&gt;Temporary directory for development server.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;vendor&lt;/td&gt;&lt;td&gt;Contains plugins and external libraries the application depends on.&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p&gt;&lt;/p&gt;&lt;h3&gt;&lt;span class="Apple-style-span"  style=" font-weight: normal;font-size:16px;"&gt;
&lt;/span&gt;&lt;/h3&gt;&lt;h3&gt;Rails App folder Structure&lt;/h3&gt;&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_UKic5xyOJKE/SQ_o-72pl9I/AAAAAAAAACk/PVO_caKrUXo/s1600-h/AppFolderStruct.jpg"&gt;&lt;img src="http://2.bp.blogspot.com/_UKic5xyOJKE/SQ_o-72pl9I/AAAAAAAAACk/PVO_caKrUXo/s320/AppFolderStruct.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5264682657335842770" style="cursor: pointer; width: 320px; height: 220px; " /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;&lt;h1&gt;Model, View and Controller&lt;/h1&gt;&lt;h2&gt;Model:&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;Rails interacts with models through the ActiveRecord component.&lt;/li&gt;&lt;li&gt;ActiveRecord models are based on the Active Record pattern defined in Martin Fowler’s “Patterns of Enterprise Application Architecture.”&lt;/li&gt;&lt;li&gt;Active Record defines a model structure that encapsulates a row in the database and domain logic on that data.&lt;/li&gt;&lt;li&gt;The ActiveRecord component requires only the database connection information to be configured in order to work.&lt;/li&gt;&lt;li&gt;There is no need for explicit object to database mapping. ActiveRecord elicits field information directly from the database itself at startup time.&lt;/li&gt;&lt;li&gt;It is possible to have a fully functional model that just extends from the ActiveRecord::Base class.
&lt;blockquote&gt;&lt;p&gt;&lt;em&gt;class Post &amp;lt; ActiveRecord::Base

    End&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;/li&gt;&lt;li&gt;Currently, ActiveRecord supports the following 9 databases: DB2, Firebird,MySQL, OpenBase, Oracle, PostgreSQL, SQLServer, SQLite and Sybase.&lt;/li&gt;&lt;li&gt;Associations must be defined in the models themselves and those relationships follow specified naming schemes.&lt;/li&gt;&lt;/ul&gt;&lt;h2&gt;Views:&lt;/h2&gt;&lt;table width="1014" border="1"&gt;&lt;tbody&gt;  &lt;tr&gt;    &lt;td width="110"&gt;RHTML&lt;/td&gt;    &lt;td width="888"&gt;This is the default view for Rails applications. RHTML renders HTML based content back to a client web browser. RHTML also contains Ruby expressions that allow for programming within the view&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;    &lt;td&gt;RJS&lt;/td&gt;    &lt;td&gt;RJS templates are Ruby based javascript views. This type of view is used for asynchronous javascript calls (AJAX) made to a Rails app. RJS templates allow the view to execute javascript effects and manipulate the page where the AJAX call originated.&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;    &lt;td&gt;RXML&lt;/td&gt;    &lt;td&gt;RXML is Ruby generated XML code. It uses builder templates to easier construct an XML document to return to the client. Rails automatically returns RXML views as the XML content type.&lt;/td&gt;  &lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;ul&gt;&lt;li&gt;All of the views in Rails are routed through a controller.&lt;/li&gt;&lt;li&gt;A controller action is responsible for passing information to a corresponding view. Any variables created in the instance of the Controller action will be made available to the view as well as application and controller specific helper functions.
&lt;blockquote&gt;&lt;p&gt;&lt;em&gt;&amp;lt;h1&amp;gt;Posts&amp;lt;/h1&amp;gt;

&amp;lt;% for post in @posts %&amp;gt;

&amp;lt;h2&amp;gt;&amp;lt;%=post.title%&amp;gt;&amp;lt;/h2&amp;gt;

&amp;lt;p&amp;gt;&amp;lt;%=post.body%&amp;gt;&amp;lt;/p&amp;gt;

&amp;lt;% end %&amp;gt;&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;/li&gt;&lt;/ul&gt;&lt;h2&gt;Controller:&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;Controller take a dispatched request and decide what to do with it.&lt;/li&gt;&lt;li&gt;Controllers are responsible for interacting with the model, choosing which view to render and any redirects that take place.&lt;/li&gt;&lt;li&gt;The action is no longer a standalone class but simply a method within a controller.
  &lt;blockquote&gt;&lt;p class="style1"&gt;class PostsController &amp;lt; ActionController::Base&lt;/p&gt;&lt;blockquote&gt;&lt;p class="style1"&gt;def add
 end

        def edit
end

        def delete
 end&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="style1"&gt;end&lt;/p&gt;&lt;/blockquote&gt;&lt;/li&gt;&lt;li&gt;The default routing format to invoke one of these actions is: controller/action/id.
  &lt;blockquote&gt;&lt;p&gt;&lt;em&gt;class PostsController &amp;lt; ActionController::Base&lt;/em&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&lt;em&gt;def show
          @post = Post.find(params[:id ])
end&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;em&gt;End&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;/li&gt;&lt;li&gt;By default Rails will render the corresponding view file with the same name as the action. Following is show.rhtml file
  &lt;blockquote&gt;&lt;p&gt;&lt;em&gt;&amp;lt;h1&amp;gt;&amp;lt;%=@post.title %&amp;gt;&amp;lt;/h1&amp;gt;

      &amp;lt;p&amp;gt;&amp;lt;%=@post.body %&amp;gt;&amp;lt;/p&amp;gt;

      posted by %=@post.author%&lt;/em&gt;&lt;/p&gt;&lt;p&gt;
&lt;/p&gt;&lt;/blockquote&gt;&lt;/li&gt;&lt;/ul&gt;&lt;h1&gt;&lt;a name="sample" id="sample"&gt;&lt;/a&gt;Creating Simple Application&lt;/h1&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_UKic5xyOJKE/SQ_pZ0KeleI/AAAAAAAAACs/MhA4jzXjD6c/s1600-h/creatingSimpleApp1.jpg"&gt;&lt;img src="http://3.bp.blogspot.com/_UKic5xyOJKE/SQ_pZ0KeleI/AAAAAAAAACs/MhA4jzXjD6c/s320/creatingSimpleApp1.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5264683119127991778" style="cursor: pointer; width: 320px; height: 136px; " /&gt;&lt;/a&gt;
&lt;p&gt;&lt;/p&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_UKic5xyOJKE/SQ_qHM2F8jI/AAAAAAAAADE/hqAOTjQ2nxI/s1600-h/creatingSimpleApp2.jpg"&gt;&lt;img src="http://3.bp.blogspot.com/_UKic5xyOJKE/SQ_qHM2F8jI/AAAAAAAAADE/hqAOTjQ2nxI/s320/creatingSimpleApp2.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5264683898847490610" style="cursor: pointer; width: 320px; height: 150px; " /&gt;&lt;/a&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_UKic5xyOJKE/SQ_qHGPR-XI/AAAAAAAAAC8/TxOVWiA8s9s/s1600-h/creatingSimpleApp3.jpg"&gt;&lt;img src="http://3.bp.blogspot.com/_UKic5xyOJKE/SQ_qHGPR-XI/AAAAAAAAAC8/TxOVWiA8s9s/s320/creatingSimpleApp3.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5264683897074088306" style="cursor: pointer; width: 320px; height: 150px; " /&gt;&lt;/a&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_UKic5xyOJKE/SQ_pwv7qZXI/AAAAAAAAAC0/ujMsbX3dJJo/s1600-h/creatingSimpleApp4.jpg"&gt;&lt;img src="http://2.bp.blogspot.com/_UKic5xyOJKE/SQ_pwv7qZXI/AAAAAAAAAC0/ujMsbX3dJJo/s320/creatingSimpleApp4.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5264683513129100658" style="cursor: pointer; width: 266px; height: 320px; " /&gt;&lt;/a&gt;&lt;/p&gt;&lt;h2&gt;Step 1- Creating App&lt;/h2&gt;&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_UKic5xyOJKE/SQ_qfB-qjGI/AAAAAAAAADM/OA0wR582obs/s1600-h/creatingSimpleApp5.jpg"&gt;&lt;img src="http://4.bp.blogspot.com/_UKic5xyOJKE/SQ_qfB-qjGI/AAAAAAAAADM/OA0wR582obs/s320/creatingSimpleApp5.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5264684308247514210" style="cursor: pointer; width: 270px; height: 320px; " /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Step 2- Create Database&lt;/h2&gt;&lt;h2&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_UKic5xyOJKE/SQ_rDqVBl1I/AAAAAAAAADc/DQWyRxdnsUs/s1600-h/creatingSimpleApp6.jpg"&gt;&lt;img src="http://1.bp.blogspot.com/_UKic5xyOJKE/SQ_rDqVBl1I/AAAAAAAAADc/DQWyRxdnsUs/s320/creatingSimpleApp6.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5264684937554007890" style="cursor: pointer; width: 320px; height: 34px; " /&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_UKic5xyOJKE/SQ_q1v2cNeI/AAAAAAAAADU/3OgMklWLCzk/s1600-h/creatingSimpleApp7.jpg"&gt;&lt;img src="http://4.bp.blogspot.com/_UKic5xyOJKE/SQ_q1v2cNeI/AAAAAAAAADU/3OgMklWLCzk/s320/creatingSimpleApp7.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5264684698518173154" style="cursor: pointer; width: 320px; height: 60px; " /&gt;&lt;/a&gt;&lt;/p&gt;&lt;h2&gt;Step 3 – Provide database connection Entry in cookbook2/config/database.YAML&lt;/h2&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;p&gt;&lt;em&gt;# MySQL (default setup). Versions 4.1 and 5.0 are recommended.
 #
 # Install the MySQL driver:

      # gem install mysql

      # On MacOS X:

      # gem install mysql -- --include=/usr/local/lib

      # On Windows:

      # gem install mysql

      # Choose the win32 build.

      # Install MySQL and put its /bin directory on your path.

      #

      # And be sure to use new-style password hashing:

      # http://dev.mysql.com/doc/refman/5.0/en/old-client.html

      development:&lt;/em&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&lt;em&gt;adapter: mysql
database: mydb
username: root
password: root
host: localhost&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;h2&gt;Step 4- Generate Application&lt;/h2&gt;&lt;h3&gt;For Recipe:&lt;/h3&gt;&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_UKic5xyOJKE/SQ_rRxWfVRI/AAAAAAAAADk/5Pxn85jsmmg/s1600-h/creatingSimpleApp8.jpg"&gt;&lt;img src="http://4.bp.blogspot.com/_UKic5xyOJKE/SQ_rRxWfVRI/AAAAAAAAADk/5Pxn85jsmmg/s320/creatingSimpleApp8.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5264685179957368082" style="cursor: pointer; width: 320px; height: 162px; " /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;For Category :&lt;/h3&gt;&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_UKic5xyOJKE/SQ_rtNZHl-I/AAAAAAAAADs/6iR_dV1x2ow/s1600-h/creatingSimpleApp9.jpg"&gt;&lt;img src="http://1.bp.blogspot.com/_UKic5xyOJKE/SQ_rtNZHl-I/AAAAAAAAADs/6iR_dV1x2ow/s320/creatingSimpleApp9.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5264685651341055970" style="cursor: pointer; width: 320px; height: 170px; " /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;&lt;h2&gt;Lets Look at generated Code &lt;/h2&gt;&lt;h3&gt;Model Code:&lt;/h3&gt;&lt;blockquote&gt;&lt;p&gt;&lt;em&gt;class Category &amp;lt; ActiveRecord::Base

  end&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;h3&gt;Controller Code:&lt;/h3&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;p&gt;&lt;em&gt;class CategoryController &amp;lt; ApplicationController
&lt;/em&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&lt;em&gt;def show
        @category = Category.find(params[:id])
end
&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;def new
        @category = Category.new
end
&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;def create
&lt;/em&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&lt;em&gt;@category = Category.new(params[:category])

        if @category.save
&lt;/em&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&lt;em&gt;flash[:notice] = 'Category was successfully created.'

          redirect_to :action =&amp;gt; 'list'
&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;em&gt;else&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;render :action =&amp;gt; 'new'&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;end&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;em&gt;end&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;em&gt;End&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;h3&gt;
&lt;/h3&gt;&lt;h3&gt;View Code:&lt;/h3&gt;&lt;blockquote&gt;&lt;p&gt;&lt;em&gt;&amp;lt;h1&amp;gt;Editing category&amp;lt;/h1&amp;gt;

    &amp;lt;% form_tag :action =&amp;gt; 'update', :id =&amp;gt; @category do

    %&amp;gt;

    &amp;lt;%= render :partial =&amp;gt; 'form' %&amp;gt;

    &amp;lt;%= submit_tag 'Edit' %&amp;gt;

    &amp;lt;% end %&amp;gt;

    &amp;lt;%= link_to 'Show', :action =&amp;gt; 'show', :id =&amp;gt;

    @category %&amp;gt; |

&amp;lt;%= link_to 'Back', :action =&amp;gt; 'list' %&amp;gt;&lt;/em&gt; &lt;/p&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;h2&gt;Step 5- Run development server&lt;/h2&gt;&lt;p&gt;&lt;img src="http://3.bp.blogspot.com/_UKic5xyOJKE/SQ7bLcCRwWI/AAAAAAAAABU/S4WmmR5xCWI/s320/creatingSimpleApp10.jpg" alt="" width="516" height="167" /&gt;&lt;/p&gt;&lt;h2&gt;Here you go&lt;/h2&gt;&lt;p&gt;&lt;img src="http://1.bp.blogspot.com/_UKic5xyOJKE/SQ7bq2U5S9I/AAAAAAAAABc/os05Z0BS7ow/s320/creatingSimpleApp11.jpg" alt="" width="600" height="255" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="http://4.bp.blogspot.com/_UKic5xyOJKE/SQ7bq8DkWsI/AAAAAAAAABk/UOJyDQLpiKc/s320/creatingSimpleApp12.jpg" alt="" width="600" height="281" /&gt;&lt;/p&gt;
&lt;h1&gt;References&lt;/h1&gt;&lt;ul&gt;&lt;li&gt;Learning Ruby from other languages background. &lt;a href="http://www.ruby-lang.org/en/documentation/ruby-from-other-languages/"&gt;http://www.ruby-lang.org/en/documentation/ruby-from-other-languages/&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Ruby in twenty minutes.&lt;a href="http://www.ruby-lang.org/en/documentation/quickstart/"&gt;http://www.ruby-lang.org/en/documentation/quickstart/&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Ruby Resource. /&lt;a href="http://www.ruby-lang.org/en/documentation/"&gt;http://www.ruby-lang.org/en/documentation/&lt;/a&gt;

&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2897201377558618334-6700216727689894636?l=imamrazaansari.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/33lVvCFqPZJFxvnzCjyrzswmsd0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/33lVvCFqPZJFxvnzCjyrzswmsd0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/33lVvCFqPZJFxvnzCjyrzswmsd0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/33lVvCFqPZJFxvnzCjyrzswmsd0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ImamRaza/~4/N4Ggj_w79oY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://imamrazaansari.blogspot.com/feeds/6700216727689894636/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2897201377558618334&amp;postID=6700216727689894636" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2897201377558618334/posts/default/6700216727689894636?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2897201377558618334/posts/default/6700216727689894636?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ImamRaza/~3/N4Ggj_w79oY/ruby-on-rails-for-java-developer.html" title="Ruby On Rails For Java Developer" /><author><name>Imam Raza</name><uri>http://www.blogger.com/profile/04199744515202718863</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_UKic5xyOJKE/SQ_nT-yhuqI/AAAAAAAAACE/IQYqlNaeb3k/s72-c/RailsArchitecture.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://imamrazaansari.blogspot.com/2008/11/ruby-on-rails-for-java-developer.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUcDRHk9fip7ImA9WxRUFUg.&quot;"><id>tag:blogger.com,1999:blog-2897201377558618334.post-2692487466573023250</id><published>2008-10-31T10:39:00.000-07:00</published><updated>2008-11-24T10:57:55.766-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-11-24T10:57:55.766-08:00</app:edited><title>How to install livecycle ES Server quickly for playing with it?</title><content type="html">&lt;div&gt;&lt;h1&gt;How to install livecycle ES Server quickly for playing with it?&lt;/h1&gt;&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;This article is useful for those who wanted to install LiveCycle ES Server very quickly (in just 20-30 min without going into hassles of configuring things) to just play with it.&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;When I was first time installing livecycle ES server on my laptop to play with LiveCycle ES, I went through number of adobe documents. I was willing to find a way of quickly installing it without going into hassles of lots of configuration details. After spending few days for different LiveCycle Server installation documents and trying them, I was able of find the way of quick installation through using Jboss turnkey installation.In following I would discuss Adobe LiveCycle Server installations types available in general and how to install LiveCycle Server quickly using Abode Jboss turnkey installation.&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;&lt;h2&gt;Overview of LiveCycle Server Installations:&lt;/h2&gt;&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;Live Cycle Server installation can be done with several configuration depending on type of J2EE application Server and database. &lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;Followings are the application server for which LiveCycle Server can be configured:&lt;ul&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt; &lt;li&gt;Jboss Server&lt;/li&gt;&lt;/div&gt;&lt;div&gt;&lt;li&gt; Bea WebLogic&lt;/li&gt;&lt;/div&gt;&lt;div&gt;&lt;li&gt; IBM WebSphere&lt;/li&gt;&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;Followings are the databases that can be used for LiveCycle ES server:&lt;/div&gt;&lt;ul&gt;&lt;div&gt;&lt;li&gt; DB2&lt;/li&gt;&lt;/div&gt;&lt;div&gt;&lt;li&gt; MySQL&lt;/li&gt;&lt;/div&gt;&lt;div&gt;&lt;li&gt; SQL Server 2005&lt;/li&gt;&lt;/div&gt;&lt;div&gt;&lt;li&gt; Oracle&lt;/li&gt;&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/ul&gt;&lt;div&gt;Now as you might have guessed there can be several installation choices (using one J2EE server type with different type of database). So there is 12 installation choices. Adobe provides liveCycle Server for each J2EE Server type. When you start LiveCycle Server installation with any J2EE server, you would have choice of eighter using Automatic configuration of J2EE Server for use with LiveCycle or using manual configuration.You would also have to manually set up database as describe in Adobe PrepareInstall.pdf doc.&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;Now if you would like to get yourself away from hassles involving setting up Database and J2EE SErver for LiveCycle to use then be happy there is a very quick easy installation available from Adobe. This installation is Called "Jboss turnkey installation". This installation includes mySQL database installation already setup for use with LiveCycle and preconfigured Jboss server for use with LiveCylce.  All you need to do is to press double click the LiveCycle Setup and follow instruction just like any Microsoft product and click next next buttons. Read following pdf doc from adobe for installation steps in detail:&lt;/div&gt;&lt;div&gt;www.adobe.com/go/learn_lc_installTurnkey.&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;You can download Jboss turnkey LiveCycle Setup from here.&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;The good thing about this setup is that its for development use and it can be installed on Microsoft XP where as other LiveCycle installations are aimed by Adobe for use on Microsoft Windows Server 2003 Sp2 which Adobe clearly mentioned in its prepareInstall.pdf.&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2897201377558618334-2692487466573023250?l=imamrazaansari.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/-1Nniag3gOryMrBpPbDi0FsF89I/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/-1Nniag3gOryMrBpPbDi0FsF89I/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/-1Nniag3gOryMrBpPbDi0FsF89I/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/-1Nniag3gOryMrBpPbDi0FsF89I/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ImamRaza/~4/ni_MnqlxUg4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://imamrazaansari.blogspot.com/feeds/2692487466573023250/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2897201377558618334&amp;postID=2692487466573023250" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2897201377558618334/posts/default/2692487466573023250?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2897201377558618334/posts/default/2692487466573023250?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ImamRaza/~3/ni_MnqlxUg4/how-to-install-livecycle-es-server.html" title="How to install livecycle ES Server quickly for playing with it?" /><author><name>Imam Raza</name><uri>http://www.blogger.com/profile/04199744515202718863</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://imamrazaansari.blogspot.com/2008/10/how-to-install-livecycle-es-server.html</feedburner:origLink></entry></feed>

