You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

This document only addresses how to configure pom.xml for generating java code based on a published web service wsdl during maven build. This is not a tutorial on how to use Maven.

PREREQUISITES

Before you begin, you must have the following:

  • an application certificate Java keystore.
    If you do not have an application certificate Java keystore, here are instructions on how to create an application certificate Java keystore.
  • a trusted server Java keystore.
    If you do not have a Trusted Server Java keystore, here are instrucitons on how to create a trusted server Java keystore.

1. The pom.xml configuration

To generate java code using the moiraws web service WSDL, use the Maven maven-antrun-plugin and place following xml statements within the <plugins> element of the Maven project's pom.xml:

    <properties>
        <moira.wsdl>https://ws-dev.mit.edu/moiraws/services/moira?wsdl</moira.wsdl>
        <server.truststore>${env.JAVA_KEYSTORES}/serverTrustStore.jks</server.truststore>
        <server.truststore.password>changeit</server.truststore.password>
        <server.truststore.type>jks</server.truststore.type>
        <client.keystore>${env.JAVA_KEYSTORES}/mapping.app.mit.edu.jks</client.keystore>
        <client.keystore.password>changeit</client.keystore.password>
        <client.keystore.type>jks</client.keystore.type>
    </properties>
       .
       .
       .
    <build>
       .
       .
       .
       <plugins>
           <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-antrun-plugin</artifactId>
               <executions>
                   <execution>
                       <id>generate java code for moira wsdl</id>
                       <phase>generate-sources</phase>
                       <configuration>
                           <tasks>
                               <property name="compile_classpath" refid="maven.compile.classpath" />
                               <echo message="moira.wsdl ${moira.wsdl}" />
                               <echo message="compile classpath: ${compile_classpath}" />
                               <java classname="org.apache.axis.wsdl.WSDL2Java" fork="true" classpathref="maven.compile.classpath" dir="src/main/java">
                                    <sysproperty key="javax.net.ssl.keyStore" value="${client.keystore}" />
                                    <sysproperty key="javax.net.ssl.keyStorePassword" value="${client.keystore.password}" />
                                    <sysproperty key="javax.net.ssl.keyStoreType" value="${client.keystore.type}" />
                                    <sysproperty key="javax.net.ssl.trustStore" value="${server.truststore}" />
                                    <sysproperty key="javax.net.ssl.trustStorePassword" value="${server.truststore.password}" />
                                    <sysproperty key="javax.net.ssl.trustStoreType" value="${server.truststore.type}" />
                                    <arg value="-v" />
                                    <arg value="-o${basedir}/src/main/java" />
                                    <arg value="${moira.wsdl}" />
                               </java>
                           </tasks>
                       </configuration>
                       <goals>
                           <goal>run</goal>
                       </goals>
                   </execution>
               <executions>
           </plugin>
       </plugins>
       .
       .
       .
    <build>
        

  Where in the above:

     Replace /path/to/keystore/<the name of your Trused Servers keystore>.jks with the path to and name of the Trusted Servers keystore.
     Replace /path/to/keystore/<the name of your Trused Servers keystore>.jks with the path to and name of the Applicaiton Certificate keystore.
     Replace <trustStorePassword> with the password for your <the name of your Trusted Servers keystore>.jks.
     Replace <clientKeystorePassword> with the password for your <the name of your Application Certificate keystore>.jks.

The above plug-in can be used to build the Java code for any of the ISDA supported web services. You only have to replace the property value of service.wsdl with any of the URL's shown below.

For example, if you wish to build the Java code for the uaws web service from the DSPS Production servers, change the line:

   <property name="service.wsdl" value="https://mapws.mit.edu/moiraws/services/moira?wsdl"/>

to:

   <property name="service.wsdl" value="https://mapws.mit.edu/uaws/services/ua?wsdl"/>

Note: with the above plug-in configuration, maven will generate java code during generate-source phase.

  • No labels