We are having our application deployed on JBoss AS 5.0.1. We have created two different server configurations from production profile. We customized the individual profiles:

  • One serving as ejbServer (all server-side components deployed say, EJB, JMS etc.)

  • Second is portalServer (it has a web application deployed on it). Now we are trying to deploy the same application on JBoss AS 7.

But as there is no production profile, directory structure, class-loading also changed.

How to achieve the same configuration with JBoss AS 7?

Indeed - Migration from JBoss AS 5.x to AS 7.x (EAP 6.x) is not a trivial task. You are dealing with migrating from JEE5 to JEE6, and with architectural changes in the appserver (classloading, configuration management, etc...)

There are few things that you need to inspect and create a plan for:

  • Do you use any external libraries in your app? How do you package them?
  • Do you use any JBoss libraries in your code? Are there any collisions with 3rd party libraries?
  • Do you have any JBoss AS5 specific references in your code, or just standard JavaEE API?
  • Do you use enterprise resources, such as jdbc datasources, jms connection factories, jms destinations, etc... So, you need to know how to configure these in JBossAS7/EAP6
  • Do you use embedded JMS messaging in JBoss AS5 or do you use an external MOM (e.g. WebSphereMQ, RabbitMQ, ActiveMQ, etc..)? JBoss AS7/EAP6 has a new JMS implementation called HornetQ, instead of the old JBoss Messaging.
  • How are you calling the EJBs from your web application? Do they live on the same JVM (JBoss instance) or not? (I would start with same JVM first, then separate it out later if necessary)
  • and many many other important questions ...

It might be good idea to work in stages - start with a single instance (standalone-full.xml) first, and then see how you can split that off to two JVM instances, once you master the configuration changes, etc.

As Phillippe mentioned, you configure profiles using different configuration directories and configuration files, e.g. standalone-full.xml is a JavaEE6 Full profile (implements the full JavaEE6 stack), standalone.xml is a JavaEE6 Web profile (doesn't have JMS, full EJB, etc..).

Once you are ready to configure multiple instances, you could just copy JBOSS_HOME/standalone directory to:


And then configure each instance individually, e.g.


You would start two instances with different commands, e.g.

$JBOSS_HOME/bin/standalone.sh -b -bmanagement --server-config=standalone.xml -Djboss.server.base.dir=portalServer -Djboss.socket.binding.port-offset=100
$JBOSS_HOME/bin/standalone.sh -b -bmanagement --server-config=standalone-full.xml Djboss.server.base.dir=ejbServer -Djboss.socket.binding.port-offset=200

Here are some links to read:

Also, Windup and WindRide might be very useful:

See the videos on Windup here:

Hope that gives you something to start with.

Good luck!

  • The OndraZizka/jboss-migration - WindRide project - is abandoned, to my regrets :) But there's Windup and AS 5 to EAP 7 config migration might get some coverage. No promises though. – Ondra Žižka Apr 29 '16 at 2:27
  • BTW, great answer! – Ondra Žižka Apr 29 '16 at 2:28

You create different standalone-*.xmlfiles in the standalone/configuration folder.

Having that said are you really sure you want to migrate to JBoss AS 7? It has a lot of bugs with fixes only available in either WildFly AS 8 or JBoss EAP 6.

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.