<?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:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Connexxion : Connecting Life with Technology</title>
	<atom:link href="http://vikashazrati.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://vikashazrati.wordpress.com</link>
	<description>Byte by Byte Impressions on Technology, People and Process !</description>
	<pubDate>Fri, 04 Jul 2008 12:29:34 +0000</pubDate>
	<generator>http://wordpress.org/?v=MU</generator>
	<language>en</language>
			<item>
		<title>Better Software: Setting Up the Development Environment</title>
		<link>http://vikashazrati.wordpress.com/2008/07/04/better-software-development-environment/</link>
		<comments>http://vikashazrati.wordpress.com/2008/07/04/better-software-development-environment/#comments</comments>
		<pubDate>Fri, 04 Jul 2008 12:10:53 +0000</pubDate>
		<dc:creator>vikashazrati</dc:creator>
		
		<category><![CDATA[Agile]]></category>

		<category><![CDATA[Better Software]]></category>

		<category><![CDATA[General]]></category>

		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://vikashazrati.wordpress.com/?p=119</guid>
		<description><![CDATA[This is first, in series of posts on how to write Better Software. The series would try to touch upon stories which would result in development of better software.
This post is about having a minimalistic development environment setup to do effective software development. As you can see in the picture we need 5 entities to [...]]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>This is first, in series of posts on how to write <strong>Better Software</strong>. The series would try to touch upon stories which would result in development of better software.</p>
<p>This post is about having a minimalistic development environment setup to do effective software development. As you can see in the picture we need 5 entities to begin with.</p>
<p><a href="http://vikashazrati.files.wordpress.com/2008/07/screenshot-6.png"><img class="aligncenter size-medium wp-image-120" src="http://vikashazrati.files.wordpress.com/2008/07/screenshot-6.png?w=300&h=218" alt="" width="300" height="218" /></a></p>
<p><span id="more-119"></span></p>
<ul>
<li>Development machine(s)</li>
<li>Version control system</li>
<li>Collaboration tools</li>
<li>Continuous integration server</li>
<li>Test server (may be optional to start with)</li>
</ul>
<p>Being a JAVA guy, the post would have a bias but you should be able to apply it to any environment.</p>
<p><strong>Detailing out</strong></p>
<p><strong>Development machines - </strong>These are the machines where the software journey starts. Make sure that these are machines with which developers feel comfortable throughout the day. They should be sufficiently powered and the workspace should be ergonomic. For e.g. Agile recommends that if you are doing pair programming then the screen size should be at least 17&#8243;.</p>
<p><strong>Next the IDE </strong>should have powerful plugins to do effective development. In Java world the 2 common IDEs are Eclipse and Intellij. Having the right plugins makes sure that the code that you are checking in well structured and well written. Following is a list of plugins that I would recommend for the IDE.</p>
<ul>
<li><a href="http://checkstyle.sourceforge.net/" target="_blank">CheckStyle</a><br />
<a href="http://pmd.sourceforge.net/" target="_blank">PMD</a><br />
<a href="http://findbugs.sourceforge.net/" target="_blank">FindBugs</a><br />
<a href="http://metrics.sourceforge.net/" target="_blank">Metrics</a><br />
<a href="http://cap.xore.de/" target="_blank">CAP</a><br />
<a href="http://clarkware.com/software/JDepend.html" target="_blank">Jdepend</a><br />
<a href="http://www.redhillconsulting.com.au/products/simian/" target="_blank">Simian</a></li>
</ul>
<p>You can start with these and we would come to the more advanced plugins later.</p>
<p><strong>Version Control System</strong></p>
<p>Good code needs to be checked in somewhere. Right? Good version control systems include</p>
<ul>
<li><a href="http://subversion.tigris.org/" target="_blank">Subversion</a></li>
<li><a href="http://www.cvshome.org/" target="_blank">CVS</a></li>
</ul>
<p><strong>Collaboration Tools</strong></p>
<p>When the team is working together then they need to share information. This information may be in the form of docs or better still in the form of a wiki page. I have worked in software development teams where all information related to the project was stored in a wiki. The best part of this was that all developers could now edit and maintain the information themselves without going through the documented bureaucracy. The information which could be put on the wiki could be &#8230;</p>
<ul>
<li>How to build the project</li>
<li>Version control system location and login info</li>
<li>Project description and user stories</li>
<li>All other project related documentation</li>
<li>FAQs etc</li>
</ul>
<p>There are a <a href="http://java-source.net/open-source/wiki-engines" target="_blank">lot of open source wikis available</a>.</p>
<p>Another requirement is a place to store the issues/defects/bugs. When making a release you would want to release it with known bugs and fixed in this release numbers.</p>
<p>A few good ones are</p>
<ul>
<li><a href="http://www.trackplus.de/" target="_blank">Trackplus</a></li>
<li><a href="http://www.bugzilla.org/" target="_blank">Bugzilla</a></li>
<li><a href="http://www.mantisbt.org/" target="_blank">Mantis Bug Tracking</a></li>
</ul>
<p><strong>Continuous Integration Server</strong></p>
<p>This is one of the must haves if you want to do serious software development. These tools help integrate all the developer code as soon as it is checked in. Immediately you know whether you have broken the build or not. Gone are the days when once a week builds were done and till that time everyone was checking in code without realizing how their code works with rest of the system. With CI servers in place, as soon as you check in code, it is integrated with rest of the code via your build script which would be written in <a href="http://maven.apache.org/" target="_blank">Maven</a> or <a href="http://ant.apache.org/" target="_blank">Ant</a>. Junits are executed and a report generated stating the health of the code. Tools to look at</p>
<ul>
<li><a rel="nofollow" href="http://cruisecontrol.sf.net/">CruiseControl</a></li>
<li><a rel="nofollow" href="http://www.cifactory.com/">CI Factory</a></li>
<li><a rel="nofollow" href="http://www.anthillpro.com/e/giant-ci-matrix-os">Anthill</a></li>
<li><a rel="nofollow" href="http://luntbuild.javaforge.com/">LuntBuild</a></li>
<li><a rel="nofollow" href="http://jakarta.apache.org/gump/">Gump</a></li>
<li><a rel="nofollow" href="http://maven.apache.org/continuum/">Continuum</a></li>
</ul>
<p>You would want to do a <a href="http://confluence.public.thoughtworks.org/display/CC/CI+Feature+Matrix" target="_blank">quick comparison</a> before narrowing down on the one which suits you best.</p>
<p><strong>Test Server</strong></p>
<p>Last but  not the least you need to have a test server. I have mentioned this as an optional component to start with. However sooner than later it becomes a necessity. You might be able to integrate most of your tests to execute with the CI Server but still there are Test Engineers who would want to verify your code using automated tests. The code on the test server might also be exposed to nightly performance tests. An inherent hook that you can build into your code for performance monitoring is with the help of <a href="http://jamonapi.sourceforge.net/" target="_blank">JAMon</a>.</p>
<p>You would write your automated tests using tools like</p>
<ul>
<li><a href="http://fitnesse.org/" target="_blank">Fitnesse</a></li>
<li><a href="http://selenium.openqa.org/" target="_blank">Selenium</a></li>
</ul>
<p>Other Unit level tests would be using</p>
<ul>
<li><a href="http://junit.sourceforge.net/" target="_blank">JUnit</a></li>
<li>Mocking Framework like <a href="http://rmock.sourceforge.net/" target="_blank">Rmock</a>, <a href="http://www.easymock.org/" target="_blank">easymock</a> etc</li>
<li><a href="http://www.dbunit.org/" target="_blank">DBUnit</a></li>
<li><a href="http://httpunit.sourceforge.net/" target="_blank">HttpUnit</a></li>
<li><a href="http://htmlunit.sourceforge.net/" target="_blank">HTMLUnit</a> etc</li>
</ul>
<p>With all these things in place you can be assured of a right start to developing better software. Remember this is the minimalistic setup that you need to start well.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/vikashazrati.wordpress.com/119/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/vikashazrati.wordpress.com/119/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/vikashazrati.wordpress.com/119/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/vikashazrati.wordpress.com/119/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/vikashazrati.wordpress.com/119/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/vikashazrati.wordpress.com/119/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/vikashazrati.wordpress.com/119/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/vikashazrati.wordpress.com/119/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/vikashazrati.wordpress.com/119/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/vikashazrati.wordpress.com/119/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/vikashazrati.wordpress.com/119/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/vikashazrati.wordpress.com/119/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vikashazrati.wordpress.com&blog=999392&post=119&subd=vikashazrati&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://vikashazrati.wordpress.com/2008/07/04/better-software-development-environment/feed/</wfw:commentRss>
	
		<media:content url="http://a.wordpress.com/avatar/vikashazrati-128.jpg" medium="image">
			<media:title type="html">vikashazrati</media:title>
		</media:content>

		<media:content url="http://vikashazrati.files.wordpress.com/2008/07/screenshot-6.png?w=300" medium="image" />
	</item>
		<item>
		<title>Multi-Tenancy Explained</title>
		<link>http://vikashazrati.wordpress.com/2008/06/23/multi-tenancy-explained/</link>
		<comments>http://vikashazrati.wordpress.com/2008/06/23/multi-tenancy-explained/#comments</comments>
		<pubDate>Sun, 22 Jun 2008 18:40:37 +0000</pubDate>
		<dc:creator>vikashazrati</dc:creator>
		
		<category><![CDATA[Architecture]]></category>

		<category><![CDATA[Muti-Tenancy]]></category>

		<category><![CDATA[Multi-Tenant Architecture]]></category>

		<category><![CDATA[Scalability]]></category>

		<guid isPermaLink="false">http://vikashazrati.wordpress.com/?p=111</guid>
		<description><![CDATA[
This post is an aggregation of a lot of valuable resources that I found on the internet when I was trying to understand Multi-Tenancy. The pictures are attributed to their respective authors. Please look at the References at the bottom of the post.
What is Multi-Tenancy?
Multi-tenancy is the ability to run multiple customers on a single software [...]]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p style="text-align:center;"><a href="http://vikashazrati.files.wordpress.com/2008/06/multi-tenancy3.jpg"><img class="alignnone size-thumbnail wp-image-113 aligncenter" src="http://vikashazrati.files.wordpress.com/2008/06/multi-tenancy3.jpg?w=96&h=96" alt="" width="96" height="96" /></a></p>
<p><em>This post is an aggregation of a lot of valuable resources that I found on the internet when I was trying to understand Multi-Tenancy. The pictures are attributed to their respective authors. Please look at the References at the bottom of the post.</em></p>
<p><strong>What is Multi-Tenancy?</strong></p>
<p>Multi-tenancy is the ability to run multiple customers on a single software instance installed on multiple servers to increase resource utilization by allowing load balancing among tenants, and to reduce operational complexity and cost in managing the software to deliver the service.</p>
<p>Multi-tenancy is not multi-instance architecture where separate software instances (or hardware systems) are set up for different client organizations.</p>
<p>A multi-tenant architecture, would expect a software application to virtually partition its data and configuration so that each client organization works with a customized virtual application instance.<br />
Tenants on a multi-tenant system can operate as though they have an instance of the software entirely to themselves which is completely secure and insulated from any impact by other tenants.</p>
<p><strong>Strategies of Multi-Tenancy</strong></p>
<p>Three buckets of multi-tenancy strategies:</p>
<p><span id="more-111"></span></p>
<ul>
<li> Physical Separation. Physical separation relies on giving each tenant his own dedicated hardware resources.</li>
<li>Virtualization. Virtualization is about using software to create application hosting environments that provide logical boundaries between each tenant.</li>
<li>Design the application to be multi-tenant aware. The third strategy is to design different aspects of the application to automatically adjust its behavior differently for different tenants at runtime. Here multi-tenancy is a first class consideration in application design.</li>
</ul>
<p><a href="http://vikashazrati.files.wordpress.com/2008/06/multi-tenancy2.jpg"><img class="alignnone size-medium wp-image-112" src="http://vikashazrati.files.wordpress.com/2008/06/multi-tenancy2.jpg?w=220&h=300" alt="" width="220" height="300" /></a></p>
<p><strong>Advantages of Multi-Tenancy</strong></p>
<ol>
<li>Helps scalability: Scaling the application means maximizing concurrency, and using application resources more efficiently—for example, optimizing locking duration, statelessness, sharing pooled resources such as threads and network connections, caching reference data, and partitioning large databases.</li>
<li>Cost and effort saving: over and above the basic economies of scale achievable from consolidating IT resources into a single operation.<br />
Increase resource utilization by allowing load balancing among tenants,</li>
<li>Reduce operational complexity and cost in managing the software to deliver the service.</li>
<li>Everyone’s data can be backed up in one operation by backing up a single instance.  The operations costs are then lower due to economies of scale and increased opportunities for automation.</li>
<li>The tenant can expect to have a unique UI branding, business rules, workflows along with secure, partitioned and extensible data model and customized access control.</li>
<li>There is a possibility for different tenants on the same multi-tenant platform to share data. Think EDI.</li>
<li>Maximizing advantage from future enhancement in processor speed and other infrastructure.</li>
</ol>
<p><strong>Maturity model for Multi-Tenancy</strong></p>
<p><a href="http://vikashazrati.files.wordpress.com/2008/06/multi-tenancy3.jpg"><img class="alignnone size-medium wp-image-113" src="http://vikashazrati.files.wordpress.com/2008/06/multi-tenancy3.jpg?w=300&h=299" alt="" width="300" height="299" /></a></p>
<ul>
<li>Ad Hoc/Custom- At this level, each customer has its own customized version of the hosted application, and runs its own instance of the application on the host&#8217;s servers.</li>
<li>Configurable- the vendor hosts a separate instance of the application for each customer (or tenant) , vendor meets customers&#8217; needs by providing detailed configuration options that allow the customer to change how the application looks and behaves to its users.</li>
<li>Configurable, Multi-Tenant-Efficient - the vendor runs a single instance that serves every customer, with configurable metadata providing a unique user experience and feature set for each one.<br />
Authorization and security policies ensure that each customer&#8217;s data is kept separate from that of other customers.<br />
A significant disadvantage of this approach is that the scalability of the application is limited. Unless partitioning is used to manage database performance, the application can be scaled only by moving it to a more powerful server (scaling up)</li>
<li>Scalable, Configurable, Multi-Tenant-Efficient- the vendor hosts multiple customers on a load-balanced farm of identical instances, with each customer&#8217;s data kept separate, and with configurable metadata providing a unique user experience and feature set for each customer.<br />
Appropriate data partitioning, stateless component design, shared metadata access are part of the design.</li>
</ul>
<p><strong>CASE | SalesForce.com</strong></p>
<p><a href="http://vikashazrati.files.wordpress.com/2008/06/multi-tenancy.jpg"><img class="alignnone size-medium wp-image-114" src="http://vikashazrati.files.wordpress.com/2008/06/multi-tenancy.jpg?w=300&h=236" alt="" width="300" height="236" /></a></p>
<p>Customization of application behavior, rather than being done by modifying application code, is done instead by configuring application metadata that is invoked on a user-by-user basis</p>
<p>Instead of customizing the application in the traditional sense, then, each customer uses metadata to configure the way the application appears and behaves for its users.<br />
The challenge for the architect is to ensure that the task of configuring applications is simple and easy for the customers, without incurring extra development or operation costs for each configuration.</p>
<p>Metadata representation is extended to the deepest levels of database definition, custom business logic and fundamental design of user interface appearance and behavior.</p>
<p>Data partitioning is most important. Is the data partitioned per tenant for salesforce?</p>
<p>Strong separation between the application logic and their datasets.</p>
<p>Instead of hard-coding data tables and page layouts, developers on a multi-tenant platform define attributes and behaviors as metadata, which functions as the application’s logical blueprint.</p>
<p><a href="http://vikashazrati.files.wordpress.com/2008/06/mythbustmultit.pdf" target="_blank">More details on SalesForce.com Multi-Tenant Architecture</a></p>
<p><strong>Supporting Multi-Tenancy at Presentation Layer</strong></p>
<ul>
<li>Presentation services of a multi-tenant  platform: Users of Tenant get dedicated entry point with unique branding.</li>
<li>Tenant isolation ensures that the user populations of the individual tenant cannot access the business service and information of the other tenants of the platform.</li>
<li>Branding ensures that when an end user accesses a channel destination or authenticates with a channel, the end user is presented with a look and feel specific to his or her subscriber.</li>
<li>All presentation components must support tenant-specific settings in a range from name-and-value pair configurations, such as tenant IDs, tenant-specific look-and-feel, with settings to indicate which form fields or action buttons should be rendered to end-users.</li>
</ul>
<p><strong>Supporting Multi-Tenancy at Business Layer</strong></p>
<p>Each tenant of a multi-tenant platform is identified by a unique, platform-wide tenant ID.<br />
The implementation of the services at the business layer must use the tenant ID to provide variability for service subscribers and individual end-users.<br />
How?</p>
<ul>
<li> Metadata: Features of an application which can be configured during runtime, are defined in the form of Metadata (it could be an XML file stored on hard drive or a backend database).</li>
<li>Metadata Services: A set of programmatically accessible services are designed that provides an interface to access/modify the metadata.</li>
<li>An Engine: The business layer of the application is an engine that runs the business processes defined on the basis of metadata.</li>
</ul>
<p><strong>Supporting Multi-Tenancy at Data Layer</strong></p>
<ul>
<li>Dedicated Tenant Database</li>
<li>Shared Database, fixed extension set</li>
</ul>
<p><a href="http://vikashazrati.files.wordpress.com/2008/06/multi-tenancy4.jpg"><img class="alignnone size-medium wp-image-115" src="http://vikashazrati.files.wordpress.com/2008/06/multi-tenancy4.jpg?w=300&h=89" alt="" width="300" height="89" /></a></p>
<ul>
<li>Shared Database, custom extension set (another table with key value pairs)</li>
</ul>
<p><a href="http://vikashazrati.files.wordpress.com/2008/06/multi-tenancy5.jpg"><img class="alignnone size-medium wp-image-116" src="http://vikashazrati.files.wordpress.com/2008/06/multi-tenancy5.jpg?w=281&h=288" alt="" width="281" height="288" /></a></p>
<p><strong>Concerns with Multi-Tenancy</strong></p>
<ol>
<li>Security and inappropriate data access</li>
<li>Impact of other clients on their system performance</li>
<li>Inability to establish and pay for their own, higher service levels (common among large companies)</li>
<li>Being forced into an upgrade</li>
<li>Inability to support the level of client specific configurations and even customizations as necessary</li>
<li>Inability to obtain client level user acceptance testing</li>
<li>Inability to determine the precise production/go live dates for the system.</li>
<li>If the number of users in a tenant are large, e.g. &gt;1000 users then the multi-tenant advantages start loosing steam as they may need a separate hosting with separate maintenance etc.</li>
</ol>
<p><!-- AddThis Bookmark Button BEGIN --><strong>References</strong></p>
<ol>
<li>SmoothSpan Blog, http://smoothspan.wordpress.com/2007/10/28/multitenancy-can-have-a-161-cost-advantage-over-single-tenant/</li>
<li>SmoothSpan Blog, http://smoothspan.wordpress.com/2008/06/20/degrees-of-multi-tenancy-degrees-of-green-crystals/</li>
<li>Multi-Tenant Data Architecture, Frederick Chong, Gianpaolo Carraro, and Roger Wolter, http://msdn.microsoft.com/en-us/library/aa479086.aspx</li>
<li>SalesForce.com, http://www.salesforce.com/platform/why-ondemand/muti-tenant-platforms/</li>
<li>A few more</li>
</ol>
<p><a title="Bookmark using any bookmark manager!" href="http://www.addthis.com/bookmark.php" target="_blank"><img src="http://s9.addthis.com/button1-bm.gif" border="0" alt="AddThis Social Bookmark Button" width="125" height="16" /></a><br />
<!-- AddThis Bookmark Button END --></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/vikashazrati.wordpress.com/111/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/vikashazrati.wordpress.com/111/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/vikashazrati.wordpress.com/111/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/vikashazrati.wordpress.com/111/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/vikashazrati.wordpress.com/111/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/vikashazrati.wordpress.com/111/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/vikashazrati.wordpress.com/111/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/vikashazrati.wordpress.com/111/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/vikashazrati.wordpress.com/111/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/vikashazrati.wordpress.com/111/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/vikashazrati.wordpress.com/111/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/vikashazrati.wordpress.com/111/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vikashazrati.wordpress.com&blog=999392&post=111&subd=vikashazrati&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://vikashazrati.wordpress.com/2008/06/23/multi-tenancy-explained/feed/</wfw:commentRss>
	
		<media:content url="http://a.wordpress.com/avatar/vikashazrati-128.jpg" medium="image">
			<media:title type="html">vikashazrati</media:title>
		</media:content>

		<media:content url="http://vikashazrati.files.wordpress.com/2008/06/multi-tenancy3.jpg?w=96" medium="image" />

		<media:content url="http://vikashazrati.files.wordpress.com/2008/06/multi-tenancy2.jpg?w=220" medium="image" />

		<media:content url="http://vikashazrati.files.wordpress.com/2008/06/multi-tenancy3.jpg?w=300" medium="image" />

		<media:content url="http://vikashazrati.files.wordpress.com/2008/06/multi-tenancy.jpg?w=300" medium="image" />

		<media:content url="http://vikashazrati.files.wordpress.com/2008/06/multi-tenancy4.jpg?w=300" medium="image" />

		<media:content url="http://vikashazrati.files.wordpress.com/2008/06/multi-tenancy5.jpg?w=281" medium="image" />

		<media:content url="http://s9.addthis.com/button1-bm.gif" medium="image">
			<media:title type="html">AddThis Social Bookmark Button</media:title>
		</media:content>
	</item>
		<item>
		<title>QuickTip: Patching up JBoss 4.0.3 sp1 with EJB3</title>
		<link>http://vikashazrati.wordpress.com/2008/06/19/patching-jboss403sp1-with-ejb3/</link>
		<comments>http://vikashazrati.wordpress.com/2008/06/19/patching-jboss403sp1-with-ejb3/#comments</comments>
		<pubDate>Thu, 19 Jun 2008 18:28:45 +0000</pubDate>
		<dc:creator>vikashazrati</dc:creator>
		
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://vikashazrati.wordpress.com/?p=109</guid>
		<description><![CDATA[JBoss provides built-in EJB3 support version 4.2x onwards. For rest of the versions you would need to download the specif JEMSInstaller and patch-in the EJB 3 support.
This is what the JBoss site has to say
Important Note: If you want EJB3 or Seam support with JBoss AS 4.0.3 SP1, 4.0.4 or 4.0.5, you MUST download and [...]]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>JBoss provides built-in EJB3 support version 4.2x onwards. For rest of the versions you would need to download the specif JEMSInstaller and patch-in the EJB 3 support.</p>
<p>This is what the JBoss site has to say</p>
<p><strong>Important Note:</strong> If you want EJB3 or Seam support with JBoss AS 4.0.3 SP1, 4.0.4 or 4.0.5, you MUST <a href="http://www.jboss.org/jemsinstaller/downloads/">download</a> and use the relevant version of <a href="http://www.jboss.org/jemsinstaller">JEMS Installer</a> together with JDK5.0. JBoss AS 4.2.x versions include support for EJB3, by default.</p>
<p>The problem is that when you download the JEMS Installer  for 4.0.3 sp1 and follow the instructions to get the EJB3 support working, it does not work! Your .ear would be deployed but the relevant services to load the EJBs are not started and they are not registered in the JNDI tree.</p>
<p>To get the EJB3 patch onto 4.0.3 sp1 you need to do the following &#8230;</p>
<p><span id="more-109"></span></p>
<p><strong>Integration of EJB3 into JBoss 4.0.3SP1</strong></p>
<p>(Expanded from http://docs.jboss.com/ejb3/app-server/tutorial/installing.html )<br />
Note: the EJB3 implementation that comes with the JBoss AS 4.0.3SP1 installers needs to be<br />
manually patched. Running the Java installer with an EJB option does *not* work. To perform<br />
the patch, follow the directions below.<br />
<strong>Patch JBoss 4.0.3</strong></p>
<p style="margin-bottom:0;">1. Download JBoss 4.0.3SP1 (java installer version)</p>
<p style="margin-bottom:0;">2. Run the installer for JBoss 4.0.3SP1</p>
<p style="margin-bottom:0;padding-left:30px;">1. Select the ‘all’ Install Type</p>
<p style="margin-bottom:0;padding-left:60px;">1. DO NOT select the ‘EJB3” option</p>
<p style="margin-bottom:0;padding-left:30px;">2. De-select any “packs” you don’t wish to enable (clustering?)</p>
<p style="margin-bottom:0;padding-left:30px;">3. Choose the name of the instance you wish to create</p>
<p style="margin-bottom:0;">3. Download EJB 3.0 RC6 - PFDi.</p>
<p style="margin-bottom:0;padding-left:30px;">1. Unzip this file into a temporary place.</p>
<p style="margin-bottom:0;">4. Remove from {install home}/server/{instance name}/lib:</p>
<p style="margin-bottom:0;padding-left:30px;">1. ejb3-persistence.jar</p>
<p style="margin-bottom:0;padding-left:30px;">2. hibernate3.jar</p>
<p style="margin-bottom:0;padding-left:30px;">3. hibernate-annotations.jar</p>
<p style="margin-bottom:0;padding-left:30px;">4. hibernate-entitymanager.jar</p>
<p style="margin-bottom:0;">5. Remove from {install home}/server/{instance name}/deploy:</p>
<p style="margin-bottom:0;padding-left:30px;">1. Directory jboss-aop.deployer</p>
<p style="margin-bottom:0;padding-left:30px;">2. Directory ejb3.deployer (if there is one)</p>
<p style="margin-bottom:0;">6. Copy from the lib/ directory of the RC6 distribution to {install</p>
<p style="margin-bottom:0;">home}/server/{instance name}/deploy:</p>
<p style="margin-bottom:0;padding-left:30px;">1. Directory ejb3.deployer</p>
<p style="margin-bottom:0;padding-left:30px;">2. Directory jboss-aop-jdk50.deployer</p>
<p style="margin-bottom:0;padding-left:30px;">3. ejb3-clustered-sfsbcache-service.xml (see note below)</p>
<p style="margin-bottom:0;padding-left:30px;">4. ejb3-entity-cache-service.xml (see note below)</p>
<p style="margin-bottom:0;padding-left:30px;">5. ejb3-interceptors-aop.xml</p>
<p style="margin-bottom:0;">7. Copy from the lib/ directory of the RC6 distribution to {install</p>
<p style="margin-bottom:0;">home}/server/{instance name}/lib:</p>
<p style="margin-bottom:0;padding-left:30px;">1. jboss-remoting.jar</p>
<p style="margin-bottom:0;padding-left:30px;">2. jboss-serialization.jar</p>
<p style="margin-bottom:0;padding-left:30px;">3. jboss-j2ee.jar</p>
<p style="margin-bottom:0;padding-left:30px;">4. hibernate3.jar</p>
<p style="margin-bottom:0;padding-left:30px;">5. hibernate-annotations.jar</p>
<p style="margin-bottom:0;padding-left:30px;">6. hibernate-entitymanager.jar</p>
<p style="margin-bottom:0;padding-left:30px;">7. ejb3-persistence.jar</p>
<p style="margin-bottom:0;padding-left:30px;">8. javassist.jar</p>
<p style="margin-bottom:0;">8. To start JBoss for your instance, execute run.sh -c {instance name}</p>
<p><strong>Notes:</strong><br />
1. If you do not want to run JBoss in clustered mode, skip the steps of copying the ejb3-<br />
clustered-sfsbcache-service.xml and the ejb3-entity-cache-service.xml, or<br />
comment out the &lt;mbean&gt; elements in each.<br />
2. As indicated in the [docs.jboss.com] article, client access via the \client libraries is<br />
invalidated with this patch. Follow instructions in the article related to client jars if you<br />
intend to access via a standalone client.<br />
3. Pay particular attention to classloader issues. See the ear-deployer.xml file in \deploy.<br />
The Isolated and CallByValue attributes are both set to true.</p>
<p><strong>Thanks to David Norwood from Red Hat for providing these instructions.</strong></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/vikashazrati.wordpress.com/109/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/vikashazrati.wordpress.com/109/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/vikashazrati.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/vikashazrati.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/vikashazrati.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/vikashazrati.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/vikashazrati.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/vikashazrati.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/vikashazrati.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/vikashazrati.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/vikashazrati.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/vikashazrati.wordpress.com/109/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vikashazrati.wordpress.com&blog=999392&post=109&subd=vikashazrati&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://vikashazrati.wordpress.com/2008/06/19/patching-jboss403sp1-with-ejb3/feed/</wfw:commentRss>
	
		<media:content url="http://a.wordpress.com/avatar/vikashazrati-128.jpg" medium="image">
			<media:title type="html">vikashazrati</media:title>
		</media:content>
	</item>
		<item>
		<title>QuickTip: Ubuntu 8.04: Setting the File Path for Bluetooth Transfers</title>
		<link>http://vikashazrati.wordpress.com/2008/06/11/file-path-for-bluetooth/</link>
		<comments>http://vikashazrati.wordpress.com/2008/06/11/file-path-for-bluetooth/#comments</comments>
		<pubDate>Wed, 11 Jun 2008 07:53:35 +0000</pubDate>
		<dc:creator>vikashazrati</dc:creator>
		
		<category><![CDATA[linux]]></category>

		<category><![CDATA[bluetooth]]></category>

		<category><![CDATA[filepath]]></category>

		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://vikashazrati.wordpress.com/?p=106</guid>
		<description><![CDATA[Press Alt and F2 and enter
gconf-editor
Then navigate to
/apps/gnome-obex-server


       ]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Press Alt and F2 and enter<br />
gconf-editor</p>
<p>Then navigate to<br />
/apps/gnome-obex-server<br />
<a href="http://server16.kproxy.com/servlet/redirect.srv/sruj/sbcpdcrgen/slygec/shtbtcemyhsrf/p1/2008/06/screenshot-configuration-editor-gnome-obex-server.png"></a></p>
<p style="text-align:center;"><a href="http://vikashazrati.files.wordpress.com/2008/06/screenshot-configuration-editor-gnome-obex-server.png"><img class="alignnone size-medium wp-image-107" src="http://vikashazrati.files.wordpress.com/2008/06/screenshot-configuration-editor-gnome-obex-server.png?w=300&h=244" alt="" width="300" height="244" /></a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/vikashazrati.wordpress.com/106/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/vikashazrati.wordpress.com/106/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/vikashazrati.wordpress.com/106/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/vikashazrati.wordpress.com/106/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/vikashazrati.wordpress.com/106/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/vikashazrati.wordpress.com/106/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/vikashazrati.wordpress.com/106/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/vikashazrati.wordpress.com/106/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/vikashazrati.wordpress.com/106/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/vikashazrati.wordpress.com/106/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/vikashazrati.wordpress.com/106/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/vikashazrati.wordpress.com/106/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vikashazrati.wordpress.com&blog=999392&post=106&subd=vikashazrati&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://vikashazrati.wordpress.com/2008/06/11/file-path-for-bluetooth/feed/</wfw:commentRss>
	
		<media:content url="http://a.wordpress.com/avatar/vikashazrati-128.jpg" medium="image">
			<media:title type="html">vikashazrati</media:title>
		</media:content>

		<media:content url="http://vikashazrati.files.wordpress.com/2008/06/screenshot-configuration-editor-gnome-obex-server.png?w=300" medium="image" />
	</item>
		<item>
		<title>QuickTip: Resolving Bluetooth Issues With Ubuntu 8.04 LTS</title>
		<link>http://vikashazrati.wordpress.com/2008/06/11/bluetooth-problems-ubuntu-804/</link>
		<comments>http://vikashazrati.wordpress.com/2008/06/11/bluetooth-problems-ubuntu-804/#comments</comments>
		<pubDate>Wed, 11 Jun 2008 07:42:48 +0000</pubDate>
		<dc:creator>vikashazrati</dc:creator>
		
		<category><![CDATA[linux]]></category>

		<category><![CDATA[Bluetooth issues]]></category>

		<category><![CDATA[Ubuntu 8.04]]></category>

		<category><![CDATA[Ubuntu bluetooth problem]]></category>

		<guid isPermaLink="false">http://vikashazrati.wordpress.com/?p=103</guid>
		<description><![CDATA[Around a month back I upgraded from 7.10 to 8.04
Most of the stuff worked fine except that my Bluetooth service was broken. I could no longer transfer files from my Nokia 3230 phone to my laptop. The steps defined in my earlier post did not work either and I was always greeted with an &#8220;Unable [...]]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Around a month back I upgraded from 7.10 to 8.04</p>
<p>Most of the stuff worked fine except that my Bluetooth service was broken. I could no longer transfer files from my Nokia 3230 phone to my laptop. The <a href="http://vikashazrati.wordpress.com/2007/11/03/quicklink-enabling-bluetooth-file-transfer-on-ubuntu/" target="_blank">steps defined in my earlier post</a> did not work either and I was always greeted with an &#8220;Unable to connect&#8221; error. It became terribly irritating after a while and then there had to be a way to get around that.</p>
<p>The way that I suggest is one of the possible many ways, if you find something else please let me know. Read on &#8230;</p>
<p><span id="more-103"></span></p>
<p>There is a bug <a href="Bug #191704 in bluez-utils (Ubuntu)" target="_blank">Bug #191704 in bluez-utils (Ubuntu) </a>reported on forums which gave me hint on how to make it work.</p>
<p>The crux is  that there are some problem with missing hidd in newer versions of bluez-utils as a result of which you have to downgrade to an older version of bluez-utils which works.</p>
<p>These are the steps to downgrade</p>
<p>1. sudo dpkg -r bluez-audio bluez-utils</p>
<p>2. Visit <a href="http://de.archive.ubuntu.com/ubuntu/pool/main/b/bluez-utils/" target="_blank">http://de.archive.ubuntu.com/ubuntu/pool/main/b/bluez-utils/</a>, down load and install the package bluez-utils_3.9-0ubuntu4_i386.deb.</p>
<p>Once you start installing you would be warned for an upgrade already present. Ignore that!</p>
<p><a href="http://vikashazrati.files.wordpress.com/2008/06/screenshot-gdebi-gtk.png"><img class="alignnone size-medium wp-image-104" src="http://vikashazrati.files.wordpress.com/2008/06/screenshot-gdebi-gtk.png?w=300&h=137" alt="" width="300" height="137" /></a></p>
<p>Once the installation begins it would prompt for replacing your hcid.conf. Do not replace that. I am assuming that you have already made all the changes <a href="http://vikashazrati.wordpress.com/2007/11/03/quicklink-enabling-bluetooth-file-transfer-on-ubuntu/" target="_blank">described in my earlier post</a>.</p>
<p><a href="http://vikashazrati.files.wordpress.com/2008/06/screenshot-gdebi-gtk-1.png"><img class="alignnone size-full wp-image-105" src="http://vikashazrati.files.wordpress.com/2008/06/screenshot-gdebi-gtk-1.png?w=400&h=364" alt="" width="400" height="364" /></a></p>
<p>Your Bluetooth service would be restarted.</p>
<p>3. Now restart your Bluetooth file sharing application, under Applications&#8211;&gt;Accessories&#8211;&gt;BlueTooth File Sharing</p>
<p>4. Do a send via bluetooth via your mobile and you should be all set.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/vikashazrati.wordpress.com/103/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/vikashazrati.wordpress.com/103/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/vikashazrati.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/vikashazrati.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/vikashazrati.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/vikashazrati.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/vikashazrati.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/vikashazrati.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/vikashazrati.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/vikashazrati.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/vikashazrati.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/vikashazrati.wordpress.com/103/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vikashazrati.wordpress.com&blog=999392&post=103&subd=vikashazrati&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://vikashazrati.wordpress.com/2008/06/11/bluetooth-problems-ubuntu-804/feed/</wfw:commentRss>
	
		<media:content url="http://a.wordpress.com/avatar/vikashazrati-128.jpg" medium="image">
			<media:title type="html">vikashazrati</media:title>
		</media:content>

		<media:content url="http://vikashazrati.files.wordpress.com/2008/06/screenshot-gdebi-gtk.png?w=300" medium="image" />

		<media:content url="http://vikashazrati.files.wordpress.com/2008/06/screenshot-gdebi-gtk-1.png" medium="image" />
	</item>
		<item>
		<title>QuickTip: JUnit: The input type of the launch configuration does not exist</title>
		<link>http://vikashazrati.wordpress.com/2008/06/09/quicktip-junit/</link>
		<comments>http://vikashazrati.wordpress.com/2008/06/09/quicktip-junit/#comments</comments>
		<pubDate>Mon, 09 Jun 2008 09:27:17 +0000</pubDate>
		<dc:creator>vikashazrati</dc:creator>
		
		<category><![CDATA[Java]]></category>

		<category><![CDATA[testing]]></category>

		<guid isPermaLink="false">http://vikashazrati.wordpress.com/?p=101</guid>
		<description><![CDATA[
If you are getting the above error message in Eclipse IDE, while running your test case, just make sure that you have the test class as a part of the &#8220;eclipse source folder&#8221; definition.
Easiest way. Right click on the folder &#8211;&#62; Build Path &#8211;&#62;Use as source folder
Done.
       ]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p style="text-align:center;"><a href="http://vikashazrati.files.wordpress.com/2008/06/screenshot-problems-launching-junit-tests.png"><img class="size-medium wp-image-102" src="http://vikashazrati.files.wordpress.com/2008/06/screenshot-problems-launching-junit-tests.png?w=300&h=102" alt="" width="300" height="102" /></a></p>
<p>If you are getting the above error message in Eclipse IDE, while running your test case, just make sure that you have the test class as a part of the &#8220;eclipse source folder&#8221; definition.</p>
<p>Easiest way. <strong><em>Right click on the folder &#8211;&gt; Build Path &#8211;&gt;Use as source folder</em></strong></p>
<p>Done.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/vikashazrati.wordpress.com/101/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/vikashazrati.wordpress.com/101/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/vikashazrati.wordpress.com/101/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/vikashazrati.wordpress.com/101/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/vikashazrati.wordpress.com/101/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/vikashazrati.wordpress.com/101/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/vikashazrati.wordpress.com/101/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/vikashazrati.wordpress.com/101/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/vikashazrati.wordpress.com/101/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/vikashazrati.wordpress.com/101/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/vikashazrati.wordpress.com/101/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/vikashazrati.wordpress.com/101/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vikashazrati.wordpress.com&blog=999392&post=101&subd=vikashazrati&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://vikashazrati.wordpress.com/2008/06/09/quicktip-junit/feed/</wfw:commentRss>
	
		<media:content url="http://a.wordpress.com/avatar/vikashazrati-128.jpg" medium="image">
			<media:title type="html">vikashazrati</media:title>
		</media:content>

		<media:content url="http://vikashazrati.files.wordpress.com/2008/06/screenshot-problems-launching-junit-tests.png?w=300" medium="image" />
	</item>
		<item>
		<title>Role of an Agile Architect in Chinese!</title>
		<link>http://vikashazrati.wordpress.com/2008/06/06/role-agile-architect-chinese/</link>
		<comments>http://vikashazrati.wordpress.com/2008/06/06/role-agile-architect-chinese/#comments</comments>
		<pubDate>Fri, 06 Jun 2008 05:48:24 +0000</pubDate>
		<dc:creator>vikashazrati</dc:creator>
		
		<category><![CDATA[Agile]]></category>

		<category><![CDATA[Architecture]]></category>

		<guid isPermaLink="false">http://vikashazrati.wordpress.com/?p=97</guid>
		<description><![CDATA[
A few weeks back I was contacted by Bryan Zheng. Bryan is a part-time editor of Agile Community of InfoQ China and his full-time job is working as the senior editor of Programmer Magazine which is a publication of CSDN.net. CSDN is the world&#8217;s largest Chinese-speaking online IT community with 2.6 million registered members. Programmer [...]]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p style="text-align:center;"><a href="http://vikashazrati.files.wordpress.com/2008/06/screenshot-agile-architectpdf.png"><img class="alignnone size-medium wp-image-98 aligncenter" src="http://vikashazrati.files.wordpress.com/2008/06/screenshot-agile-architectpdf.png?w=272&h=224" alt="" width="272" height="224" /></a></p>
<p>A few weeks back I was contacted by <span>Bryan Zheng. Bryan is a part-time editor of Agile Community of InfoQ China and his full-time job is working as the senior editor of Programmer Magazine which is a publication of CSDN.net. <a href="http://www.csdn.net/" target="_blank">CSDN</a> is the world&#8217;s largest Chinese-speaking online IT community with 2.6 million registered members. Programmer Magazine is the only and most popular software development magazine in China.</span></p>
<p>Bryan wanted to translate a couple of my articles to Chinese for the IT community thriving in China. First translation was for the article &#8220;Role of an Agile Architect&#8221;.  The <a href="http://vikashazrati.wordpress.com/2008/01/10/role-of-an-agile-architect/" target="_blank">English version</a> of the article has already been published on <a href="http://www.agilejournal.com/content/view/739/111/" target="_blank">Agile Journal </a>and is also present on this blog site. You can <a href="http://vikashazrati.files.wordpress.com/2008/06/agile-architect.pdf" target="_blank">download the Chinese translation</a> which has been published in the Programmer Magazine.</p>
<p>Thanks to Bryan for sending me the pdf.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/vikashazrati.wordpress.com/97/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/vikashazrati.wordpress.com/97/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/vikashazrati.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/vikashazrati.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/vikashazrati.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/vikashazrati.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/vikashazrati.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/vikashazrati.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/vikashazrati.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/vikashazrati.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/vikashazrati.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/vikashazrati.wordpress.com/97/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vikashazrati.wordpress.com&blog=999392&post=97&subd=vikashazrati&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://vikashazrati.wordpress.com/2008/06/06/role-agile-architect-chinese/feed/</wfw:commentRss>
	
		<media:content url="http://a.wordpress.com/avatar/vikashazrati-128.jpg" medium="image">
			<media:title type="html">vikashazrati</media:title>
		</media:content>

		<media:content url="http://vikashazrati.files.wordpress.com/2008/06/screenshot-agile-architectpdf.png?w=272" medium="image" />
	</item>
		<item>
		<title>Is wordpress.com reeling under excessive user load?</title>
		<link>http://vikashazrati.wordpress.com/2008/06/04/wordpress-reeling-under-load/</link>
		<comments>http://vikashazrati.wordpress.com/2008/06/04/wordpress-reeling-under-load/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 11:19:58 +0000</pubDate>
		<dc:creator>vikashazrati</dc:creator>
		
		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://vikashazrati.wordpress.com/?p=93</guid>
		<description><![CDATA[I have been using wordpress.com as my preferred blogging site for over an year now. I saw the traffic of blogs being posted increase over the past one year gradually but surely. Whenever I hit the site to enter my blog site, I see upwards of 0.1 million blogs posted everyday. Pretty impressive.
However, for the [...]]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I have been using wordpress.com as my preferred blogging site for over an year now. I saw the traffic of blogs being posted increase over the past one year gradually but surely. Whenever I hit the site to enter my blog site, I see upwards of 0.1 million blogs posted everyday. Pretty impressive.</p>
<p>However, for the past few days, I am greeted with inordinate delays in logging into my account. If at all the login somehow works, the stylesheets take ages to load.</p>
<p>This is how the screens look like.</p>
<p><a href="http://vikashazrati.files.wordpress.com/2008/06/screenshot-wordpresscom-c2bb-your-blogging-home-mozilla-firefox-3-beta-5.png"><img class="alignnone size-thumbnail wp-image-94" src="http://vikashazrati.files.wordpress.com/2008/06/screenshot-wordpresscom-c2bb-your-blogging-home-mozilla-firefox-3-beta-5.png?w=77&h=96" alt="" width="77" height="96" /></a><a href="http://vikashazrati.files.wordpress.com/2008/06/screenshot-connexxion-connecting-life-with-technology-mozilla-firefox-3-beta-5.png"><img class="alignnone size-thumbnail wp-image-96" src="http://vikashazrati.files.wordpress.com/2008/06/screenshot-connexxion-connecting-life-with-technology-mozilla-firefox-3-beta-5.png?w=96&h=96" alt="" width="96" height="96" /></a><br />
<span id="more-93"></span><br />
On other days the site works wonderfully fast. Not sure if there is an upgrade going on which cause these random bates of sluggishness.</p>
<p>Anyway, I hope that wordpress is able to resolve the quality issues and make use of the thousands of blogs tagged with Scalability and performance. After all it is the best blogging site.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/vikashazrati.wordpress.com/93/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/vikashazrati.wordpress.com/93/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/vikashazrati.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/vikashazrati.wordpress.com/93/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/vikashazrati.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/vikashazrati.wordpress.com/93/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/vikashazrati.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/vikashazrati.wordpress.com/93/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/vikashazrati.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/vikashazrati.wordpress.com/93/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/vikashazrati.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/vikashazrati.wordpress.com/93/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vikashazrati.wordpress.com&blog=999392&post=93&subd=vikashazrati&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://vikashazrati.wordpress.com/2008/06/04/wordpress-reeling-under-load/feed/</wfw:commentRss>
	
		<media:content url="http://a.wordpress.com/avatar/vikashazrati-128.jpg" medium="image">
			<media:title type="html">vikashazrati</media:title>
		</media:content>

		<media:content url="http://vikashazrati.files.wordpress.com/2008/06/screenshot-wordpresscom-c2bb-your-blogging-home-mozilla-firefox-3-beta-5.png?w=77" medium="image" />

		<media:content url="http://vikashazrati.files.wordpress.com/2008/06/screenshot-connexxion-connecting-life-with-technology-mozilla-firefox-3-beta-5.png?w=96" medium="image" />
	</item>
		<item>
		<title>QuickTip: java.lang.RuntimeException: java.util.zip.ZipException</title>
		<link>http://vikashazrati.wordpress.com/2008/05/25/quicktip-javautilzipzipexception/</link>
		<comments>http://vikashazrati.wordpress.com/2008/05/25/quicktip-javautilzipzipexception/#comments</comments>
		<pubDate>Sun, 25 May 2008 13:42:39 +0000</pubDate>
		<dc:creator>vikashazrati</dc:creator>
		
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://vikashazrati.wordpress.com/?p=91</guid>
		<description><![CDATA[Recently we were trying to deploy a EJB3 .ear to the Jboss 4.3GA application server when we started getting this exception.

org.jboss.deployment.DeploymentException: exception in init of file:/D:/jboss-4.3.0.GA/server/default/deploy/esl_dist.ear/conf.jar
; - nested throwable: (java.lang.RuntimeException: java.util.zip.ZipException: error in opening zip file)
        at org.jboss.deployment.DeploymentException.rethrowAsDeploymentException(DeploymentException.java:53)
        at org.jboss.deployment.MainDeployer.init(MainDeployer.java:901)
  [...]]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Recently we were trying to deploy a EJB3 .ear to the Jboss 4.3GA application server when we started getting this exception.</p>
<p class="x_MsoNormal">
<pre>org.jboss.deployment.DeploymentException: exception in init of file:/D:/jboss-4.3.0.GA/server/default/deploy/esl_dist.ear/conf.jar
; - nested throwable: (java.lang.RuntimeException: java.util.zip.ZipException: error in opening zip file)
        at org.jboss.deployment.DeploymentException.rethrowAsDeploymentException(DeploymentException.java:53)
        at org.jboss.deployment.MainDeployer.init(MainDeployer.java:901)
        at org.jboss.deployment.MainDeployer.init(MainDeployer.java:895)
        at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:809)
        at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782)
        at sun.reflect.GeneratedMethodAccessor24.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)</pre>
<p class="x_MsoNormal">Luckily for us we did not have to spend too much time trying to sort it out. This exception occurs when the app server is not able to open the archive that you have created. In our case we had created the archive with winrar  and the size of the archive was 95KB. When we created the archive again with Winzip the size war 107KB and this time deployment to the app server worked like a dream!</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/vikashazrati.wordpress.com/91/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/vikashazrati.wordpress.com/91/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/vikashazrati.wordpress.com/91/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/vikashazrati.wordpress.com/91/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/vikashazrati.wordpress.com/91/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/vikashazrati.wordpress.com/91/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/vikashazrati.wordpress.com/91/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/vikashazrati.wordpress.com/91/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/vikashazrati.wordpress.com/91/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/vikashazrati.wordpress.com/91/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/vikashazrati.wordpress.com/91/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/vikashazrati.wordpress.com/91/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vikashazrati.wordpress.com&blog=999392&post=91&subd=vikashazrati&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://vikashazrati.wordpress.com/2008/05/25/quicktip-javautilzipzipexception/feed/</wfw:commentRss>
	
		<media:content url="http://a.wordpress.com/avatar/vikashazrati-128.jpg" medium="image">
			<media:title type="html">vikashazrati</media:title>
		</media:content>
	</item>
		<item>
		<title>QuickTip : annotations are not supported in -source 1.3</title>
		<link>http://vikashazrati.wordpress.com/2008/05/13/maven2-annotations-not-supported/</link>
		<comments>http://vikashazrati.wordpress.com/2008/05/13/maven2-annotations-not-supported/#comments</comments>
		<pubDate>Mon, 12 May 2008 18:36:00 +0000</pubDate>
		<dc:creator>vikashazrati</dc:creator>
		
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://vikashazrati.wordpress.com/?p=90</guid>
		<description><![CDATA[If you are using Maven 2 and you see this issue when you are building your applications then easy way out is to add the following snippet to your pom.xml


&#60;build&#62;
    &#60;plugins&#62;
      &#60;plugin&#62;
        &#60;artifactId&#62;maven-compiler-plugin&#60;/artifactId&#62;
        [...]]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>If you are using Maven 2 and you see this issue when you are building your applications then easy way out is to add the following snippet to your pom.xml</p>
<pre name="code" class="xml">

&lt;build&gt;
    &lt;plugins&gt;
      &lt;plugin&gt;
        &lt;artifactId&gt;maven-compiler-plugin&lt;/artifactId&gt;
        &lt;configuration&gt;
          &lt;source&gt;1.5&lt;/source&gt;
          &lt;target&gt;1.5&lt;/target&gt;
        &lt;/configuration&gt;
      &lt;/plugin&gt;
    &lt;/plugins&gt;
  &lt;/build&gt;
</pre>
<p>Another tip: For posting source code on wordpress <a href="http://faq.wordpress.com/2007/09/03/how-do-i-post-source-code/" target="_blank">click here</a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/vikashazrati.wordpress.com/90/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/vikashazrati.wordpress.com/90/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/vikashazrati.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/vikashazrati.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/vikashazrati.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/vikashazrati.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/vikashazrati.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/vikashazrati.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/vikashazrati.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/vikashazrati.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/vikashazrati.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/vikashazrati.wordpress.com/90/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vikashazrati.wordpress.com&blog=999392&post=90&subd=vikashazrati&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://vikashazrati.wordpress.com/2008/05/13/maven2-annotations-not-supported/feed/</wfw:commentRss>
	
		<media:content url="http://a.wordpress.com/avatar/vikashazrati-128.jpg" medium="image">
			<media:title type="html">vikashazrati</media:title>
		</media:content>
	</item>
	</channel>
</rss>