You are viewing a plain text version of this content. The canonical link for it is here.
Posted to general@jakarta.apache.org by Steve Downey <st...@netfolio.com> on 2002/01/31 18:36:42 UTC
RE: J2EE considered harmful (was [Fwd: cvs commit: jakarta-site2/
xdocs index.xml])
<snip>
> I have implemented a system using Container Managed EntityBeans that
> worked fairly well. I used Jonas (it was some time ago). It
> was smaller
> than the original poster example (about 20 entity classes, tens of
> thousands of instances). I spent a lot of time getting the
> entity design
> right. From the original description, it looks like the
> problems in the
> quoted project came from bad system design, more than from EJB
> technology as such.
>
> Comments on my experience:
>
> - The location and engine independence was a true marvel. I was
> developing with postgres/linux and deploying under
> MSSQLServer/NT with
> the same source code. Only small diffs in configuration needed.
> - Performance was not good, but scalability was.
> - Leaving transaction and persistence management to the
> container proved
> good at the end.
> - My main issue in the development were related with using
> JSP for the
> interface (JSP sucks (c) Jon :) )
>
> So, while I agree with political/licensing issues being of concern, I
> would not disqualify EJB as a whole from a technological
> point of view.
> YMMV.
>
My experience with Distributed Object Systems goes back to early CORBA and
DCOM. I've seen about as many failures in just about every distributed
system, regardless of technology flavour. EJB is just the latest, and as
seems usual in our industry, lots of people are coming in, treating it as
green field development, and are making the same mistakes.
Mostly, they ignore that the choice of making a system distributed is
fundamental. You can not take an Object Model and arbitrarily cleave it and
produce a good Distributed Object Model. The worst case of this I ever saw
was a system that had String as a CORBA object.
EJB also brings to the table all of the problems of the Object/Relational
impedance mismatch. It's an empirical fact at this point that rows in a
table are bad objects. They're data, and have no behavior. Turning them into
objects with container managed persistence doesn't make them good objects.
Objects are composed out of many rows spanning several tables. That's hard
to do with CMP.
Just my $0.02.
<><><><><><><><><><><><><><><><><><><><><>This electronic mail transmission
may contain confidential information and is intended only for the person(s)
named. Any use, copying or disclosure by any other person is strictly
prohibited. If you have received this transmission in error, please notify
the sender via e-mail. <><><><><><><><><><><><><><><><><><><><><>
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>
RE: J2EE considered harmful
Posted by Paulo Gaspar <pa...@krankikom.de>.
A bit more of OT inline:
=;o)
> -----Original Message-----
> From: Andrus Adamchik [mailto:andrus-jk@objectstyle.org]
> Sent: Thursday, January 31, 2002 10:50 PM
> To: Jakarta General List
> Subject: RE: J2EE considered harmful
>
>
> At 09:11 PM 1/31/2002 +0100, Paulo Gaspar wrote:
> > (1) Not using that kind of layer does NOT mean that you have to
> > concatenate Strings;
>
> Yes, am pretty sure there are ways to make life easier with SQL,
> sorry for bad comparison.
No reason to be sorry. The traditional approach you pointed is a PITA.
I am just mentioning alternatives.
> See, despite all of the skepticism about O/R mechanisms, I
> believe in this
> approach for one reason - I used a good O/R tool for major
> development for
> about 4 years now. I am talking about WebObjects. I believe this was the
> first application server out there (I think before even the term was
> coined). Now it lives in a relative obscurity since NeXT (the inventor of
> it) was bought by Apple, and Apple has no reputation for "enterprise"
> solutions.
I always read good thinking about WebObjects. I am really getting
curious about it.
> The bottom line here is that developer productivity goes up
> significantly.
> Code produced is incomparably easier to understand and maintain. And
> performance price is not that big (definitely not comparable to
> the impact EJB would make).
UAU! Good performance too?
I did read a lot about its productivity but nothing about
performance.
> > (2) The use of Javabeans is abused.
>
> Totally agree. Still does not make this pattern bad. One use is a
> transport
> mechanism for data between the application parts. Clean and easy
> to understand.
Yes, but I think javabeans should be reserved for complex business
logic where it shines on the clean & easy aspects.
For data transport a lot can be automated in Java using approaches
like the Dynabeans. I mean, code like this:
bean1.field1 = someOtherSource.getObject("field1");
bean1.field2 = someOtherSource.getObject("field2");
...
bean1.field47 = someOtherSource.getObject("field47");
is really dumb and painful.
> **** Sorry for an OT post, this J2EE licensing discussion got a
> bit off hand.
A lot of interesting discussions go on OT all the time.
=;o)
> ~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-
> - Andrei (a.k.a. Andrus) Adamchik
> http://objectstyle.org
> list email: andrus-jk at objectstyle dot org
> personal email: andrus at objectstyle dot org
Have fun,
Paulo Gaspar
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>
RE: J2EE considered harmful
Posted by Andrus Adamchik <an...@objectstyle.org>.
At 09:11 PM 1/31/2002 +0100, Paulo Gaspar wrote:
> (1) Not using that kind of layer does NOT mean that you have to
> concatenate Strings;
Yes, am pretty sure there are ways to make life easier with SQL, sorry for
bad comparison.
See, despite all of the skepticism about O/R mechanisms, I believe in this
approach for one reason - I used a good O/R tool for major development for
about 4 years now. I am talking about WebObjects. I believe this was the
first application server out there (I think before even the term was
coined). Now it lives in a relative obscurity since NeXT (the inventor of
it) was bought by Apple, and Apple has no reputation for "enterprise"
solutions.
The bottom line here is that developer productivity goes up significantly.
Code produced is incomparably easier to understand and maintain. And
performance price is not that big (definitely not comparable to the impact
EJB would make).
> (2) The use of Javabeans is abused.
Totally agree. Still does not make this pattern bad. One use is a transport
mechanism for data between the application parts. Clean and easy to understand.
**** Sorry for an OT post, this J2EE licensing discussion got a bit off hand.
~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-
- Andrei (a.k.a. Andrus) Adamchik
http://objectstyle.org
list email: andrus-jk at objectstyle dot org
personal email: andrus at objectstyle dot org
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>
RE: J2EE considered harmful
Posted by Paulo Gaspar <pa...@krankikom.de>.
*persistence transparency* <=> *waste of efficiency*
There are no good systems that solve that yet. It only works for very
simple schemas.
Besides,
(1) Not using that kind of layer does NOT mean that you have to
concatenate Strings;
(2) The use of Javabeans is abused.
For (1) I use SQL generators for the most common operations and SQL
templates - defined in an XML file - for the others. Having SQL defined
outside the Java code often saves a lot of time and avoids the
concatenation mess.
For (2)... just go to the jakarta-commons mail archives and check the
discussions about the DynaBeans stuff.
Have fun,
Paulo Gaspar
> -----Original Message-----
> From: Andrus Adamchik [mailto:andrus-jk@objectstyle.org]
> Sent: Thursday, January 31, 2002 8:43 PM
> To: general@jakarta.apache.org
> Subject: RE: J2EE considered harmful
>
> ...
>
> Well, if EJB (or others) are doing it wrong, it doesn't mean that Object
> Relational approach is bad. I agree that objects mapped straight to the
> rows one to one are not of much use by themselves. But they provide
> something that you will need to build your less fine grained objects,
> namely *persistence transparency*. By the same token you can say that any
> objects that use Java Bean pattern are useless, since all they
> have is get
> and set methods.
>
> But well, some people may like to concatenate SQL strings every time they
> want to get some data written or read to/from the database. The keyword
> here is "productivity".
>
>
> ~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-
> - Andrei (a.k.a. Andrus) Adamchik
> http://objectstyle.org
> list email: andrus-jk at objectstyle dot org
> personal email: andrus at objectstyle dot org
>
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>
RE: J2EE considered harmful
Posted by Andrus Adamchik <an...@objectstyle.org>.
At 12:36 PM 1/31/2002 -0500, Steve Downey wrote:
>EJB also brings to the table all of the problems of the Object/Relational
>impedance mismatch. It's an empirical fact at this point that rows in a
>table are bad objects. They're data, and have no behavior. Turning them into
>objects with container managed persistence doesn't make them good objects.
>Objects are composed out of many rows spanning several tables. That's hard
>to do with CMP.
>
>Just my $0.02.
Well, if EJB (or others) are doing it wrong, it doesn't mean that Object
Relational approach is bad. I agree that objects mapped straight to the
rows one to one are not of much use by themselves. But they provide
something that you will need to build your less fine grained objects,
namely *persistence transparency*. By the same token you can say that any
objects that use Java Bean pattern are useless, since all they have is get
and set methods.
But well, some people may like to concatenate SQL strings every time they
want to get some data written or read to/from the database. The keyword
here is "productivity".
~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-
- Andrei (a.k.a. Andrus) Adamchik
http://objectstyle.org
list email: andrus-jk at objectstyle dot org
personal email: andrus at objectstyle dot org
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>