You are viewing the documentation for Blueriq 17. Documentation for other versions is available in our documentation directory.

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

Compare with Current View Page History

« Previous Version 2 Next »

This document explains how to configure the maven plugin to generate metamodel classes from your Studio model.

Getting started

Create a Maven project with the following POM:

pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>org.mycustomer</groupId>
	<artifactId>myproject-metamodel</artifactId>
	<version>1.0-SNAPSHOT</version>
	<name>myproject-metamodel</name>
	<properties>
		<com.blueriq.version>10.0-SNAPSHOT</com.blueriq.version>
	</properties>
	<dependencies>
		<dependency>
			<groupId>com.blueriq</groupId>
			<artifactId>blueriq-sdk</artifactId>
			<version>${com.blueriq.version}</version>
		</dependency>
	</dependencies>
	<build>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.6.1</version>
				<configuration>
					<source>1.7</source>
					<target>1.7</target>
				</configuration>
			</plugin>
			<plugin>
				<groupId>com.blueriq</groupId>
				<artifactId>blueriq-metamodelgenerator-maven-plugin</artifactId>
				<version>${com.blueriq.version}</version>
				<executions>
					<execution>
						<phase>generate-sources</phase>
						<goals>
							<goal>generate-metamodel</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<connections>
						<studio>
							<repository>MyRepository</repository>
							<branch>Trunk</branch>
							<project>MyProject</project>
							<destdir>src/main/java</destdir>
							<packageName>org.mycustomer.myproject.metamodel</packageName>
							<url>http://SERVER:PORT/Studio/Server/Services/ManagementService</url>
							<authentication>BASIC</authentication>
							<domain />
							<userName></userName>
							<passWord></passWord>
							<exportProject>true</exportProject>
							<generatePOJOs>true</generatePOJOs>
							<generateRequiredMethods>true</generateRequiredMethods>
							<generateInstanceLocator>true</generateInstanceLocator>
 							<includeSystemEntityObjects>true<includeSystemEntityObjects> 
                        </studio>
						<offline>
							<applicationFile>${project.basedir}/MyProject.project.zip</applicationFile>
							<destdir>src/main/java</destdir>
							<packageName>org.mycustomer.myproject.metamodel</packageName>
							<generatePOJOs>true</generatePOJOs>
							<generateRequiredMethods>true</generateRequiredMethods>
							<generateInstanceLocator>true</generateInstanceLocator>
							<includeSystemEntityObjects>true<includeSystemEntityObjects>
                        </offline>
					</connections>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>


Configuration of the POM

You have to define the location of your Studio model(s) from which you will generate metamodel classes. The models can be retrieved directly from Studio or from an export. To define this, within the <connections> section you can add one or more <studio> (connection to Studio) or <offline> (export) connections.

Studio connection


ParameterDescriptionDefault value
repositoryName of the Blueriq repository
branchName of the Blueriq branch
projectName of the Blueriq project
destdirDestination directory where all the java classes are storedsrc/main/java
packageNameName of the base java package
urlURL of the Blueriq Studio management service
authenticationAuthentication method. Since R16 only BASIC is supportedBASIC
domainBlueriq domain (can be left blank)
userNameBlueriq username
passWordBlueriq password
exportProjectSet to true if you want to generate the Blueriq project exportfalse
exportProjectDir

Foldername to save the export

target
generatePOJOsSet to true if you want to generate the POJO class of a Blueriq Entityfalse
generateRequiredMethodsSet to true if you want to generate the getRequired<attribute> methodsfalse
generateInstanceLocatorSet to true if you want to use the InstanceLocator classfalse
includeSystemEntityObjectsSet to true if you want to add classes for system object like the system and user entityfalse


bold = required

Offline connection

This connection will pick up the given file name and presumes there is an export in it. It will then use the export to create the metamodel.


ParameterDescriptionDefault value
applicationFilePath of the export file${project.basedir}/MyProject.project.zip
destdirDestination directory where all the java classes are storedsrc/main/java
packageNameName of the base java package
generatePOJOsSet to true if you want to generate the POJO class of a Blueriq Entityfalse
generateRequiredMethodsSet to true if you want to generate the getRequired&tl;attribute> methodsfalse
generateInstanceLocatorSet to true if you want to use the InstanceLocator classfalse
includeSystemEntityObjectsSet to true if you want to add classes for system object like the system and user entityfalse


bold = required

  • No labels