<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>&#60;deepakalur/&#62; &#187; Programming</title>
	<atom:link href="http://deepakalur.wordpress.com/category/programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://deepakalur.wordpress.com</link>
	<description>my blog</description>
	<lastBuildDate>Thu, 24 Sep 2009 17:32:50 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='deepakalur.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/ebc713e8d115eab0c9ca7dd49d1c61df?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>&#60;deepakalur/&#62; &#187; Programming</title>
		<link>http://deepakalur.wordpress.com</link>
	</image>
			<item>
		<title>OMG! We launched OMA and EMML!</title>
		<link>http://deepakalur.wordpress.com/2009/09/24/omg-we-launched-oma-and-emml/</link>
		<comments>http://deepakalur.wordpress.com/2009/09/24/omg-we-launched-oma-and-emml/#comments</comments>
		<pubDate>Thu, 24 Sep 2009 16:59:12 +0000</pubDate>
		<dc:creator>deepakalur</dc:creator>
				<category><![CDATA[Architecture]]></category>
		<category><![CDATA[Enterprise 2.0]]></category>
		<category><![CDATA[Enterprise Mashups]]></category>
		<category><![CDATA[JackBe]]></category>
		<category><![CDATA[Mashups]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[DSL]]></category>
		<category><![CDATA[emml]]></category>
		<category><![CDATA[Mashup Language]]></category>
		<category><![CDATA[OMA]]></category>

		<guid isPermaLink="false">http://deepakalur.wordpress.com/?p=199</guid>
		<description><![CDATA[""
A Language is the best tool one can have.
Today we launched the Open Mashup Alliance (OMA) to promote and foster interoperability and portability through an open mashup language. As a founding member of OMA, JackBe has contributed EMML to the Alliance and, indirectly, to the entire mashup community. Joining us (see this, this and this)are other industry leaders such as Adobe, Bank of America, Capgemini, Hinchcliffe &#38; Co., HP, Intel, Kapow Technologies, Programmable Web, Synteractive, and Xignite.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deepakalur.wordpress.com&blog=85111&post=199&subd=deepakalur&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>[Crossposted from my JackBe <a title="OMG! We launched OMA and EMML!" href="http://blogs.jackbe.com/2009/09/omg-we-launched-oma-and-emml.html" target="_blank">blog</a>]</p>
<p>Today is an exciting day for us at JackBe.  It is particularly exciting for our engineering team.  Why?  Walk down the memory lane with me for a minute&#8230;</p>
<p>About 3 years ago, we embarked on a mission to create a new kind of software which today we call an ‘enterprise mashup platform’.  And as we started designing JackBe’s enterprise mashup platform (which we ultimately named &#8216;<a href="http://www.jackbe.com/products">Presto</a>&#8216;), we knew the basic problem we needed to address was how to make data securely and easily accessible to enterprise users.</p>
<p>That&#8217;s not an easy problem, of course.  &#8216;Easy&#8217; and &#8217;secure&#8217; aren&#8217;t often associated with each other.  And enterprises are typically heterogeneous collections of data sources, data security solutions, data destinations; web services, portals, databases, spreadsheets, and much, much more.  And as we considered the many different options we had to tackle this complex problem, we always came back to one fundamental concept that has proven its worth time and again:</p>
<p style="text-align:center;"><strong>A language is the best tool one can have.</strong></p>
<p>So began our journey towards an &#8216;Enterprise Mashup Markup Language&#8217; (EMML), a language specifically designed to address the needs of creating and sharing mashups within the enterprise. In conceiving, designing and implementing the language, <a href="http://www.blogger.com/profile/17581247639113368273">Raj</a> (our chief architect) and I set out defining the key wants and desires and came up with the following criteria as a basis for EMML:</p>
<ol>
<li>It should be <span style="font-style:italic;">declarative</span>.  So we made it XML-based.</li>
<li>It should leverage existing <span style="font-style:italic;">standards</span>.  So we used XPath and XQuery.</li>
<li>It should be <span style="font-style:italic;">domain specific</span> to enterprise mashups.  So we added features for user oriented activities.</li>
<li>It should be <span style="font-style:italic;">friendly</span> to popular languages.  So we allow the embed of Java, JavaScript, Ruby, and Groovy scripts.</li>
<li>It should be <span style="font-style:italic;">tooling</span> friendly.  So we made it interpretive for construction and execution on the fly.  And extensible with your own meta-data.</li>
<li>It should be <span style="font-style:italic;">data neutral</span>.  So we made it work with all kinds of data from different sources.</li>
</ol>
<p>While I will refrain from describing the complete language in this blog (instead refer you to the excellent documentation on EMML on the Open Mashup Alliance <a href="http://www.openmashup.org/">website</a>), I would like to point out a few key features of EMML here using the following diagram:</p>
<div style="text-align:center;"><a href="http://2.bp.blogspot.com/_xDhbUkqcpek/SrqIBuvzEfI/AAAAAAAAAC4/NiKPiaa7eSw/s1600-h/EMML.png"><img style="display:block;text-align:center;cursor:pointer;width:400px;height:360px;margin:0 auto 10px;" src="http://2.bp.blogspot.com/_xDhbUkqcpek/SrqIBuvzEfI/AAAAAAAAAC4/NiKPiaa7eSw/s400/EMML.png" border="0" alt="" /></a><a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/us/"><img style="border-width:0;" src="http://i.creativecommons.org/l/by-nc-sa/3.0/us/80x15.png" alt="Creative Commons License" /></a></div>
<p>As you can see, from each feature, and from the collection of all the features EMML offers, it a robust and powerful language for mashups.  And over the last few years, EMML has become an important differentiator for <a href="http://www.jackbe.com/products">Presto</a>, our award winning Enterprise Mashup Platform. As part of <a href="http://www.jackbe.com/products">Presto</a>, since its debut, EMML has been thoroughly field-tested and proven. It is time to take EMML to the next level.So now let’s return to the present and let me tell you why it is so exciting for all of us here at JackBe.</p>
<p>Today we launched the <a href="http://www.openmashup.org/">Open Mashup Alliance</a> (OMA) to promote and foster interoperability and portability through an open mashup language. As a founding member of OMA, JackBe has contributed EMML to the Alliance and, indirectly, to the entire mashup community. Joining us (see <a href="http://www.openmashup.org/news/">this</a>, <a href="http://www.infoworld.com/t/application-development/led-jackbe-software-makers-form-mashup-alliance-068">this</a> and <a href="http://www.ddj.com/220200081">this</a>)are other industry leaders such as <a href="http://www.adobe.com/">Adobe</a>, <a href="http://www.bankofamerica.com/">Bank of America</a>, <a href="http://www.capgemini.com/">Capgemini</a>, <a href="http://hinchcliffeandcompany.com/">Hinchcliffe &amp; Co.</a>, <a href="http://www.hp.com/">HP</a>, <a href="http://www.intel.com/">Intel</a>, <a href="http://kapowtech.com/">Kapow Technologies</a>, <a href="http://www.programmableweb.com/">Programmable Web</a>, <a href="http://www.synteractive.com/">Synteractive</a>, and <a href="http://www.xignite.com/">Xignite</a>.</p>
<p>So why I am so excited about giving away our vision and our hard work?  Why would we want to give away one of our crown jewels?  Because…</p>
<ol>
<li>It offers an opportunity for our industry to converge upon an open language that aids interoperability and portability of enterprise mashups.</li>
<li>I believe that OMA offers a huge potential in enabling enterprise mashup adoption in the enterprise by promoting standard approaches and reducing risk and cost.</li>
<li>As a practitioner, I strongly believe in open and standards based approaches for new and emerging technologies and for enterprise mashups, OMA and EMML are it.</li>
<li>By contributing EMML to OMA, we will see a lot more innovation in this space by the members of the mashup community.</li>
<li>I look forward to working with other industry leaders who want to collaborate to ensure portability and interoperability for enterprise mashups.</li>
</ol>
<p>Why should you care? I hope many of the above reasons are also the relevant reasons for you. As a vendor or a practitioner, I hope you share the excitement and passion  for openness and collaboration in any technology.  Check out what several <a href="http://www.openmashup.org/news/">industry leaders are saying</a> about OMA and EMML and you will get a sense of why I am so thrilled.</p>
<p>As the enterprise mashup market evolves further, OMA will provide a platform to bring together different efforts around enterprise mashups into a collaborative alliance. If you are a mashup developer, programmer, IT developer, IT Manager, software vendor, or someone simply interested in enterprise mashups, join the <a href="http://groups.google.com/group/open-mashup-interest">OMA Support Group</a>, check out <a href="http://www.openmashup.org/">OMA website</a> and <a href="http://www.openmashup.org/download/">download</a> EMML reference implementation and start participating now.</p>
<p>This is just the start of things to come.<br />
Mash On!</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/deepakalur.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/deepakalur.wordpress.com/199/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/deepakalur.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/deepakalur.wordpress.com/199/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/deepakalur.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/deepakalur.wordpress.com/199/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/deepakalur.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/deepakalur.wordpress.com/199/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/deepakalur.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/deepakalur.wordpress.com/199/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deepakalur.wordpress.com&blog=85111&post=199&subd=deepakalur&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://deepakalur.wordpress.com/2009/09/24/omg-we-launched-oma-and-emml/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">deepakalur</media:title>
		</media:content>

		<media:content url="http://2.bp.blogspot.com/_xDhbUkqcpek/SrqIBuvzEfI/AAAAAAAAAC4/NiKPiaa7eSw/s400/EMML.png" medium="image" />

		<media:content url="http://i.creativecommons.org/l/by-nc-sa/3.0/us/80x15.png" medium="image">
			<media:title type="html">Creative Commons License</media:title>
		</media:content>
	</item>
		<item>
		<title>How I feel about Java&#8230;sometimes&#8230;</title>
		<link>http://deepakalur.wordpress.com/2005/11/07/how-i-feel-about-javasometimes/</link>
		<comments>http://deepakalur.wordpress.com/2005/11/07/how-i-feel-about-javasometimes/#comments</comments>
		<pubDate>Tue, 08 Nov 2005 05:32:00 +0000</pubDate>
		<dc:creator>deepakalur</dc:creator>
				<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.deepakalur.com/blog/2005/11/07/how-i-feel-about-javasometimes/</guid>
		<description><![CDATA[     A picture is worth a thousand words they say. So, without much ado, here it is&#8230; having been with Java since the beginning, here is how I feel about it now.
And to justify with some concrete evidence, here is the page count from the Java    In A [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deepakalur.wordpress.com&blog=85111&post=25&subd=deepakalur&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><img width="403" height="268" border="0" align="right" src="http://blogs.sun.com/roller/resources/alur/ScratJavaInANutShell-Small.gif" />     A picture is worth a thousand words they say. So, without much ado, here it is&#8230; having been with Java since the beginning, here is how I feel about it now.<br />
And to justify with some concrete evidence, here is the page count from the <a href="http://www.amazon.com/exec/obidos/ASIN/0596007736/deepakalursbl-20">Java    In A Nutshell</a> book that was one of my most beloved Java books in the last    decade. Not anymore, the friggin book is 1252 pages!</p>
<ul>
<li>1st Edition: 460 pages</li>
<li>2nd Edition: 628 pages</li>
<li>3rd Edition: 720 pages</li>
<li>4th Edition: 992 pages</li>
<li>5th Edition: 1252 pages</li>
</ul>
<p>Hell, it should be renamed to &#8220;Java in a Coconut Shell&#8221;. And I am just talking about core of Java here, not all the other extensions around it. Because there are spawns of Nutshell books like &#8220;Java Enterprise in a Nutshell&#8221; and what not.</p>
<p>PS: Apologies to those who came here looking for some philosophical/technical discussion about how I really feel about Java.</p>
<p><a target="_blank" href="http://blogs.sun.com/roller/resources/alur/howtoreadmyblog.htm"><img border="0" align="top" alt="YouRIt" src="http://blogs.sun.com/roller/resources/alur/yourit.gif" /></a>  <a rel="tag" href="http://technorati.com/tag/Java">Java</a> <a rel="tag" href="http://technorati.com/tag/humor">Humor</a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/deepakalur.wordpress.com/25/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/deepakalur.wordpress.com/25/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/deepakalur.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/deepakalur.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/deepakalur.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/deepakalur.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/deepakalur.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/deepakalur.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/deepakalur.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/deepakalur.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/deepakalur.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/deepakalur.wordpress.com/25/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deepakalur.wordpress.com&blog=85111&post=25&subd=deepakalur&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://deepakalur.wordpress.com/2005/11/07/how-i-feel-about-javasometimes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">deepakalur</media:title>
		</media:content>

		<media:content url="http://blogs.sun.com/roller/resources/alur/ScratJavaInANutShell-Small.gif" medium="image" />

		<media:content url="http://blogs.sun.com/roller/resources/alur/yourit.gif" medium="image">
			<media:title type="html">YouRIt</media:title>
		</media:content>
	</item>
		<item>
		<title>What&#039;s Your Preference &#8211; Properties or Preferences?</title>
		<link>http://deepakalur.wordpress.com/2005/05/02/whats-your-preference-properties-or-preferences/</link>
		<comments>http://deepakalur.wordpress.com/2005/05/02/whats-your-preference-properties-or-preferences/#comments</comments>
		<pubDate>Mon, 02 May 2005 22:09:07 +0000</pubDate>
		<dc:creator>deepakalur</dc:creator>
				<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.deepakalur.com/blog/2005/05/02/whats-your-preference-properties-or-preferences/</guid>
		<description><![CDATA[
As I mentioned in my earlier post, I spend some of my time on building a rich UI application using Swing. And when it came to choosing a mechanism to store my user preferences, I decided to not use property files which was how I had stored preferences before. But, now (since Java 1.4) I [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deepakalur.wordpress.com&blog=85111&post=61&subd=deepakalur&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /></p>
<p><img align="right" SRC="http://blogs.sun.com/roller/resources/alur/preferences.gif"/>As I mentioned in my earlier <a HREF="http://blogs.sun.com/roller/page/alur/20050315#swing_gridbag_netbeans_4_love">post</a>, I spend some of my time on building a rich UI application using Swing. And when it came to choosing a mechanism to store my user preferences, I decided to not use property files which was how I had stored preferences before. But, now (since Java 1.4) I use the <a HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/util/prefs/Preferences.html">java.util.Preferences</a> API to store and retrieve my preferences. I would not store sensitive information in preferences, but for non-sensitive info, Preferences API is a great way to persist and manage them. The reason I am posting this is that while talking to some of my friends I realized that not many were aware of the Preferences API despite it being around for a while now. Perhaps because most of us have been focussed on server-side software where we have many other options to store preferences such as JNDI registry or a centralized configuration management system. Anyway, if you are building a stand-alone Java application or a rich client and have a need to store user preferences, take a look at the Preferences API. I think it is a cool API.</p>
<p>Some references:</p>
<ul></p>
<li><a HREF="http://java.sun.com/j2se/1.5.0/docs/guide/preferences">Preferences API</a>
</li>
<li><a HREF="http://java.sun.com/j2se/1.5.0/docs/guide/preferences/#prefs-design-faq">Preferences FAQ</a>
</li>
<li><a HREF="http://www.onjava.com/pub/a/onjava/synd/2001/10/17/j2se.html">ONJava Article on Preferences API</a>
</li>
</ul>
<p>
</p>
<p>
<a href="http://blogs.sun.com/roller/resources/alur/howtoreadmyblog.htm"><img src="http://blogs.sun.com/roller/resources/alur/yourit.gif" alt="YouRIt" border="0" align="top"/></a> <a rel="tag" HREF="http://technorati.com/tag/Java">Java</a> <a rel="tag" HREF="http://technorati.com/tag/Programming">Programming</a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/deepakalur.wordpress.com/61/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/deepakalur.wordpress.com/61/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/deepakalur.wordpress.com/61/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/deepakalur.wordpress.com/61/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/deepakalur.wordpress.com/61/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/deepakalur.wordpress.com/61/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/deepakalur.wordpress.com/61/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/deepakalur.wordpress.com/61/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/deepakalur.wordpress.com/61/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/deepakalur.wordpress.com/61/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/deepakalur.wordpress.com/61/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/deepakalur.wordpress.com/61/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deepakalur.wordpress.com&blog=85111&post=61&subd=deepakalur&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://deepakalur.wordpress.com/2005/05/02/whats-your-preference-properties-or-preferences/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">deepakalur</media:title>
		</media:content>

		<media:content url="http://blogs.sun.com/roller/resources/alur/yourit.gif" medium="image">
			<media:title type="html">YouRIt</media:title>
		</media:content>
	</item>
		<item>
		<title>RMI Gotchas: Darn it! Not again&#8230;</title>
		<link>http://deepakalur.wordpress.com/2005/04/20/rmi-gotchas-darn-it-not-again/</link>
		<comments>http://deepakalur.wordpress.com/2005/04/20/rmi-gotchas-darn-it-not-again/#comments</comments>
		<pubDate>Wed, 20 Apr 2005 22:14:45 +0000</pubDate>
		<dc:creator>deepakalur</dc:creator>
				<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.deepakalur.com/blog/2005/04/20/rmi-gotchas-darn-it-not-again/</guid>
		<description><![CDATA[

It shouldn&#8216;t be this wicked. Ok, I admit it has been a while since I implemented
a Java RMI based
client/server. But, it shouldn&#8216;t be this wicked. So, I was trying to get some
RMI client/server code running on my machine. And I kept getting was this friggin
exception: 

Caused by: javax.naming.CommunicationException [Root exception is java.rmi.ServerException:
RemoteException occurred in server [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deepakalur.wordpress.com&blog=85111&post=62&subd=deepakalur&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /></p>
<p><img src="http://blogs.sun.com/roller/resources/alur/rmierror.gif" width="200" height="125" align="right"/><br />
It shouldn&#8216;t be this wicked. Ok, I admit it has been a while since I implemented<br />
a <a HREF="http://java.sun.com/products/jdk/rmi/index.jsp">Java RMI</a> based<br />
client/server. But, it shouldn&#8216;t be this wicked. So, I was trying to get some<br />
RMI client/server code running on my machine. And I kept getting was this friggin<br />
exception: </p>
<p></p>
<pre>Caused by: javax.naming.CommunicationException [Root exception is java.rmi.ServerException:
RemoteException occurred in server thread;
nested exception is: java.rmi.UnmarshalException: error unmarshalling arguments;
nested exception is: java.lang.<strong>ClassNotFoundException</strong>: com.sun.salsa.PatternModelImpl_Stub
</pre>
<p></p>
<p>The RMI docs said that anytime you get a <em>ClassNotFoundException</em>, it<br />
is most likely caused by an improperly set codebase<sup>[<a HREF="#JEREMYPITTENTHANKS">J</a>]</sup> So I checked<br />
the value of my <em>java.rmi.server.CodeBase </em>property. It was set as follows:
</p>
<p></p>
<pre>java.rmi.server.<strong>CodeBase</strong>=file://dev/salsa/classes </pre>
<p></p>
<p>I checked to make sure that the directory was there and that all the stubs<br />
and other classes were in there. They were. So, I ran the RMI server program<br />
again. But, again I got the same exception. What the heck is going on? And then<br />
it hit me. Isn&#8216;t that supposed to be <em>codebase</em> and not <em>CodeBase</em>?</p>
<p></p>
<p>So I change &quot;CodeBase&quot; to &quot;codebase&quot; and reset the property<br />
as follows:</p>
<p></p>
<pre>java.rmi.server.<strong>codebase</strong>=file:<strong>//</strong>dev/salsa/classes </pre>
<p></p>
<p>And give the program another try. This time, I got a <em>different </em>exception.</p>
<p></p>
<pre>Exception in thread &quot;main&quot; java.security.<strong>AccessControlException</strong>:
access denied (java.io.FilePermission //dev/salsa/classes read)
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:264)
at java.security.AccessController.checkPermission(AccessController.java:427)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
at java.lang.SecurityManager.checkRead(SecurityManager.java:871)
... </pre>
<p></p>
<p>Hmm&#8230;this looks like we need some permissions granted. That&#8216;s easy, let me go<br />
the <em>$JRE/lib/security</em> directory and change the <em>java.policy</em> file<br />
and add a new <em>grant </em>permission and it should all be fine. So I edit the<br />
<em>java.policy</em> file and add the <em>grant </em>permission: </p>
<p></p>
<pre>grant codeBase &quot;file://dev/salsa/classes&quot; {
permission java.io.FilePermission &quot;&gt;&quot;, &quot;read&quot;;
};
</pre>
<p></p>
<p>I run the program thinking I fixed the problem for good. But not so fast! I<br />
see the same exception again. Then it hit me again. I had committed another<br />
silly error. It appears that I gave 2 slashes (<em>file://...</em>) to the <em>codebase<br />
</em>to separate the <em>protocol </em>and the <em>url</em>. </p>
<p></p>
<p>So I quickly <em>undo </em>the changes I made to the <em>java.policy </em>file.<br />
I go back to the <em>codebase</em> property and this time I set it as follows:</p>
<p></p>
<pre>java.rmi.server.codebase=file:<strong>/</strong>dev/salsa/classes</pre>
<p></p>
<p>I restart my RMI server and <em>voila</em>! Everything works fine this time!
</p>
<p></p>
<p>Thought this record of my silly errors might help someone else sometime.</p>
<p>
<a name="JEREMYPITTENTHANKS"></a></p>
<p><sub>[J] Thanks to <a HREF="www.jpitten.btinternet.co.uk">Jeremy Pitten</a><br />
for reminding me the codebase settings.</sub></p>
<p><a href="http://blogs.sun.com/roller/resources/alur/howtoreadmyblog.htm"><img src="http://blogs.sun.com/roller/resources/alur/yourit.gif" alt="YouRIt" border="0" align="top"/></a> <a rel="tag" HREF="http://technorati.com/tag/RMI">RMI</a> <a rel="tag" HREF="http://technorati.com/tag/Java">Java</a> <a rel="tag" HREF="http://technorati.com/tag/Programming">Programming</a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/deepakalur.wordpress.com/62/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/deepakalur.wordpress.com/62/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/deepakalur.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/deepakalur.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/deepakalur.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/deepakalur.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/deepakalur.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/deepakalur.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/deepakalur.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/deepakalur.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/deepakalur.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/deepakalur.wordpress.com/62/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deepakalur.wordpress.com&blog=85111&post=62&subd=deepakalur&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://deepakalur.wordpress.com/2005/04/20/rmi-gotchas-darn-it-not-again/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">deepakalur</media:title>
		</media:content>

		<media:content url="http://blogs.sun.com/roller/resources/alur/rmierror.gif" medium="image" />

		<media:content url="http://blogs.sun.com/roller/resources/alur/yourit.gif" medium="image">
			<media:title type="html">YouRIt</media:title>
		</media:content>
	</item>
		<item>
		<title>Swing GridBag + Netbeans 4 = Love</title>
		<link>http://deepakalur.wordpress.com/2005/03/15/swing-gridbag-netbeans-4-love/</link>
		<comments>http://deepakalur.wordpress.com/2005/03/15/swing-gridbag-netbeans-4-love/#comments</comments>
		<pubDate>Wed, 16 Mar 2005 03:36:06 +0000</pubDate>
		<dc:creator>deepakalur</dc:creator>
				<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.deepakalur.com/blog/2005/03/15/swing-gridbag-netbeans-4-love/</guid>
		<description><![CDATA[Over the years, I have worked on and off on rich user interfaces. Recently, I have been pluggin away at a Swing UI for a cool project called SALSA that I will write about some other time. If you have ever used the Swing GridBag layout, I am sure you will identify with this cool [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deepakalur.wordpress.com&blog=85111&post=63&subd=deepakalur&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Over the years, I have worked on and off on rich user interfaces. Recently, I have been pluggin away at a Swing UI for a cool project called <a HREF="http://www.eweek.com/article2/0,1759,1611284,00.asp">SALSA</a> that I will write about some other time. If you have ever used the Swing GridBag layout, I am sure you will identify with this <a HREF="http://madbean.com/blog/2004/17/">cool Flash animated weblog by Matt Quail</a>. I sure do.<br />
So for many years, I have struggled with GridBag everytime I use it.</p>
<p>But ever since <a HREF="http://www.netbeans.org/switch/">Netbeans 4</a> was released, I have been liberated of this curse of the GridBag. NetBeans makes Swing development fast and easy and no more messing around with gridbag constraints, layout issues, etc. (unless you like to).<br />
As part of my customer facing job, I have used all the Java IDEs out there. But for me, when it comes to Swing in specific, and Java in general, nothing beats the new Netbeans!
</p>
<p>I Love NetBeans! Thanks, Netbeans team!
</p>
<p><a HREF="http://www.netbeans.org/switch/">Check it out!</a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/deepakalur.wordpress.com/63/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/deepakalur.wordpress.com/63/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/deepakalur.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/deepakalur.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/deepakalur.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/deepakalur.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/deepakalur.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/deepakalur.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/deepakalur.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/deepakalur.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/deepakalur.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/deepakalur.wordpress.com/63/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deepakalur.wordpress.com&blog=85111&post=63&subd=deepakalur&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://deepakalur.wordpress.com/2005/03/15/swing-gridbag-netbeans-4-love/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">deepakalur</media:title>
		</media:content>
	</item>
	</channel>
</rss>