This page documents the Maven based build that we use since jbossws-3.0.2. See the Mavenization page for details regarding configuring you Maven environment. The Ant based build of previous versions, is documented here.
Checkout and build JBossAS
For building JBoss AS 7 series, have a look at https://community.jboss.org/wiki/HackingOnAS7
For previous JBoss AS versions instead:
svn co http://anonsvn.jboss.org/repos/jbossas/trunk cd trunk build/build.sh
For more information, see SVNRepository
Run jboss
Before you start jboss, you should follow the deploy steps for a supported stack (see below).
Then start the application server using the scripts available for that.
Checkout and build JBossWS-CXF
svn co http://anonsvn.jboss.org/repos/jbossws/stack/cxf/trunk jbossws-cxf
For more information, see Subversion
Edit profiles.xml (JBossWS 3.x only)
<profile> <id>jboss-home-profile</id> <activation> <property> <name>user.name</name> </property> </activation> <properties> <jboss421.home>/home/tdiesler/svn/jbossas/tags/JBoss_4_2_1_GA/build/output/jboss-4.2.1.GA</jboss421.home> <jboss422.home>/home/tdiesler/svn/jbossas/tags/JBoss_4_2_2_GA/build/output/jboss-4.2.2.GA</jboss422.home> <jboss423.home>/home/tdiesler/svn/jbossas/branches/Branch_4_2/build/output/jboss-4.2.3.GA</jboss423.home> <jboss500.home>/home/tdiesler/svn/jbossas/tags/JBoss_5_0_0_Beta4/build/output/jboss-5.0.0.Beta4</jboss500.home> <jboss501.home>/home/tdiesler/svn/jbossas/trunk/build/output/jboss-5.0.0.CR1</jboss501.home> </properties> </profile>
- Starting from JBossWS 4, the build is supporting Maven 3, which made the use of profiles.xml deprecated.
- As a consequence of that, you should actually be providing the jbossXYZ.home property on the command line when invoking mvn.
Build/Deploy
To deploy jbossws-cxf 4.x or greater (Maven 3) you run (replace XYZ with the selected JBoss AS version):
cd jbossws-cxf ant -DjbossXYZ.home=<absolute-path-to-JBoss-AS-XYZ> deploy-jbossXYZ
To deploy jbossws-cxf 3.x (Maven 2) you run (replace XYZ with the selected JBoss AS version):
cd jbossws-cxf ant deploy-jbossXYZ
Starting from JBossWS-CXF 3.4.0 SpringFramework libraries are not installed by default. If you still want that you need to add the -Dspring=true option:
ant -Dspring=true deploy-jboss500
When jboss starts you should see something like
13:16:25,104 INFO [ServerImpl] Starting JBoss (Microcontainer)... 13:16:25,106 INFO [ServerImpl] Release ID: JBoss [Morpheus] 5.0.0.CR1 (build: SVNTag=JBoss_5_0_0_CR1 date=200805051004) ... 13:18:01,278 INFO [CXFServerConfig] JBoss Web Services - Stack CXF Runtime Client 13:18:01,279 INFO [CXFServerConfig] 3.0.2-SNAPSHOT ... 13:18:09,355 INFO [AjpProtocol] Starting Coyote AJP/1.3 on ajp-127.0.0.1-8009 13:18:09,389 INFO [ServerImpl] JBoss (Microcontainer) [5.0.0.CR1 (build: SVNTag=JBoss_5_0_0_CR1 date=200805051004)] Started in 1m:44s:270ms
Run the smoke tests
cd jbossws-cxf mvn -Psmoketest,jboss501 test
Starting from JBossWS 4, the integration testsuites have been moved to 'integration-test' maven phase. So you need to use:
mvn -Psmoketest,jbossXYZ -DjbossXYZ.home=path-to-jbossXYZ integration-test
You should expect to see no test failures. There might be a number of FIXME messages on the console. These are linked to open JIRA issues.
Tests that are known to fail should be excluded in the container specific exclude file. Note, if a test is excluded it is not even compiled and hence will not run in any of the ant test targets.
Checkout and build JBossWS-Native
svn co http://anonsvn.jboss.org/repos/jbossws/stack/native/trunk jbossws-native
For more information, see Subversion
Edit profiles.xml (JBossWS 3.x only)
<profile> <id>jboss-home-profile</id> <activation> <property> <name>user.name</name> </property> </activation> <properties> <jboss421.home>/home/tdiesler/svn/jbossas/tags/JBoss_4_2_1_GA/build/output/jboss-4.2.1.GA</jboss421.home> <jboss422.home>/home/tdiesler/svn/jbossas/tags/JBoss_4_2_2_GA/build/output/jboss-4.2.2.GA</jboss422.home> <jboss423.home>/home/tdiesler/svn/jbossas/branches/Branch_4_2/build/output/jboss-4.2.3.GA</jboss423.home> <jboss500.home>/home/tdiesler/svn/jbossas/tags/JBoss_5_0_0_Beta4/build/output/jboss-5.0.0.Beta4</jboss500.home> <jboss501.home>/home/tdiesler/svn/jbossas/trunk/build/output/jboss-5.0.0.CR1</jboss501.home> </properties> </profile>
- Starting from JBossWS 4, the build is supporting Maven 3, which made the use of profiles.xml deprecated.
- As a consequence of that, you should actually be providing the jbossXYZ.home property on the command line when invoking mvn.
Build/Deploy
To deploy jbossws-native you run:
cd jbossws-native ant deploy-jboss501
When jboss starts you should see something like
09:32:09,581 INFO [ServerImpl] Starting JBoss (Microcontainer)... 09:32:09,583 INFO [ServerImpl] Release ID: JBoss [Morpheus] 5.0.0.CR1 (build: SVNTag=JBoss_5_0_0_CR1 date=200805051004) ... 09:33:24,587 INFO [NativeServerConfig] JBoss Web Services - Stack Native Core 09:33:24,588 INFO [NativeServerConfig] 3.0.2-SNAPSHOT ... 09:33:32,318 INFO [AjpProtocol] Starting Coyote AJP/1.3 on ajp-127.0.0.1-8009 09:33:32,341 INFO [ServerImpl] JBoss (Microcontainer) [5.0.0.CR1 (build: SVNTag=JBoss_5_0_0_CR1 date=200805051004)] Started in 1m:22s:744ms
Run the smoke tests
cd jbossws-native mvn -Psmoketest,jboss501 test
You should expect to see no test failures. There might be a number of FIXME messages on the console. These are linked to open JIRA issues.
Starting from JBossWS 4, the integration testsuites have been moved to 'integration-test' maven phase. So you need to use:
mvn -Psmoketest,jboss710 -Djboss710.home=path-to-jboss710 integration-test
Comments