JBoss Application Server shipped in
Fedora makes it easy to run it as a system
service. So far you could launch only the
standalone mode, there was no easy
way to run it in the
domain mode. This is going to change.
If you're not familiar with the operating modes, I highly recommend you reading the introduction to it. In short, in domain mode you can launch more than one server on one host easily. But this is not everything – you get a single entry point for management for all these instances. This means that you can deploy applications one all instances by just executing one command!
There are many tools that use JMX connections which can be useful for debugging and performance tunning of your applications running on the JVM. The most used are JConsole (shipped with every JDK) and VisualVM (available to download on Oracle page).
But before I show how to connect them to JBoss AS we need to understand a few concepts.
Until now the webservices support was not available in the Fedora packaged JBoss AS. The main issue was the lack of CXF stack in Fedora. It took some time to make it available in an RPMified version since CXF is a pretty big project, with many submodules and a pretty nice dependency tree.
Currently in Fedora we have JBoss AS available in version
7.1.1.Final which requires CXF
2.4.6. This is a pretty old release. I decided to upgrade the CXF stack to the latest available release from the
2.6.x series. This triggered updating the
jbossws-* stack to newer versions than shipped with JBoss AS
7.1.1.Final. I did some tests and it seems that the components integrate with JBoss AS seamlessly. Either case please test your application with the new stack and report any bugs.
When you develop an application, sometimes you want to run it quickly and test it manually. Sometimes you want to execute some integration tests that require database access. In all of these cases you need a working database. Thanks to JPA providers we can generate the database schema based on the entity definitions. Let's quickly look at two of them: Hibernate and OpenJPA.
I'm sure you have used Hibernate before. Did you know that it has a nice feature that generates the schema in the database at application startup? You can additionally place any SQL statements you want to execute after the creation of the schema into file called