The JBoss AS Testsuite starts & stops multiple JBoss instances  The Server Controller Ant Tasks provide a mechanism for starting & stopping these server instances.




  • stderr & stdout logged to server/config/log/output.log and server/config/log/error.log.

  • A shutdown hook is registered with the VM to kill remaining jboss instances on shutdown.

  • If server does not respond to Shutdown request, the java.lang.Process is destroyed.

  • Supports nested java task arguments: jvmarg, arg, sysproperty

  • Core functionality is pure j2se code in test module; no dependencies on Ant or JBoss classes.


Quick Start Example


To use the tasks in the JBoss Testsuite:


1.  Add your server configuration to the <server:config> tag in testsuite/imports/server-config.xml

   <server:config javaHome="${env.JAVA_HOME}" jbossHome="${jboss.dist}">
      <server name="my-config" host="${node0}">
         <jvmarg value="${jpda.cmdline}" ></jvmarg>
         <jvmarg value="-Xmx128m" ></jvmarg>
         <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" ></sysproperty>


2. Call the server:start & server:stop tasks in testsuite/build.xml

   <target name="tests-my-config">
      <server:start name="my-config"></server:start>
      <!-- tests go here -->
      <server:stop name="my-config"></server:stop>


Task Documentation




Start a server with the given name.



  • name - the name of the server to run.





Start a server with the given name.



  • name - the name of the server to stop.




Defines the servers which are available to run.  There must be only one <server:config> per Ant project.



  • javaHome - which java installation to use.

  • jbossHome - which JBoss installation to use.

  • udpGroup - the value to pass as the -u option to JBoss.



  • 1..n <server> elements


<server> - defines the configuration to run, and any arguments to use when starting that configuration.  Must be inside a <server:config> element.



  • name - The name of the server.  Required value.

  • config - The server configuration to run.  This is the "-c" option you pass to  Defaults to the server name.

  • host - The hostname or IP address to bind to.  This is the "-b" option passed to  Defaults to localhost.

  • httpPort - Which port will tomcat listen to?  Defaults to 8080. 

  • hasWebServer - Does the server have a webserver configured?  Defaults to true.

  • rmiPort - Which port is RMI listening on?  Defaults to 1099.



  • 1..n <sysproperty> elements

  • 1..n <jvmarg> elements

  • 1..n <arg> elements



<sysproperty> - Defines a system property which is added to the command line when starting the server using the -Dname=value syntax.



  • key - the name of the system property.

  • value - the value of the system property.


<jvmarg - Arguments passed to Java, such as -Xmx



  • line - the argument to pass


<arg> - Arguments passed to JBoss



  • line - the argument to pass