I got a great email from Tamás in response to my last post who pointed out that the straight copy of deploy.wsdd to server-config.wsdd doesn’t cut it. More importantly, he mentioned that there is a utility that ships with Axis that allows you to generate server-config.wsdd from your deploy.wsdd (or from multiple deploy.wsdd if you have multiple web service end points). From the command line it looks like this:
> java -cp axis.jar;jaxrpc.jar;commons-logging.jar;commons-discovery.jar;saaj.jar;
org.apache.axis.utils.Admin server dir1\deploy.wsdd dir2\deploy.wsdd
But if you’re using the Ant build.xml I provided in the previous example, you’d use this:
<java
classname="org.apache.axis.utils.Admin"
fork="true"
failonerror="true"
classpathref="compile.classpath"
dir="${basedir}\WEB-INF\">
<arg value="server" />
<arg file="${basedir}\deploy.wsdd" />
</java>
I updated the source code example (embeddedaxis.zip), you can download it here.
NOTE: The source code for the Admin class is available here, where you can see (but the documentation doesn’t mention) that the Admin class accepts multiple WSDD files from the command line.
Thanks for the tip. It was the last thing I needed to have my webservice generation fully automated with ant.