A new TSS article by Wade Poziombka demonstrates how to implement a server using the J2EE 1.4 features: Java Connector Architecture (JCA) 1.5 and EJB 2.1. It shows how the two features can be combined to provide multithreaded servers that can be written and deployed in an open and portable way. These capabilities are demonstrated in the context of an SMTP server.
Read "Serve it up with J2EE 1.4 - Extending the application server using JCA 1.5 and EJB 2.1"
Thanks for this excellent article!
I vote for JCA1.5 as the best change in J2EE1.4...what a lot of opportunities....:-)
Ok, guys, I know, all the important webservices toys are as important...
When I read jca specs some times ago thought that it should have been designed in a more flexible way.
I thought: in the future transaction may come in from the web server, and so a web server should be treated as a resource adapter.
Reading this article I realized that actually jca 1.5 does the job.
how does this approach differ from writing application server pieces as JMX wrapped objects? What are the comparative strengths and weaknesses of the two (JMX vs JCA)??
jca permits an adapter to be deployed on whatever
application server. This is not possible with jmx.
Besides jmx was developed for menagement. The fact it has
become the backbone of some j2ee implementation seems a sort of over use of the api.
I don't like jmx because it introduces yet-another-component-model.
JMX and JCA are not an either / or situation. They meet two entirely different needs.
Brushing over the details, JCA adds pooling and transactional semantics to your existing resource connection code. JMX does not add any capabilities to your resource connections, but it does allow you to view and manipulate characteristics of the connections in real-time, and to explicitly control lifecycle management.
JBoss provides an example of how both JMX and JCA are used in complimentary fashion to manage resources such as JDBC connection pools.
I developed a JCA 1.0 adapter some time ago.
1.5 looks quite different...!?
Is 1.0 compatible with 1.5 ?
The short answer seems to be: its close but, no. Outbound connectors, supported in 1.0, remain pretty much unchanged. The notable difference: deployment descriptors. They have changed significantly. The majority of the API, etc is the same. So, converting to 1.5 should not be a major effort. Most likely just repackaging with new descriptor.
It is likely that app servers will support 1.0 and 1.5 connectors for some time. (In fact, none yet support 1.5!)
The big change in JCA 1.5 was the introduction of inbound connectors (including threading etc).
What you're saying is not true. From J2EE 1.4 JMX is an integral, required part of J2EE and so it will be possible to deploy a JMX MBean on ANY J2EE 1.4 compliant app server.
Can any of the app server developers comment on their target dates for releasing support for JCA 1.5? (Weblogic, Websphere, jBoss, Oracle, Borland, ATG, jRun, SunOne, Gemstone, Iona, etc...)
JCA 1.5 looks very promising, but as an application developer it would be nice to know when it will be supported and robust enough to deploy.
I reckon the date will be whenever those companies release their first J2EE 1.4 compliant or rather certified app server, as JCA 1.5 will be required in J2EE 1.4.
well done !
samples and "hands on" are always welcome, really helps in quick understanding.
I would like the complete source code for this example. The examples are filled with gaps.
I have read the "Serve it up with J2EE 1.4 - Extending the application server using JCA 1.5 and EJB 2.1"
. It's really good. But I couldn't find the accompanying code with it. Can anyone please tell me where can i get that code. I would be very thankful for your help.
any relevant examples also are welcome..
I know this thread is probably dead...
but just in case.
Has anyone found the source code?