Example Usage

The japedo-maven-plugin in the executing application could be configured like this. Japedo documentation will be generated for the Petshop application installed on QA and on PRODUCTION environments. The japedo.jar is located in the src/test/resources directory. For security reasons the database connection parameters are given as placeholders:

                <profile>
                        <id>japedo</id>
                        <build>
                                <plugins>
                                        <plugin>
                                                <groupId>com.logitags</groupId>
                                                <artifactId>japedo-maven-plugin</artifactId>
                                                <version>1.5.1</version>
                                                <configuration>
                                                        <japedoDirectory>src\test\resources</japedoDirectory>
                                                        <proxyHost>127.0.0.1</proxyHost>
                                                        <proxyPort>57080</proxyPort>
                                                        <applications>
                                                                <application>
                                                                        <name>QA-Petshop-%version%</name>
                                                                        <includeSources>
                                                                                <includeSource>com.mycompany</includeSource>
                                                                                <includeSource>net.mycompany</includeSource>
                                                                        </includeSources>
                                                                        <additionalDependencies>
                                                                                <additionalDependency>com.h2database:h2:${h2.version}</additionalDependency>
                                                                                <additionalDependency>org.apache.tapestry:tapestry-core:5.3.8</additionalDependency>
                                                                                <additionalDependency>com.logitags:cibet-core:2.2.2</additionalDependency>
                                                                                <additionalDependency>org.jboss.weld:weld-api:4.0.SP1</additionalDependency>
                                                                                <additionalDependency>com.oracle:ojdbc8:12.2.0.1.0</additionalDependency>
                                                                        </additionalDependencies>
                                                                        <dbConnectionUrl>$dbConnectionUrl1</dbConnectionUrl>
                                                                        <dbDriverClassName>$dbDriverClassName1</dbDriverClassName>
                                                                        <dbPassword>$dbPassword1</dbPassword>
                                                                        <dbUsername>$dbUsername1</dbUsername>
                                                                        <dbSchema>$dbSchema1</dbSchema>
                                                                </application>
                                                                <application>
                                                                        <name>PROD-Petshop-$projectVersion2</name>
                                                                        <projectVersion>$projectVersion2</projectVersion>
                                                                        <includeSources>
                                                                                <includeSource>com.mycompany</includeSource>
                                                                                <includeSource>net.mycompany</includeSource>
                                                                        </includeSources>
                                                                        <additionalDependencies>
                                                                                <additionalDependency>com.h2database:h2:${h2.version}</additionalDependency>
                                                                                <additionalDependency>org.apache.tapestry:tapestry-core:5.3.8</additionalDependency>
                                                                                <additionalDependency>com.logitags:cibet-core:2.2.2</additionalDependency>
                                                                                <additionalDependency>org.jboss.weld:weld-api:4.0.SP1</additionalDependency>
                                                                                <additionalDependency>com.oracle:ojdbc8:12.2.0.1.0</additionalDependency>
                                                                        </additionalDependencies>
                                                                        <dbConnectionUrl>$dbConnectionUrl2</dbConnectionUrl>
                                                                        <dbDriverClassName>$dbDriverClassName2</dbDriverClassName>
                                                                        <dbPassword>$dbPassword2</dbPassword>
                                                                        <dbUsername>$dbUsername2</dbUsername>
                                                                        <dbSchema>$dbSchema2</dbSchema>
                                                                </application>
                                                        </applications>
                                                </configuration>
                                                <executions>
                                                        <execution>
                                                                <phase>compile</phase>
                                                                <goals>
                                                                        <goal>generate</goal>
                                                                </goals>
                                                        </execution>
                                                </executions>
                                        </plugin>
                                </plugins>
                        </build>
                </profile>

The POST /generate web service is called with the following configuration:

{
    "gitUrl": "https://gitlab.mycompany.com/petshop.git",
    "gitBranch":"feat/build/1.93",
    "username":"technical-user",
    "password":"mysecretpassword",
    "mavenProfile":"japedo",
    "gitPagesUrl":"https://gitlab.mycompany.com/petshop-japedo.git",
    "proxyHost":"proxy-cc.meshcore.net",
    "proxyPort":"3128",
    "mavenDebug": "true",
    "mavenSettings":"<?xml version=\"1.0\"?><settings xsi:schemaLocation=\"http://maven.apache.org/SETTINGS/1.1.0 http://maven.apache.org/xsd/settings-1.1.0.xsd\" xmlns=\"http://maven.apache.org/SETTINGS/1.1.0\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"><proxies><proxy><active>true</active><protocol>https</protocol><host>proxy-cc.meshcore.net</host><port>3128</port></proxy></proxies><servers><server><id>releases</id><username>techUser</username><password>secretPassword</password><configuration><wagonProvider>httpclient</wagonProvider><httpConfiguration><all><usePreemptive>true</usePreemptive></all></httpConfiguration></configuration></server><server><id>snapshots</id><username>techUser</username><password>secretPassword</password><configuration><wagonProvider>httpclient</wagonProvider><httpConfiguration><all><usePreemptive>true</usePreemptive></all></httpConfiguration></configuration></server><server><id>mycompany-nexus-group</id><username>techUser</username><password>secretPassword</password><configuration><wagonProvider>httpclient</wagonProvider><httpConfiguration><all><usePreemptive>true</usePreemptive></all></httpConfiguration></configuration></server></servers><mirrors><mirror><mirrorOf>*</mirrorOf><url>https://nexus.mycompany.com/repository/nexus-group</url><id>mycompany-nexus-group</id></mirror></mirrors><profiles><profile><id>nexus</id><repositories><repository><id>central</id><url>http://central</url></repository></repositories><pluginRepositories><pluginRepository><id>central</id><url>http://central</url></pluginRepository></pluginRepositories></profile></profiles><activeProfiles><activeProfile>nexus</activeProfile></activeProfiles></settings>",    
    "parameters":
                {
                        "dbUsername1":"pet",
                        "dbPassword1": "databasPassword",
                        "dbDriverClassName1": "oracle.jdbc.OracleDriver",
                        "dbConnectionUrl1": "jdbc:oracle:thin:@xspp12-scan.svc.core.net:1521",
                        "dbSchema1": "PET",

                        "dbUsername2":"pet-prod",
                        "dbPassword2": "databasePassword",
                        "dbDriverClassName2": "oracle.jdbc.OracleDriver",
                        "dbConnectionUrl2": "jdbc:oracle:thin:@xspp13-scan.svc.core.net:1521",
                        "dbSchema2": "PET_PROD",
                        "projectVersion2": "1.150.2"
                }
}