Building A J2EE App with Linux
Dejected @Work writes "If you think "Hello World" is always simple and boring try building it with a entity/session EJBs, a servlet, a JSP page, and a HTML home page on Linux. This tutorial shows you how to develop, test, run, and debug a complete J2EE application using Linux and WebSphere(trial download)."
asdfasdfasdf awfd asdf asdf asdf ASDF
This tutorial is an excellent starting point for people who want to get into J2EE. J2EE has quickly become one of the hottest new technologies on the market, and for good reason.
;) In any case, the enterprise edition has proven the favorite environment for high-availability, low-latency business applications.
.NET, which by all appearances will be to Java what Java was to Linux, minus X11 and plus COM.
Some background for n00bs: J2EE == Java 2 Enterprise Edition, Java's flagship Java product. Ironically, "Java 2" actually refers to Java >= 1.2, but we'll let that slide.
As for deployment platform, I have to say that Linux is the ideal Java platform. Both companies support open source, so the community has made sure the integration is tight and optimized for users that demand the performance of C++ with the ease of use of Python.
This tutorial would be of help to anyone trying to break into the software industry, and a boon especially to those interested in C# and
Karma: Good (despite my invention of the Karma: sig)
I wonder if there are any JBoss tutorials that would show us how to do it as easily as this.
Archie - CIO-for-hire
Is this a sign to anyone that programs are having to include too much code at a deeper level of implementation than they have to? A Hello World program for a PC gets complicated when it has to include code for the OS that it runs on.
Project Hambo
Simply write the program in assembly, and have the computer say Hello World without a pre-recorded wave or audio file. Now do it without an operating system (self bootable, sound card drivers build in, etc.)
That said, good tutorial.
Rod Taylor
And d/l the Java & J2EE SDK, run on Linux with Apache, Jakarta's Tomcat, JBoss, and use an open source DB like postgres or mySQL.
There are full open source options for J2EE (in fact, I have been toying the idea of making a weblogging program similar to slashcode or scoop with J2EE, under the GPL, of course).
And as a side note, J2EE on windows, linux, unix, or mac isn't different, you know. Did this article just get approved cause it has a tutorial in linux? The only thing that you'll have to deal with is installing the side software in linux (websphere, essentially).
Good quote, too many chars. Seriously, the slashdot 120 char limit sucks!
The problem I see repeatedly with J2EE adoption is the insistence of developers to use every facet of the API. That means EJBs, JSPs, servlets, JMS (messaging), transaction services etc. People don't seem to realise that J2EE is a set of APIs, and a simple servlet/JSP/JDBC solutions is just as 'J2EE'-compliant as a full bean-driven, JTA-enabled solution.
To ease yourself in, start with servlets and JSP (obviously for web-enabled apps). Then start adding beans (stateless session then stateful session and then entity), etc. Don't hope to throw every Java-enabled TLA together and hope for a performant J2EE solution!
I'm a J2EE developer. I mostly use JSP/Servlets, but I have a couple EJB container apps where it makes sense. I've made a selection of books I think people interesting in getting into this market should own.
Go to http://www.starvingmind.net/tech.php and check them out.
Changing topics, I have been experimenting with a servlet container called Resin, which people in the industry seem to regard as the fastest for JSP/Servlet apps. Development License is free, production license is $500 IIRC. Worth looking into once JSP/Servlet performance becomes an issue for you. It is not Open Source, but it looks to be a very high quality product, which runs fine on Linux.
-Pete
Soccer Goal Plans
If you want the learn about the J2EE EJB container services, I highly reccomend O'Reilly's Enterprise JavaBeans (3rd Edition), I have both the second and third additions, and think they are both great.
-Pete
Soccer Goal Plans
under Linux?
I tried the whole Linux/Java thing. Couldn't get the Java environment to install for love or money.
--- Jump!! Fire!! Bullet time!! - Lego version of the Matrix
Unfortunately, Linux is not an adequate deployment platform for high-traffic enterprise apps. This is due for the most part to the Linux threads architecture (or lack thereof) and less-than-optimized java implementation. Since Linux has no real threads and no optimized mutex locking (such as adaptive locks), high workload, simultaneous requests and network traffic brings latencies up very rapidly and makes the system dog slow very quickly.
Of course, Linux can be a great development platform for J2EE, and the apps can be deployed on Solaris (even Solaris Intel) or MacOS X (which has a marveous super-optimized JVM)
In (clearly unscientific) testing that I made, Solaris Intel was about 3x as fast under load and a lot snappier than Linux on the same hardware.
Lenny Primak PP-ASEL-IA,Heli
YHBT. YHL. HAND.
If you want to get going quickly, I recommend that you begin using Jakarta Tomcat 4. It has some features that make developing true J2EE apps a lot easier (JNDI support, JMS support, etc.) Remember that many J2EE apps don't actually need EJBs, which means that you do not need to deploy a J2EE container. If you choose to deploy a container, I recommend JBoss. It has some quirks, but is true free software, and the latest versions are actually beginning to outperform some commercial EJB containers.
Finally, take heed of some other people's comments... you do not need to have every Java TLA running for the solution to be a J2EE application. Choose the bits and pieces that meet your needs, and don't throw in the kitchen sink just because it's the technology du jour.
Unfortunately, you're smoking crack. This is due for the most part to you're narrow-minded view that a high-traffic enterprise app needs to run on one, gigantic server.
The JVM itself does not scale adequately to serve high-traffic enterprise apps. The locking issues are not w/ Linux - they're with the JVM itself. You'll get nearly linear scaling w/ Sun's JRE going from one to 2 processors. A fair amount less making the jump to 4. After that, you're screwed. The JVM will hang on internal locks, and you'd be lucky to get much performance gain at all. It's certainly true that Sun's JRE implementation runs best on Solaris - imagine that. But if you run under IBM's JRE (Which is already a good bit faster than Sun's), you'll see very little difference.
Web-applications are perfectly suited to load-balancing. Throw a couple hot/hot $1000 LVS 1u servers in front of your application servers, and you can scale to millions of hits/day.
- James
Skip the WebSphere download and start with JBoss. Still compliant, but simple to manage and open. Even if you're just getting started, stepping through container source in a debugger can be an enlightening experience.
After you read the hype about the mystical and versatile powers of EJBs, brush up on its real-world shortcomings and some useful patterns for overcoming them at The Server Side.
Stop eating my hands.
It's called Squabble named after the website that uses it. It's not ready for prime time yet (they are working on v2.0, which in their words "Won't cause as much embarrassment to us when people brose the code").
As far as help goes, I'm sure if you contacted Clay, he would be happy to talk.
"Einstein argued that [...] God is not capricious or arbitrary. No such faith comforts the software engineer." ~ Brooks
I guess my crack smoking is to blame to do the tests on the same hardware. IBM JRE, unfortunately, crashes, and I will also take 4 2-way boxes over 10 1-ways. sorry. shhhh--cough-cough-cough
Lenny Primak PP-ASEL-IA,Heli
All these tools (yes, I have the required regiustration to look through the tutorial) Are great for doing the O/R stuff, but what JSP and web development ion general needs is goog WYSIWYG editros for the Composition of Web Pages.
Anyone know of one?
Open Source Identity Management: FreeIPA.org