IWETHEY v. 0.3.0 | TODO
1,095 registered users | 0 active users | 0 LpH | Statistics
Login | Create New User
IWETHEY Banner

Welcome to IWETHEY!

New Are EJBs really this painful?
[link|http://openejb.sourceforge.net/hello-world.html|Hello, world]

Hrm.

I like this [link|http://scarydevil.com/~peter/io/java.html|sarcastic commentary] about it.

(Seen from [link|http://use.perl.org/~schwern/journal/|Schwern's journal].)

Cheers,
Ben
"good ideas and bad code build communities, the other three combinations do not"
- [link|http://archives.real-time.com/pipermail/cocoon-devel/2000-October/003023.html|Stefano Mazzocchi]
New AdminiScott's dislike of them seems rather reasonable.
New Yes ...
of course a good IDE will generate all the boilerplate code for you and the deployment descriptors.

When I compare this crap with Gemstone that I worked with in 1996 it is unbelievable. Almost 10 years later and Gemstone is still light years ahead of J2EE.
New IDE Generating boilerplate
violates Blanchard's law.

Anyhow, if its boilerplate, then it could be assumed, right?

So why have it?

J2EE remains a (very popular) joke.


The tree of research must from time to time be refreshed with the blood of bean counters.
     -- Alan Kay
New Can someone give a good explanation of Home, Remote, etc?
Why does J2EE actually need all these? For some reason it is fuzzy to me at the moment. I seem to recall it has something to do with the fact that Java is statically typed and we want to work with proxy objects.

As I mentioned, I worked with Gemstone almost 10 years ago, and it was a dream to work with. J2EE is still nowhere near where Gemstone was then.
New It *doesn't* need them.
That's the frustrating part. The separate interfaces, linked only with a separate config file, are the crazed concoction of some idiot at Sun. Try making inherited EJBs sometime... great fun.*

This could all be accomplished with reflection much more easily.





* In the same way that peeling strips of flesh off your arm with a rusty fishhook is fun for people with self-destructive tendencies...
Regards,

-scott anderson

"Welcome to Rivendell, Mr. Anderson..."
New I think EJB's came from IBM
New Theoretical distributability
Home is the creator/manager of instances. In Smalltalk this role is accomplished by the Class. Because Java lacks class objects, the Home was created to fulfill this role. Home is an interface - an implementation may create a local object or a proxy to a remote object. IOW, there are typically two implementations of Home and its job is to be a factory of instances.

The actual object is also defined as an interface where each method claims it could throw RemoteException (which is useless if you are using local ejb). The tools generate two implementations of this interface - one is a proxy, the other an empty implementation that you fill in with your object's actual implementation.


Now you can theoretically locate your objects anywhere you like - in your process or another one using remote calls. The theory is you don't care, split your processing any way you like.

The reality is there are huge performance impacts when locating objects outside the local process - factor of 1000 slowdowns are not uncommon.

The whole thing is of dubious value - for performance you want to do as much in your vm as possible (integrate vertically) and distribute horizontally (lots of vms all alike, each with everything) vs lots of vms doing specific tasks cooperating in a big system.

The former scales quite well, the latter tends to spend most cycles in marshalling/networking/unmarshalling work.



The tree of research must from time to time be refreshed with the blood of bean counters.
     -- Alan Kay
New Yes.
Regards,

-scott anderson

"Welcome to Rivendell, Mr. Anderson..."
New It's worse
Because you have to become aware of the EJB Cycles which are different for each of the various EJB types.

I don't think even a seasoned RPG programmer could appreciate having to learn a new programming cycle.
New They purposely F'd it up to make OO look bad
________________
oop.ismad.com
New Actually EJB's have little to do with OO
EJB's promote distinctly non OO programming practices:
1. Separation of data and business logic - the EJB model has Entity Beans which your hold your data and session beans which execute business logic. In every EJB system that I have seen the data objects are just dumb data objects. A true OO system would not have this separation. Let's take a simple example, credit card validation/charges. An OO approach would be to have a credit card object that could be asked are you valid, and charge this amount. The credit card object would know how to do it. The EJB approach is to have a session bean which does credit card authorization. The EJB gets passed in the credit card details and does the authorization, the credit card object is just a dumb data holder.
2. Little or no inheritance - it is very difficult to combine entity beans and inheritance, finder methods for example are not polymorphic.

see this [link|http://www.oreillynet.com/pub/wlg/1322|blog] for a similar opinion

"It looks to me that we are doing RPC calls from the client to the server (via the facade). Our entities are glorified structs, and sessions are functions that work on that data. So what do you think... is this the right way to be doing things? Is this OO? "
Expand Edited by bluke March 4, 2004, 02:26:29 AM EST
Expand Edited by bluke March 4, 2004, 02:49:04 AM EST
New So bad that no paradigm wants to claim it?
An OO approach would be to have a credit card object that could be asked are you valid, and charge this amount....the [EJB] credit card object is just a dumb data holder

Note that not every OO affectionado agrees that OO is about "self-handling nouns". Majority? I don't know.
________________
oop.ismad.com
New Huh? Are you making up stuff as you go along, again?
Bryce quotes BLuke:
[Referring to [link|http://www.oreillynet.com/pub/wlg/1322|this blog entry]:] An OO approach would be to have a credit card object that could be asked are you valid, and charge this amount....the [EJB] credit card object is just a dumb data holder
To which Bryce replies:
Note that not every OO affectionado agrees that OO is about "self-handling nouns". Majority? I don't know.
Whu, whoo, what???

Now what orifice did you pull this shit out of?!?

When and where did you gain the impression that "not every OO affectionado [sic] agrees that OO is about 'self-handling nouns'"?

That's THE most basic trait of OOP; pretty much the DEFINITION of it.

I can't see how anyone can BE an "OO 'affectionado'" without agreeing with at least THAT.

Unless you show references, I'm going to assume that you either:

A) have misunderstood what some "OO 'affectionado'" was saying [you DO realise that Dion Almaer was arguing FOR "self-handling nouns"?]; or

B) mistook some non-"OO 'affectionado'" for an "OO 'affectionado'"; or

C) are intentionally PRETENDING to have got something wrong à la A or B, in order to (make [even more of] an ass out of yourself by trying to) bolster the pathetic arguments of your moronic anti-OO crusade.


Give us verifiable references of a bona fide "OO 'affectionado'" arguing that "OO is NOT about 'self-handling nouns'", or tell us which of the above it is.

Personally, I'm guessing it's C.


   [link|mailto:MyUserId@MyISP.CountryCode|Christian R. Conrad]
(I live in Finland, and my e-mail in-box is at the Saunalahti company.)
You know you're doing good work when you get flamed by an idiot. -- [link|http://www.theregister.co.uk/content/35/34218.html|Andrew Wittbrodt]
New Old school usenet style.
--\n-------------------------------------------------------------------\n* Jack Troughton                            jake at consultron.ca *\n* [link|http://consultron.ca|http://consultron.ca]                   [link|irc://irc.ecomstation.ca|irc://irc.ecomstation.ca] *\n* Kingston Ontario Canada               [link|news://news.consultron.ca|news://news.consultron.ca] *\n-------------------------------------------------------------------
New OK, I get it!
EJBs are nothing but hi-tech, modren[sic] IBM 360 card decks containing batch jobs!

Why didn't someon explain it to me that way earlier?!?
jb4
shrub\ufffdbish (Am., from shrub + rubbish, after the derisive name for America's 43 president; 2003) n. 1. a form of nonsensical political doubletalk wherein the speaker attempts to defend the indefensible by lying, obfuscation, or otherwise misstating that facts; GIBBERISH. 2. any of a collection of utterances from America's putative 43rd president. cf. BULLSHIT
     Are EJBs really this painful? - (ben_tilly) - (15)
         AdminiScott's dislike of them seems rather reasonable. -NT - (CRConrad)
         Yes ... - (bluke) - (5)
             IDE Generating boilerplate - (tuberculosis) - (4)
                 Can someone give a good explanation of Home, Remote, etc? - (bluke) - (3)
                     It *doesn't* need them. - (admin) - (1)
                         I think EJB's came from IBM -NT - (bluke)
                     Theoretical distributability - (tuberculosis)
         Yes. -NT - (admin)
         It's worse - (ChrisR)
         They purposely F'd it up to make OO look bad -NT - (tablizer) - (4)
             Actually EJB's have little to do with OO - (bluke) - (3)
                 So bad that no paradigm wants to claim it? - (tablizer) - (2)
                     Huh? Are you making up stuff as you go along, again? - (CRConrad) - (1)
                         Old school usenet style. -NT - (jake123)
         OK, I get it! - (jb4)

Hey, they have color-coded detours here.
148 ms