Java PaaS Vendor Survey – September 2011 (YouTube)

Posted in: Cloud Computing, Enterprise Java

Heroku vs OpenShift – The Battle of the JavaEE FUD

Posted in: Cloud Computing, Enterprise Java

On the same day that Heroku announced its new support for Java based applications, it also curiously posted a laundry list of FUD about the JavaEE platform. Don’t get me wrong, I share some of Heroku’s complaints, but calling out the shortcomings of the JavaEE platform by linking to documentation related to obsolete versions did not help give Heroku’s arguments credence. Last I checked, the Jetty server, which Heroku’s Java platform is based on, quite clearly states that it is a Java Servlet container, and the Java Servlet specification is part of the JavaEE family of specs. So the specs that Heroku derided are in fact the same specs that their product is running on a subset of. Interesting tactic.

Of course, the RedHat team with their OpenShift platform (that does in fact support a full JavaEE stack) managed to take the Heroku post personally and responded in a less than dignified fashion. Why RedHat felt they needed to respond at all is the first question that comes to mind. The Heroku post does not call them out by name. The level of animosity in the Redhat response makes me wonder if there is bad blood between these teams.

Personally I have real concerns about Heroku’s model of non-conformance to the JavaEE specifications. There is a wealth of knowledge and code out there based on those specs (irregardless of how flawed they may be), so expecting people to do some heavy lifting to port their existing standard Java code to run on your platform is a big ask. The tools out there (from IDEs to builders like Maven and Ant to CI environments like Hudson) are entrenched in every team and on every developer’s box. Where do you hire Java Heroku developers from exactly anyway? Now, you could argue that Heroku’s model is not that different from standard JavaEE, but the fact that it is different at all is the problem. As one commenter on Heroku’s post said “Any reason you didn’t simply allow for uploading of a .war?“. Precisely.

OpenShift has its own set of issues as well though. I cannot recall the last time I worked on a project that actually required a full JavaEE stack. I don’t think I have a JBoss or WebLogic environment on any computer I own currently (and I definitely don’t have WebSphere, that’s for sure). What I do have is about 3 different versions of Tomcat with multiple applications deployed on each. I also have a couple of packaged pieces of software installed that actually run Jetty internally. Perhaps it’s just the kinds of projects I work on, but I suspect I am most likely in the majority. Probably even more so if you looked at all the Java apps that are deployed on full JavaEE stacks out there, that could actually be deployed into a servlet container with no code changes. Arguing that a full JavaEE stack is an essential and technically superior solution when you are a vendor of such a stack (ie. JBoss) doesn’t really give your argument much objective weight.

So, JavaEE is not what it was even 5 years ago, it has gotten a lot better and has evolved via a variety of means, one of the biggest being watching what the community does to work around the JavaEE shortcomings (see Hibernate etc).

That said, a full JavaEE stack is not the answer to every problem, maybe not even a majority of problems.

As with most things in life, the middle ground is probably where the truth will be found. A non-standard Java platform is probably not the right answer, but then again a full JavaEE stack is probably not either. IMHO, as far as I can see right now, the sweet spot in the Java PaaS space are the vendors that allow developers to work as they have been previously – allow them to use the tools they know, the development workflow they know and the architecture they know. Based on that, I think Amazon’s Elastic Beanstalk and CloudBees RUN@Cloud are probably on the right track.

Cloudbees lands $10.5M to move Java development into the cloud

Posted in: Cloud Computing

CloudBees, which offers a Java platform as a service (PaaS) for developers, has raised $10.5 million in a funding round led by Lightspeed Venture Partners.

CloudBees was founded by Sacha Labourey, the former chief technology officer of JBoss. Its first investors included JBoss founder Marc Fleury. Kohsuke Kawaguchi, creator of Hudson, the most popular continuous-integration tool in the Java world, also works for the company, making CloudBees something of a Java dream team.

via Cloudbees lands $10.5M to move Java development into the cloud | VentureBeat.

links for 2009-06-24

Posted in: Social Networking

Twitter Recap for Week Ending 2009-06-15

Posted in: Social Networking

Seam 2.1.2 Is GA

Posted in: Enterprise Java

Thanks to the hard work of the entire Seam community, Seam 2.1.2 is now out and ready to go.

Twitter Recap for Week Ending 2009-06-08

Posted in: Social Networking
  • Bad sign for attendence @ #javaone. Keynote hall set up much smaller than previous years, definitely fewer seats #
  • Sitting in #communityone keynote session #
  • Wondering if physical disaster recover sites should now be replaced with cloud services #
  • First technical session of the week – Taking Advantage Of Subversion’s New Features #
  • Family Blog Update: insert witty fork pun here… http://bit.ly/b28K3 #
  • 2nd session of the day “Test Your Product On Multiple Machines in Parallel with Hudson” #communityone #
  • @chungsean welcome to #javaone sir #
  • Sitting in “Community Equity: Social Value System for Social Network” #communityone #
  • Just arrived @ pavillion reception for #communityone #
  • @alicia_s is it really small? Stupid fat hobbit #
  • Following semi-naked marching band to next party @ #communityone #
  • @alicia_s we’re talking about whatever you want to talk about #
  • Frankie says relax at #communityone party #
  • @srabon having an OK time. I am carrying some flu symptoms, so taking it easy to make sure I last the whole week. in reply to srabon #
  • Need one more person to use me as a refererence for #javaone registration to get the Flip. Earn yourself some good karma points – W1302019 #
  • In #javaone opening keynote, waiting for it to start, same DJ as last year #
  • Grey foggy morning in SF, will only get worse if Ellison shows up at the #javaone keynote #
  • Some McNealy and no Elison so far. Oh and I caught on on t-shirt. Good so far, #javaone #
  • I spoke too soon, Elison on stage now. ;( #javaone #
  • Elison was doing ok until he dissed AJAX – wrong room for that statement. #javaone #
  • In 2nd tech session of the day already at #javaone. This one on Amazon EC2. Also saw the one on OpenESB and BPEL. #
  • Is #OpenSolaris the product with the most swag and the least number of users at #javaone? Seriously, I do not get it. #
  • Watching JBoss mini-talk on there new ESB in the pavillion #
  • Thanks to @abridgwater for inviting me to the Press/Analyst Reception tonight. Cheers mate. #javaone #
  • Heading to the Java Community Process party at the Intercontinental for more #javaone fun #
  • Family Blog Update: cute of the day… http://bit.ly/PxdvC #
  • Mashed Potato Martinis at the JCP party! #javaone #
  • In a lab at #javaone about building social apps. using Zembly – same tool that @briankous demoed to the Behr team last Friday. #
  • In Joshua Bloch’s Effective Java talk for about the 5th year straight. #javaone #
  • In HtmlUnit session w/ @briankous at #javaone #
  • @briankous the jboss party is tomorrow night @ jillian’s, not tonight. how about a team dinner instead? in reply to briankous #
  • Netflix just sent me Weeds: Season 4: Disc 1 #
  • team dinner @ Magnolia, 1398 Haight St (Haight @ Masonic) 7:45pm – meet in lobby of my hotel 7:30pm to share taxi, or see you there #
  • Having dinner w/ @briankous @chungsean @michaelpallas and @tshumaker @godfather #
  • BTW, what kind of douche uses @godfather as their Twitter handle? Freakin’ Vito #
  • Sitting in a restaurant on Haight St in San Francisco and they are playing The Grateful Dead – is that just gratuitous? #
  • #JavaOne After Dark moved to the Marriott (4th & MIssion) because of probable bad weather tomorrow (actually later today really) #
  • RT @ABridgwater: Adrian on ZDNet.co.uk “The view from the floor at #JavaOne” http://bit.ly/3gb6d #
  • Urgh, the OpenSSO lab I am in is full of problems. #javaone #
  • FYI, if your English is not so good, strapping on a mic. and yelling and speaking really fast is not going to help the situation. #javaone #
  • #JBoss Party is starting. Free beer and a front row seat to watch the Lakers on a 20ft screen. I love Java. #javaone #
  • Damn, @briankous just broke a beer glass. Half a beer and we are going to have to cut him off already. #javaone the corruptor of innocents #
  • @gorkeyv are you high? #
  • @chungsean and I have moved on to the After Dark Party @ the Marriott #
  • I am watching the original lead singer of Toto sing Africa. i think I have slipped into a totally awesome alternate dimension @ #javaone #
  • @gorkeyv since when do you get so sticky over the Lakers? #
  • If there is any actual original member of Skynyrd on stage, is it OK to scream for Free Bird? #
  • I just saw any original member of Skynyrd play a 10:30 version of Free Bird – all bets are off for the rest of the night. Fuck yeah! #
  • Last keynote at possibly the last #JavaOne has just started – probably a few teary eyes in the room by the end I expect #
  • Today’s #javaone keynote, no emotion expressed, no acknowledgment of the end of JavaOne in this form, and also no “see you next year”. #
  • 2nd to last #javaone session about to start. Hopefully Mr Galbraith will be as interesting as usual and will keep me awake #
  • #javaone we are off to on on good start – Ben just slammed SAP user interface :) #
  • @jazzlifejunkie and if that all goes well, red eyes in the morning #
  • Beer Log: Dogfish Head 90 Minute IPA #
  • #Beer Log: Rogue – St Rogue Dry Hopped Red Ale #
  • @jazzlifejunkie touche sir #
  • #Beer Log: Rogue – Hazelnut Brown #
  • #Beer Log: Rogue – Anniversary Charlie – Dry Hopped American Strong Ale #
  • #Beer Log: Moylan’s – Hopsickle Imperial Ale – Triple IPA #
  • Family Blog Update: He’s coming home today… http://bit.ly/Dnuoo #
  • @gorkeyv thanks for the balanced well thought out reviews. you realize that it is #apple that has cult like followers , not #palm right? in reply to gorkeyv #
  • Maybe that should be the #pre tag line “Guaranteed to be really a lot like an #iIPhone since we used the same people” #
  • Adelaide Crows def. Essendon Bombers, 130 to 114 #
  • Family Blog Update: Back From San Francsico http://bit.ly/bZJhT #
  • Family Blog Update: Birthday Present http://bit.ly/Om85e #
  • Family Blog Update: Certified : Totally Nerdy http://bit.ly/sc7nF #
  • Family Blog Update: Are You Going To San Francisco? http://bit.ly/rAjbc #
  • Family Blog Update: Fog In San Francsico? http://bit.ly/2A6nBL #
  • Forgot my camera cable. Finally able to post my #javaone photos. http://bit.ly/KjZTE #
  • Everyone expects the new #iPhone to be announced tomorrow at WWDC, but will it also be available in stores tomorrow? http://bit.ly/t1U6e #
  • Family Blog Update: Stayin’ In Touch http://bit.ly/gyyGb #

JavaOne 2009 – (Mostly) Important Questions

Posted in: Enterprise Java

JavaOne 2009 starts in 5 days. Here is a list of questions I am looking forward to finding out the answers too.

Has Hudson Killed CruiseControl?
Seems like it has based on the number of mentions of Hudson vs CruiseControl in relation to the content at JavaOne. I lost my interest in CruiseControl when ThoughtWorks spun a for-profit version out of it. The only company I have seen be successful at this strategy is JBoss/RedHat where they develop the open-source version first and then roll the for-profit version out of that. The other times I have seen this attempted, all of the effort goes into the for-profit version and the open-source version ceases to progress. There is something fundamental about that 2nd pattern that just smells bad and doesn’t really seem to be in the spirit of open-source.

What Will Be The Volume Of The Twitter Noise Coming From Inside The Conference?
I have been tracking the hashed keywords related to the conference for a couple of weeks now. The volume has been slowly increasing and took a big jump on Tuesday morning when everyone got back from the long weekend in the US. I expect it to keep building up until Tuesday morning, but then what? Does it slow down because everyone is busy, or does it kick into a whole new gear and my trusty Twitterberry will just meltdown in the middle of the opening keynote?

Also curious to see what ad-hoc social activities get incubated in the Twitterverse during the conference?

Will AJAX Presentations Be THE Place To Be Seen For A 3rd Year Running?
The last 2 years have seen crazy interest in anything AJAX related. With Ben Galbraith and Dion Almer (spelling from memory there) being the focal point in their always entertaining presentations. But it feels a little like AJAX is getting to be slightly old news, at least in this forum.

My guess is that anything cloud related is going to be the hip place to be seen this year.

What Will The Oracle Presence Be?
AFAIK, the Oracle/Sun deal has not gone through yet, so technically Sun is still an independent entity. But of course I am also not naive enough to think Oracle won’t be pushing to start getting their hands on the “goods” at this conference. Will there be an Oracle presence in the keynotes that are traditionally Sun’s (the 2 on Tuesday and the 1 Friday morning)? What about signage around the conference? Oracle always has a booth in the pavilion, but will it be bigger, better positioned etc. this year?

What Will The Reaction To The Microsoft Keynote Be?
So the Twittervese exploded earlier this week when it was announced Microsoft will be presenting the Thursday morning keynote. Anyone who has been playing with Java long enough knows that Microsoft has not really been Java’s best friend. So, will the Java community accept Microsoft on the main stage? It would be nice to think that there will be some passionate reaction, either outrageous clapping or hateful booing, whatever, as long as there is some definitive reaction I will be happy. I fear the Java faithful might not be the kind to wear their hearts on their sleeves quite that much though.

Does the Oracle deal have something to do with Microsoft’s presence? Why does Oracle not have a keynote instead? Curious indeed.

Will Jonathon Schwartz Look As Uncomfortable And Awkward As Usual?
I will admit upfront that I am a Scott McNealy fan. He was passionate, and engaging to listen to on a stage. I was not happy when he was ousted from the top of Sun.

But even if I temper my anger over that situation, can anyone really be interested in listening to Schwartz talk? His stage presence is awful and he is robotic in his delivery of obviously scripted lines when guests are on stage. And don’t get me started on the pony tail, sport coat and jeans look! Bring back McNealy for the last one please!!!!

Will James Gosling’s Toy Show Seem Overly Long And Desperate Again?
I have a lot to thank James Gosling for. Most of my career is based on the technology he invented. I would like to have a beer with him at some point no doubt. But man, he is only marginally better than Schwartz on stage.

And I do not really understand the point of the Toy Show in the Friday morning keynote. You are at THE Java conference, and so the audience has self selected itself as resoundingly pro-Java. So why do we need a 3 hour carnival of Java applications trying to prove to us that Java is cool. We already think it is cool, that is why we are there. A lot of it just feels like they are pleading with us to please, please keep thinking Java is cool for another year until the next conference.

Will The Lunch Lines Be Under Control?
Getting your “free” lunch at JavaOne is an exercise in forgoing your basic right to not be hearded like livestock and yelled at by over zealous minimum wage event staff. It is like they are surprised by the number of people that show up for lunch each day, like there was no way they could possibly have guesstimated how many people might want to eat that day. Seriously, it is your last chance to get it right, please make an effort.

Will It Be Crazy Cold in Yerba Buena Gardens on Thursday Night Again?
Why is the Thursday night party outside now? I can’t possibly imagine it is much cheaper is it? It is San Francisco, it is cold on the hottest day of the year. I froze my ass off last year. The long range weather forecast looks like we are in for the same again.

Will The Bookstore Be Given More Space?
Doubt it. There is a whole convention center, and the bookstore gets jammed in a 10 by 30 square. Why? Why do you hate people who like to read?

Will Enough People Use me As A Reference So I Can Get The Better Swag?
I know 3 people who did, I think I need 2 more. I will even buy you a beer. My number is W1302019. Go ahead and earn yourself some karma points.

Why are the A’s and Giants both playing away all week?
A big boo to the MLB for having both teams out of town this week. It has become somewhat of a tradition for me to take my team to the baseball during JavaOne and you have destroyed that cherished pastime. Shame on you Bud Selig.

See you in San Francisco!

Installing JBoss Portal

Posted in: Enterprise Java, System Administration

Today I finished a successful fresh install of JBoss Portal. Below is the process I followed.

Versions

  • JBoss Portal — 2.7.2 (bundled with JBoss AS 4.2.3)
  • JavaSE — 5.0 Update 19
  • MySQL — 5.1.34 (Community Edition)
  • Linux Flavor — Red Hat Enterprise Linux Server 5.2 (64 bit)

Step 1 – Downloads

  1. I grabbed the Java installer from here http://java.sun.com/javase/downloads/index_jdk5.jsp. The downloaded file was called jdk-1_5_0_19-linux-amd64-rpm.bin
  2. I grabbed the Portal binaries from here http://www.jboss.org/jbossportal/download/index.html. The downloaded file was called jboss-portal-2.7.2-bundled.zip
  3. I grabbed the MySQL binary from here http://dev.mysql.com/downloads/mysql/5.1.html#linux-rhel5-x86-64bit-rpms. I downloaded the server (MySQL-server-community-5.1.34-0.rhel5.x86_64.rpm) and the client (MySQL-client-community-5.1.34-0.rhel5.x86_64.rpm) RPMs
  4. I grabbed the MySQL JDBC driver from this page http://dev.mysql.com/downloads/connector/j/5.1.html. The downloaded file was called mysql-connector-java-5.1.7.tar.gz

Step 2 – Install JavaSE

  1. I made the installer executable

    $ chmod +x jdk-1_5_0_19-linux-amd64-rpm.bin
  2. Then executed the installer

    $ ./jdk-1_5_0_19-linux-amd64-rpm.bin
  3. I paged through endless legal boilerplate and accepted it by typing yes and hitting enter (hopefully I didn’t sell my soul)
  4. The installer extracted the RPM file and installed it.
    I double checked the package was installed by querying the RPM database:

    $ rpm -q jdk
    jdk-1.5.0_19-fcs
    $

    This RPM installed all of the files into /usr/java/jdk1.5.0_19

  5. I edited the /etc/profile file to make the JAVA_HOME environment variable and Java binaries available to everyone on the box. I added the following lines to achieve this

    export JAVA_HOME=/usr/java/jdk1.5.0_19
    export PATH=$PATH:$JAVA_HOME/bin
  6. I double checked it all worked

    $ source /etc/profile
    $ echo $JAVA_HOME
    /usr/java/jdk1.5.0_19
    $

Step 3 – Deploy Portal Binaries

  1. I am never sure the correct place in a Linux distribution to put 3rd party stuff, but I went with /usr/local this time

    $ pwd
    /usr/local
    $ unzip ~/jboss-portal-2.7.2-bundled.zip

    This created the directory /usr/local/jboss-portal-2.7.2

  2. Once again, I edited the /etc/profile file to add the JBoss environment to it by adding the following line

    export JBOSS_HOME=/usr/local/jboss-portal-2.7.2

    Then I tested it

    $ source /etc/profile
    $ echo $JBOSS_HOME
    /usr/local/jboss-portal-2.7.2
    $

Step 4 – Change Default Port (Optional)
For my install I have no need to run Apache in front of JBoss, so I want JBoss to listen (or more correctly, have Tomcat listen) directly on port 80 – by default it listens on 8080.

  1. I opened the $JBOSS_HOME/server/default/deploy/jboss-web.deployer/server.xml file, (which is a standard Tomcat configuration file) in an editor.
  2. I changed the port of the HTTP connector to 80 (you can find it by searching for 8080). I also change the HTTPS connector to use 443 (you can find this one by searching for 8443). I then changed the value of the redirectPort attribute of the HTTP connector to match.

Step 5 – Change Portal to be the root web app. (Optional)
For my install, the Portal will be the main application on the server, so I want it to be accessible from the root of the server, and not have to enter the portal context path all of the time.

  1. First, I disabled the current root application

    $ mv $JBOSS_HOME/server/default/deploy/jboss-web.deployer/ROOT.war $JBOSS_HOME/server/default/deploy/jboss-web.deployer/ROOT.war.old
  2. I opened the $JBOSS_HOME/server/default/deploy/jboss-portal.sar/portal-server.war/WEB-INF/jboss-web.xml file, in an editor.
  3. I found the <context -root> tag and changed the vallue to be just a single forward slash character.

    <context-root>/</context-root>
  4. I saved the file and exited the editor.

Step 6 – Install MySQL
By default, JBoss Portal will use a Hypersonic database for all of its internal data. My environment will be a production environment, so I want to use something more robust.

  1. I Installed the MySQL binaries by using a normal RPM install

    $ rpm -ivh MySQL-server-community-5.1.34-0.rhel5.x86_64.rpm
    $ rpm -ivh MySQL-client-community-5.1.34-0.rhel5.x86_64.rpm

    The installation process started the mysqld service automatically. It also installed MySQL as a service automatically.

  2. I checked that it was running

    $ mysqladmin version
    mysqladmin Ver 8.42 Distrib 5.1.34, for unknown-linux-gnu on x86_64
    Copyright 2000-2008 MySQL AB, 2008 Sun Microsystems, Inc.
    This software comes with ABSOLUTELY NO WARRANTY. This is free software,
    and you are welcome to modify and redistribute it under the GPL license

    Server version 5.1.34-community
    Protocol version 10
    Connection Localhost via UNIX socket
    UNIX socket /var/lib/mysql/mysql.sock
    Uptime: 5 hours 29 min 16 sec

    Threads: 1 Questions: 5 Slow queries: 0 Opens: 15 Flush tables: 1 Open tables: 8 Queries per second avg: 0.0
    $

There are a lot of things you might want to do to a base MySQL install before putting it into production, but that is beyond the scope of this document. I would start with this link for some of the things you need to consider: http://dev.mysql.com/doc/refman/5.1/en/unix-post-installation.html

Step 7 – Point the Portal at MySQL

  1. I connected to the MySQL server running on localhost, as the current user (which happened to be root in my case).

    $ mysql
    Welcome to the MySQL monitor. Commands end with ; or g.
    Your MySQL connection id is 15
    Server version: 5.1.34-community MySQL Community Server (GPL)

    Type ‘help;’ or ‘h’ for help. Type ‘c’ to clear the current input statement.

    mysql>

  2. I created a Database instance for the Portal to use

    mysql> CREATE DATABASE jbossportal;
    Query OK, 1 row affected (0.00 sec)
  3. Then I created a user for the Portal to connect as

    mysql> CREATE USER ‘portal’@'localhost’ IDENTIFIED BY ‘portalpassword’;
    Query OK, 0 rows affected (0.00 sec)
  4. Then I granted all privileges for the jbossportal Database to the user I just created

    mysql> GRANT ALL ON jbossportal.* TO ‘portal’@'localhost’;
    Query OK, 0 rows affected (0.00 sec)

    At this point I quit the MySQL interpreter.

  5. Next, I untared the MySQL JDBC driver

    $ tar zxvf mysql-connector-java-5.1.7.tar.gz
  6. Then I copied the driver jar file to the $JBOSS_HOME/server/default/lib/ directory

    $ cp mysql-connector-java-5.1.7/mysql-connector-java-5.1.7-bin.jar $JBOSS_HOME/server/default/lib
  7. Next I disabled the original Hypersonic datasource

    $ mv $JBOSS_HOME/server/default/deploy/portal-hsqldb-ds.xml $JBOSS_HOME/server/default/deploy/portal-hsqldb-ds.xml.bak
  8. Then I deployed a datasource descriptor for MySQL. There is an example datasource descriptor in the JBoss Portal binary distribution

    $ cp $JBOSS_HOME/setup/portal-mysql5-ds.xml $JBOSS_HOME/server/default/deploy

    I double checked the username, password and database name settings in the file were correct

Step 9 – Check Your Work
Now I checked my handy work before moving on to the next step.

  1. I made the JBoss run script executable
    $ chmod +x $JBOSS_HOME/bin/run.sh
  2. Next I ran the script
    $ $JBOSS_HOME/bin/run.sh

    It will take a while but, eventually the server will finish booting.

  3. Now I hit the basic JBoss AS home page at this URL: http://myserver/ and made sure it looked OK.
  4. Then I hit the JBoss Portal page at this URL: http://myserver/portal and checked it as well.

If you have trouble accessing your URL, there could be an issue with the address that JBoss is listening on. This can be caused by various issues with your server setup (hostname, hosts file etc.). One quick thing to try is to pass -b 0.0.0.0 as an argument to the run.sh script – this tells JBoss to listen on all addresses, which might help you figure out where the issue is.

Step 10 – Setup JBoss Portal as a Service

  1. I opened the file $JBOSS_HOME/bin/jboss_init_redhat.sh in an editor.
  2. First I double checked the environment variables set at the top of the file (particularly JBOSS_HOME and JBOSS_USER) were correct.
  3. Then at the very top of the file, below the shebang line, I added the following 3 lines to make the script compatible with the chkconfig system

    # Comments to support chkconfig
    # chkconfig: 2345 80 40
    # description: JBoss Portal

    I saved the file and exited the editor.

  4. Then I made it executable

    $ chmod +x $JBOSS_HOME/bin/jboss_init_redhat.sh
  5. Next I linked the script into the init.d directory

    $ ln -s $JBOSS_HOME/bin/jboss_init_redhat.sh /etc/init.d/jboss
  6. Then I ran chkconfig to register the script for the correct run levels

    $ chkconfig –add jboss
  7. I then started the server by hand to double check my work and also just to get the server up and running without having to do a reboot

    $ service jboss start
  8. Then I hit the JBoss Portal page once again and checked that it came up properly

Step 11 – Have A Beer
It is always appropriate to reward yourself with a craft, micro-brewed or home-brewed beer!

Is JBoss Seam the death of Ruby on Rails?

Posted in: Enterprise Java

Just added my $0.02 worth to this discussion over in the IASA group on LinkedIn.

http://www.linkedin.com/groupAnswers?viewQuestionAndAnswers=&gid=1523&discussionID=1962973&sik=&trk=mywl_artile&goback=.mwg_*2_1