Hi Nic,
Let me add a few comments
>My accounts system, for example, does't need transaction management
>because it's designed to happen inside the method where I can easily
>use JDBC transaction management (which is *slightly* more efficient).
If you need it you can use JDBC transaction management also in EJBs.
>JDBC Connection pools are available from all sorts of places (they're
>actually in the JDBC API now).
In the EJBs you do not have to worry about it. Everything is done by the
server.
>I disagree. There are quite a few extra costs associated with using
>EJBs:
>- all the resources are held in JNDI references so there's a
>hashtable lookup for each resource you get hold of.
Even a complex application, like the Petstore demo available from Sun only
use a few JNDI references, so this is not a problem.
>- EJBs rely in part on introspection which is an expensive startup
>cost.
EJBs do not need introspection, this are the JavaBeans, but only the
JavaBeans used in Integrated Development Environment for development (when
you set or work with its properties). Also, this is only done at development
time. JavaBeans in enterprise applications do not need introspection, they
just provide several services that the developer knows in advance and nobody
had to discover first.
>- containers have to take time out to serialize and de-serialize
>beans
This is called activation and deactivation and is one of the advantages of
EJBs related to scalability. If your application need more beans they are
created automatically. If they are do not needed they are deleted. If they
are still needed but later they are deactivated to save resources.
Benjamin
___________________________________________________________________________
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff SERVLET-INTEREST".
Archives: http://archives.java.sun.com/archives/servlet-interest.html
Resources: http://java.sun.com/products/servlet/external-resources.html
LISTSERV Help: http://www.lsoft.com/manuals/user/user.html