Defining Custom Properties
The Axis plug-in also generates a unit test for your web service, but this
generated unit test needs to be customized. For example, the weather
SOAP service requires a latitude and longitude to work properly, and the
generated unit test uses an invalid value. You need to define a preGoal and postGoal on the axis:wsdl2java goal which copies the unit test to your src/test/java directory and excludes it from
axis:compile. Because you don't want
to overwrite your unit tests every time you run axis:wsdl2java, you need to define a custom
property, generate.tests.
How do I do that?
Define a generate.tests
property in your project.properties file which you will
reference in your preGoal and
postGoal. Add the following to
project.properties:
# Custom properties generate.tests = false
Now modify your preGoal and
postGoal in maven.xml to use this new variable to
overwrite unit tests only if generate.tests is set to true:
<preGoal name="axis:wsdl2java">
<j:if test="${context.getVariable('generate.tests') = = 'true'}">
<ant:delete dir="${pom.build.unitTestSourceDirectory}/gov"/>
</j:if>
</preGoal>
<postGoal name="axis:wsdl2java">
<maven:get var="axis.test" plugin="maven-axis-plugin"
property="maven.axis.test.dir"/>
<j:if test="${context.getVariable('generate.tests') = = 'true'}">
<ant:copy todir="${pom.build.unitTestSourceDirectory}">
<fileset dir="${ axis.test }"/>
</ant:copy>
</j:if>
<ant:delete dir="${maven.axis.test.dir}/gov"/>
</postGoal>When you execute maven ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access