JBoss to Apply for Official J2EE Certification
Jonboy X writes "CNet has an article detailing the resolution of a long-standing feud between open-source J2EE server vendor JBoss and Sun. It seems they've decided to break down and shell out the clams to be certified by Sun. Quoth Bob Bickel, JBoss's vice president of corporate development and strategy: 'Our core base of developers, a lot of them say they don't give a damn...But the reality is that a lot of big companies who are using this are moving into production.' JBoss gives away its server software and survives on support contracts."
Quite simply, JBoss is a Java application suite that allows for vertical integration of enterprise databases using back-end query protocols thus providing for scalability and reliability within the IT infrastructure. Ah fuck-it I am too lazy to generate this meaningless technobabble.
It's simple Jboss is an open source implementation of the J2EE Specification.
Done, without using "business logic".
Of course, you're no further along than when I started.
So What's J2EE you ask, Well That's where it gets more complex. J2EE is a large thing, but it basically runs down to this.
1. Have Client code that knows how to display the data (Either a webpage or a client application, etc)
2. Have a middle tier system that provides the ability to do things (basically it's a bunch of methods and objects that a client can use, no matter the client) This is where the work is done, like calculations, rules like "You have to have a PO on file in recieving before you can have something shipped here", and other things. That way you can change the rules and calculations without having to update the client, and so all clients use the same rules and calculations. - JBoss does this job.
3. A backend Data Store, (Normally an RDBMS) this stores data for the Middle Tier to use.
Basically it provides for sepirating Presentation, Logic, and Data (come on, I said logic, not "business logic", it's close enough right?)
4. Profit - wait how'd that get in there?
J2EE is quite different from the kind of Java that runs on your desktop (so-called J2SE - Java 2 Standard Edition) in that it contains a huge set of additional libraries and specifications, both for those writing the J2EE container, and for those writing the software components. This way, both sides - container and components - can make strong assumptions about each other. Because of this, and since the component is running "inside" the container, the container can provide a lot of services (read: "magically available features") to the components, much more easily than if the component writer had to call and coordinate several libraries.
These features include:
- clustering and failover
- transactions that span more than one database, or include systems other than databases (so you can't just use database transactions)
- a standard way to connect to mainframes and ERP software (JCA)
- saving your objects to database tables, including cluster-safe caching
- connecting to secure message queues
- interfacing with directory services (ldap, active directory etc.)
- etc. etc.
If you really need more than one of the above, maybe you should take a closer look at J2EE. If not, don't bother - J2EE is very large, and takes a considerable effort to learn well.Stupidity is mis-underestimated.
So what's the difference between this an traditiona DB-stored procedures?
Stored procs are tied to the database, and some would consider this a violation of MVC. Ideally a well implemented business logic separate from the DB will allow you to change databases with minimal code rewrite.
I'm a writer, a poet, a genius, I know it. I don't buy software, I grow it.
JBoss let's you run JSP pages and servlets. Of course, Tomcat and Jetty offer that as well.
JBoss offers things like EJB, JMS, JNDI, transaction management, clustering, container managed persistence and DB connection pooling.
Whether you need those things or not, is another question. Whether you use those things to create model-view-controller designs is also another question. You can write an J2EE app and it can still rank up there with the worst code designs in history.
One quite cool things about J2EE (and servlets) is the ability to create web application files (.war or .ear). You just assemble this file then pop it on the server. Voila. No further configuration required. It just works.
Another reason a lot of people use JBoss is because it (or rather, J2EE) looks really good on your resume. You can become buzzword compliant by simply downloading the app and having a quick play on a Sunday after noon. Ooops, got to kick that facetiousness habit.
Anyway, I'm glad that the JBoss group thinks it's worth shelling out $100K pa on certification. Provided they get their payback from the corporates that want the certification, not us regular joes that just like JBoss because it works.
- RimuGuy
JBoss Hosting on Linux VPSs