<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
	
	>
<channel>
	<title>
	Comments on: J2EE:  Why EJB2 CMP was Doomed to Failure	</title>
	<atom:link href="https://www.selikoff.net/2008/08/21/j2ee-why-ejb2-cmp-was-doomed-to-failure/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.selikoff.net/2008/08/21/j2ee-why-ejb2-cmp-was-doomed-to-failure/</link>
	<description>Java/J2EE Software Development and Technology Discussion Blog</description>
	<lastBuildDate>Thu, 01 Apr 2010 18:34:18 +0000</lastBuildDate>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>
	<item>
		<title>
		By: Review of Flex/Flash Builder 4 &#8211; Defective By Design? &#124; Down Home Country Coding With Scott Selikoff and Jeanne Boyarsky		</title>
		<link>https://www.selikoff.net/2008/08/21/j2ee-why-ejb2-cmp-was-doomed-to-failure/comment-page-1/#comment-2268</link>

		<dc:creator><![CDATA[Review of Flex/Flash Builder 4 &#8211; Defective By Design? &#124; Down Home Country Coding With Scott Selikoff and Jeanne Boyarsky]]></dc:creator>
		<pubDate>Thu, 01 Apr 2010 18:34:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.selikoff.net/blog/?p=241#comment-2268</guid>

					<description><![CDATA[[...] has touted the power of Flash Builder 4 but as we have all seen in the past sometimes more powerful designs lead to failure. I think Adobe forgot the KISS principle, or, perhaps they had one too many designers at the table [...]]]></description>
			<content:encoded><![CDATA[<p>[&#8230;] has touted the power of Flash Builder 4 but as we have all seen in the past sometimes more powerful designs lead to failure. I think Adobe forgot the KISS principle, or, perhaps they had one too many designers at the table [&#8230;]</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: rych		</title>
		<link>https://www.selikoff.net/2008/08/21/j2ee-why-ejb2-cmp-was-doomed-to-failure/comment-page-1/#comment-2255</link>

		<dc:creator><![CDATA[rych]]></dc:creator>
		<pubDate>Thu, 11 Mar 2010 08:01:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.selikoff.net/blog/?p=241#comment-2255</guid>

					<description><![CDATA[It takes the average human 16.8 seconds to find the face in the EJB2 failure picture above.........how about you?]]></description>
			<content:encoded><![CDATA[<p>It takes the average human 16.8 seconds to find the face in the EJB2 failure picture above&#8230;&#8230;&#8230;how about you?</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: scott		</title>
		<link>https://www.selikoff.net/2008/08/21/j2ee-why-ejb2-cmp-was-doomed-to-failure/comment-page-1/#comment-68</link>

		<dc:creator><![CDATA[scott]]></dc:creator>
		<pubDate>Wed, 03 Sep 2008 07:45:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.selikoff.net/blog/?p=241#comment-68</guid>

					<description><![CDATA[Thanks Ulf, XDoclet did solve a lot of these problems except that it was never part of the spec, but rather an optional way to do things.  Had it been part of the spec early on, it might have taken the place of annotations used in the EJB3 spec.

Oh and I&#039;m not saying database changes never happen but you have to admit, most of the time the schema changes the code has to be changed anyway.  It&#039;s rare to change a database schema and XML mapping file for entities, without changing a line of code.  The only example that even comes to mind is when you rename a column.]]></description>
			<content:encoded><![CDATA[<p>Thanks Ulf, XDoclet did solve a lot of these problems except that it was never part of the spec, but rather an optional way to do things.  Had it been part of the spec early on, it might have taken the place of annotations used in the EJB3 spec.</p>
<p>Oh and I&#8217;m not saying database changes never happen but you have to admit, most of the time the schema changes the code has to be changed anyway.  It&#8217;s rare to change a database schema and XML mapping file for entities, without changing a line of code.  The only example that even comes to mind is when you rename a column.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Ulf		</title>
		<link>https://www.selikoff.net/2008/08/21/j2ee-why-ejb2-cmp-was-doomed-to-failure/comment-page-1/#comment-58</link>

		<dc:creator><![CDATA[Ulf]]></dc:creator>
		<pubDate>Tue, 02 Sep 2008 06:49:06 +0000</pubDate>
		<guid isPermaLink="false">http://www.selikoff.net/blog/?p=241#comment-58</guid>

					<description><![CDATA[While I agree with the basic gist of EJB being a good idea that wasn&#039;t implemented well, I disagree with some of the points made.

E.g., XDoclet was around long before Hibernate et al. ever existed, and it took a lot of the pain of maintaining the various source and config files out of EJB. But either way, I wouldn&#039;t say that having one or two large config files is an unworkable situation; it presents some organizational challenges, and isn&#039;t pretty to begin with, but just like 100KB Struts config files, people have learned to live with it. For sure, annotations are nicer, but EJBs were cooked up during the Java 1.2 lifetime (originally in 1998, I think).

As to the database changing w/o the app code changing, oh yes, it happens. I&#039;ve seen weekly schema changes is huge databases, when only a single one out of the many apps running on the DB was changing. That&#039;s were abstraction layers really help. Generally, the code and config files needed for those can be created (semi-)automatically, in which case it doesn&#039;t matter much how large they are.

In my view, the main problem had more to do with getting EJB apps to scale well without throwing a lof of hardware at it (add comment about Sun being a hardware vendor here), and that EJB servers were too expensive to be used lightly by small companies. It was far cheaper to run a servlet container using JDBC plus some homegrown ORM solution, and implement other app server functionalities as needed.]]></description>
			<content:encoded><![CDATA[<p>While I agree with the basic gist of EJB being a good idea that wasn&#8217;t implemented well, I disagree with some of the points made.</p>
<p>E.g., XDoclet was around long before Hibernate et al. ever existed, and it took a lot of the pain of maintaining the various source and config files out of EJB. But either way, I wouldn&#8217;t say that having one or two large config files is an unworkable situation; it presents some organizational challenges, and isn&#8217;t pretty to begin with, but just like 100KB Struts config files, people have learned to live with it. For sure, annotations are nicer, but EJBs were cooked up during the Java 1.2 lifetime (originally in 1998, I think).</p>
<p>As to the database changing w/o the app code changing, oh yes, it happens. I&#8217;ve seen weekly schema changes is huge databases, when only a single one out of the many apps running on the DB was changing. That&#8217;s were abstraction layers really help. Generally, the code and config files needed for those can be created (semi-)automatically, in which case it doesn&#8217;t matter much how large they are.</p>
<p>In my view, the main problem had more to do with getting EJB apps to scale well without throwing a lof of hardware at it (add comment about Sun being a hardware vendor here), and that EJB servers were too expensive to be used lightly by small companies. It was far cheaper to run a servlet container using JDBC plus some homegrown ORM solution, and implement other app server functionalities as needed.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Arthur Griffith		</title>
		<link>https://www.selikoff.net/2008/08/21/j2ee-why-ejb2-cmp-was-doomed-to-failure/comment-page-1/#comment-19</link>

		<dc:creator><![CDATA[Arthur Griffith]]></dc:creator>
		<pubDate>Sat, 23 Aug 2008 17:09:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.selikoff.net/blog/?p=241#comment-19</guid>

					<description><![CDATA[You have written a very lucid explanation. Thank you.

I have ventured only into the shallows of EJB, but I could see the deep water. This murkiness is not a unique situation. I have seen theory raise its ugly head and squash practicality several times. I saw it happen in my specialty are, languages, as far back as PL/I. It repeated itself with Ada, and others. And, I fear, it&#039;s beginning to happen in the later versions of Java. But that&#039;s a different subject.

Your explanation is a delight to read. Perhaps enough of your type of thinking will cause a return to reality and practicality.]]></description>
			<content:encoded><![CDATA[<p>You have written a very lucid explanation. Thank you.</p>
<p>I have ventured only into the shallows of EJB, but I could see the deep water. This murkiness is not a unique situation. I have seen theory raise its ugly head and squash practicality several times. I saw it happen in my specialty are, languages, as far back as PL/I. It repeated itself with Ada, and others. And, I fear, it&#8217;s beginning to happen in the later versions of Java. But that&#8217;s a different subject.</p>
<p>Your explanation is a delight to read. Perhaps enough of your type of thinking will cause a return to reality and practicality.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: scott		</title>
		<link>https://www.selikoff.net/2008/08/21/j2ee-why-ejb2-cmp-was-doomed-to-failure/comment-page-1/#comment-18</link>

		<dc:creator><![CDATA[scott]]></dc:creator>
		<pubDate>Sat, 23 Aug 2008 14:55:08 +0000</pubDate>
		<guid isPermaLink="false">http://www.selikoff.net/blog/?p=241#comment-18</guid>

					<description><![CDATA[I don&#039;t disagree that database naming should be readable, but its rare to find a database with perfect naming for every table and field.  I&#039;m not advocating databases use gibberish naming, but whether or not u_Address_Line3 is renamed to City doesn&#039;t matter to the user.  On the other hand it does matter to the programmer, and I could spend another few pages discussing appropriate naming for database systems, although I don&#039;t think it would be very interesting.]]></description>
			<content:encoded><![CDATA[<p>I don&#8217;t disagree that database naming should be readable, but its rare to find a database with perfect naming for every table and field.  I&#8217;m not advocating databases use gibberish naming, but whether or not u_Address_Line3 is renamed to City doesn&#8217;t matter to the user.  On the other hand it does matter to the programmer, and I could spend another few pages discussing appropriate naming for database systems, although I don&#8217;t think it would be very interesting.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Behrang		</title>
		<link>https://www.selikoff.net/2008/08/21/j2ee-why-ejb2-cmp-was-doomed-to-failure/comment-page-1/#comment-14</link>

		<dc:creator><![CDATA[Behrang]]></dc:creator>
		<pubDate>Sat, 23 Aug 2008 06:21:03 +0000</pubDate>
		<guid isPermaLink="false">http://www.selikoff.net/blog/?p=241#comment-14</guid>

					<description><![CDATA[&quot;Since the user is never supposed to view the database directly, why should it matter what things are named?&quot;

While users usually don&#039;t care about that, it still is important to use proper names for tables and columns in the same way it is important to use proper names for your classes, methods, etc.

Why? Because it makes it easier to comprehend the system , to maintain it. And when you directly use SQL/JDBC in your code or use annotations (XDoclet or Java 5) to map your classes and their fields to their corresponding tables and columns respectively, using proper names makes your code more readable to.]]></description>
			<content:encoded><![CDATA[<p>&#8220;Since the user is never supposed to view the database directly, why should it matter what things are named?&#8221;</p>
<p>While users usually don&#8217;t care about that, it still is important to use proper names for tables and columns in the same way it is important to use proper names for your classes, methods, etc.</p>
<p>Why? Because it makes it easier to comprehend the system , to maintain it. And when you directly use SQL/JDBC in your code or use annotations (XDoclet or Java 5) to map your classes and their fields to their corresponding tables and columns respectively, using proper names makes your code more readable to.</p>
]]></content:encoded>
		
			</item>
	</channel>
</rss>
