TIBCO JasperReports® Community Edition 7.1.0
This commit is contained in:
commit
bd0f0af6ce
Binary file not shown.
|
|
@ -0,0 +1,4 @@
|
||||||
|
TIBCO JasperReports® Server Community Edition
|
||||||
|
=============================================
|
||||||
|
|
||||||
|
TIBCO JasperReports® Server builds on TIBCO JasperReports® Library as a comprehensive family of Business Intelligence (BI) products, providing robust static and interactive reporting, report server, and data analysis capabilities. These capabilities are available as either stand-alone products, or as part of an integrated end-to-end BI suite utilizing common metadata and provide shared services, such as security, a repository, and scheduling. The server exposes comprehensive public interfaces enabling seamless integration with other applications and the capability to easily add custom functionality.
|
||||||
|
|
@ -0,0 +1,362 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!-- =============================================================== -->
|
||||||
|
<!-- Ant convention to copy config files to some target -->
|
||||||
|
<!-- Properties expected: -->
|
||||||
|
<!-- js-path: path to CE source dir -->
|
||||||
|
<!-- js-pro-path: path to Pro source dir (here) -->
|
||||||
|
<!-- target: where to copy the files -->
|
||||||
|
<!-- =============================================================== -->
|
||||||
|
|
||||||
|
<project name="ce-config" default="copy-config" basedir=".">
|
||||||
|
<description>Copy config file sets</description>
|
||||||
|
|
||||||
|
<taskdef resource="net/sf/antcontrib/antlib.xml"/>
|
||||||
|
|
||||||
|
<!-- define dependencies -->
|
||||||
|
<property name="ce.webapp.deps" value="ce.webapp, ce.common, ce.ftp"/>
|
||||||
|
<property name="ce.unit-test.deps" value="ce.unit-test, ce.common, ce.export-shared"/>
|
||||||
|
<property name="ce.esapi.deps" value="ce.common.esapi"/>
|
||||||
|
<property name="ce.api-impl.deps" value="ce.common.esapi"/>
|
||||||
|
<property name="ce.production-tests.deps" value="ce.production-tests, ce.common, ce.export-shared, ce.sso"/>
|
||||||
|
<property name="ce.export.deps" value="ce.export, ce.export-shared, ce.common"/>
|
||||||
|
|
||||||
|
<!-- define paths -->
|
||||||
|
<property name="ce.common.path" value="${js-path}/common/shared-config"/>
|
||||||
|
<property name="ce.common.esapi.path" value="${js-path}/common/shared-config/classes/esapi"/>
|
||||||
|
<property name="ce.webapp.path" value="${js-path}/jasperserver-war/shared-config"/>
|
||||||
|
<property name="ce.unit-test.path" value="${js-path}/jasperserver-unit-test/shared-config"/>
|
||||||
|
|
||||||
|
<property name="ce.production-tests.path" value="${js-path}/production-tests/shared-config"/>
|
||||||
|
<!-- 1/30/2013 - New functionality to copy single application context files from <module>'s to a classpath:
|
||||||
|
example - copy applicationContext-security-web.xml from jasperserver-war/shared-config to production-tests/target/target-classes-->
|
||||||
|
<property name="ce.production-tests.files" value="${js-path}/jasperserver-war/shared-config/applicationContext-security-web.xml"/>
|
||||||
|
|
||||||
|
<property name="ce.export.path" value="${js-path}/jasperserver-export-package/config"/>
|
||||||
|
<property name="ce.export-shared.path" value="${js-path}/jasperserver-export-package/shared-config"/>
|
||||||
|
<property name="ce.sso.path" value="${js-path}/samples/externalAuth-sample-config"/>
|
||||||
|
|
||||||
|
<property name="ce.ftp.path" value="${js-path}/jasperserver-ftp/shared-config"/>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
Comma-separated list of files with platform-specific values;
|
||||||
|
in buildomatic these are created in the build_conf/<cfg-name>/templates directory.
|
||||||
|
You have to set the platform-path property to point to them
|
||||||
|
-->
|
||||||
|
<property name="platform.files" value="js.jdbc.properties, js.quartz.properties, js.diagnostic.properties, js.aws.datasource.properties, js.externalAuth.properties, js.config.properties, relativedate.properties"/>
|
||||||
|
|
||||||
|
<target name="copy-config" description="copy config files for a specific module (requires target property to be set)">
|
||||||
|
<!-- lookup pathlist of deps for specified module -->
|
||||||
|
<propertycopy property="path-list" from="${module}.deps"/>
|
||||||
|
<process-config path-list="${path-list}"/>
|
||||||
|
<!-- after copy-deps, copy over the list of platform-specific files -->
|
||||||
|
<if>
|
||||||
|
<and>
|
||||||
|
<isset property="platform-path"/>
|
||||||
|
<or>
|
||||||
|
<not>
|
||||||
|
<isset property="exclude.platform.files"/>
|
||||||
|
</not>
|
||||||
|
<equals arg1="exclude.platform.files" arg2="false"/>
|
||||||
|
</or>
|
||||||
|
</and>
|
||||||
|
<then>
|
||||||
|
<copy toDir="${target}" overwrite="true" verbose="true">
|
||||||
|
<fileset dir="${platform-path}" includes="${platform.files}"/>
|
||||||
|
</copy>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="list-config">
|
||||||
|
<!-- lookup pathlist of deps for specified module -->
|
||||||
|
<propertycopy property="path-list" from="${module}.deps"/>
|
||||||
|
<process-config path-list="${path-list}" do-what="listfiles-relative"/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- list the modules available -->
|
||||||
|
<target name="list-modules">
|
||||||
|
<!-- get all "deps" properties -->
|
||||||
|
<propertyselector property="mod-list"
|
||||||
|
match="(.*)\.deps"
|
||||||
|
select="\1"/>
|
||||||
|
|
||||||
|
<!-- sort them, then list paths for each module -->
|
||||||
|
<sortlist property="sorted-mod-list" override="true" value="${mod-list}"/>
|
||||||
|
<for list="${sorted-mod-list}" param="mod">
|
||||||
|
<sequential>
|
||||||
|
<propertycopy property="deps" override="true" from="@{mod}.deps"/>
|
||||||
|
<echo message="Module @{mod} has these paths:"/>
|
||||||
|
<process-config path-list="${deps}" do-what="list"/>
|
||||||
|
</sequential>
|
||||||
|
</for>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="list-files">
|
||||||
|
<!-- grep? -->
|
||||||
|
<if>
|
||||||
|
<isset property="grep"/>
|
||||||
|
<then>
|
||||||
|
<property name="do" value="grep"/>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<property name="do" value="listfiles-full"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
<!-- get all "path" properties -->
|
||||||
|
<propertyselector property="path-list"
|
||||||
|
match="(.*)\.path$"
|
||||||
|
select="\1"/>
|
||||||
|
|
||||||
|
<!-- sort them, then list paths for each module -->
|
||||||
|
<sortlist property="sorted-path-list" override="true" value="${path-list}"/>
|
||||||
|
<for list="${sorted-path-list}" param="pathname">
|
||||||
|
<sequential>
|
||||||
|
<if>
|
||||||
|
<and>
|
||||||
|
<available file="${@{pathname}.path}"/>
|
||||||
|
<not>
|
||||||
|
<equals arg1="@{pathname}.path" arg2="sun.boot.library.path"/>
|
||||||
|
</not>
|
||||||
|
</and>
|
||||||
|
<then>
|
||||||
|
<echo level="debug" message="ok path @{pathname}.path: ${@{pathname}.path}"/>
|
||||||
|
<process-config path-list="@{pathname}" do-what="${do}"/>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<echo level="debug" message="weird path @{pathname}.path: ${@{pathname}.path}"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</sequential>
|
||||||
|
</for>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- this macro recurses over a path list (which can contain other path lists) and takes an action for each path.
|
||||||
|
"do-what" can take these values:
|
||||||
|
copy: copy files under the paths to ${target}
|
||||||
|
listfiles-relative: echo the file names relative to each path
|
||||||
|
listfiles-full: echo the full file names for each path
|
||||||
|
list: just echo the paths
|
||||||
|
-->
|
||||||
|
<macrodef name="process-config">
|
||||||
|
<attribute name="path-list"/>
|
||||||
|
<attribute name="do-what" default="copy"/>
|
||||||
|
<sequential>
|
||||||
|
<for list="@{path-list}" delimiter=", " param="path-name">
|
||||||
|
<sequential>
|
||||||
|
<if>
|
||||||
|
<isset property="@{path-name}.pathlist"/>
|
||||||
|
<then>
|
||||||
|
<!-- echo message="path list is ${@{path-name}.pathlist}"/ -->
|
||||||
|
<process-config path-list="${@{path-name}.pathlist}" do-what="@{do-what}"/>
|
||||||
|
</then>
|
||||||
|
<elseif>
|
||||||
|
<isset property="@{path-name}.path"/>
|
||||||
|
<then>
|
||||||
|
<var name="path" value="${@{path-name}.path}"/>
|
||||||
|
<if>
|
||||||
|
<equals arg1="@{do-what}" arg2="copy"/>
|
||||||
|
<then>
|
||||||
|
<!-- set copy-overwrite to default (can be set to false to just update new files) -->
|
||||||
|
<property name="copy-overwrite" value="true"/>
|
||||||
|
<copy toDir="${target}" overwrite="${copy-overwrite}">
|
||||||
|
<fileset dir="${path}"/>
|
||||||
|
</copy>
|
||||||
|
</then>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="@{do-what}" arg2="listfiles-relative"/>
|
||||||
|
<then>
|
||||||
|
<echo level="info" message=" ${path}"/>
|
||||||
|
<for param="file">
|
||||||
|
<fileset dir="${path}"/>
|
||||||
|
<sequential>
|
||||||
|
<var name="relpath" unset="true"/>
|
||||||
|
<pathconvert dirsep="/" property="relpath">
|
||||||
|
<file file="@{file}"/>
|
||||||
|
<filtermapper>
|
||||||
|
<replacestring from="\" to="/"/>
|
||||||
|
<replacestring from="${path}/" to=""/>
|
||||||
|
</filtermapper>
|
||||||
|
</pathconvert>
|
||||||
|
<echo message=" ${relpath}"/>
|
||||||
|
</sequential>
|
||||||
|
</for>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="@{do-what}" arg2="listfiles-full"/>
|
||||||
|
<then>
|
||||||
|
<echo level="info" message=" ${path}"/>
|
||||||
|
<for param="file">
|
||||||
|
<fileset dir="${path}"/>
|
||||||
|
<sequential>
|
||||||
|
<var name="fullpath" unset="true"/>
|
||||||
|
<pathconvert dirsep="/" property="fullpath">
|
||||||
|
<file file="@{file}"/>
|
||||||
|
<filtermapper>
|
||||||
|
<replacestring from="\" to="/"/>
|
||||||
|
</filtermapper>
|
||||||
|
</pathconvert>
|
||||||
|
<echo message=" ${fullpath}"/>
|
||||||
|
</sequential>
|
||||||
|
</for>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="@{do-what}" arg2="grep"/>
|
||||||
|
<then>
|
||||||
|
<for param="file">
|
||||||
|
<fileset dir="${path}"/>
|
||||||
|
<sequential>
|
||||||
|
<var name="matches" unset="true"/>
|
||||||
|
<loadresource property="matches">
|
||||||
|
<concat>
|
||||||
|
<path path="@{file}"/>
|
||||||
|
<filterchain>
|
||||||
|
<containsregex pattern="${grep}" flags="i"/>
|
||||||
|
<prefixlines prefix=" "/>
|
||||||
|
</filterchain>
|
||||||
|
</concat>
|
||||||
|
</loadresource>
|
||||||
|
<if>
|
||||||
|
<isset property="matches"/>
|
||||||
|
<then>
|
||||||
|
<echo message="@{file}:"/>
|
||||||
|
<echo message="${matches}"/>
|
||||||
|
<echo/>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
</sequential>
|
||||||
|
</for>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="@{do-what}" arg2="list"/>
|
||||||
|
<then>
|
||||||
|
<echo message=" ${path}"/>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
</if>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<else>
|
||||||
|
<fail message="Couldn't find path or pathlist for '@{path-name}'" />
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<!-- 1/30/2013 - New functionality to copy single application context files from <module>'s to a classpath:
|
||||||
|
example - copy applicationContext-security-web.xml from jasperserver-war/shared-config to production-tests/target/target-classes-->
|
||||||
|
<if>
|
||||||
|
<isset property="@{path-name}.files"/>
|
||||||
|
<then>
|
||||||
|
<var name="file-list" value="${@{path-name}.files}"/>
|
||||||
|
<if>
|
||||||
|
<equals arg1="@{do-what}" arg2="copy"/>
|
||||||
|
<then>
|
||||||
|
<for list="${file-list}" delimiter=", " param="file">
|
||||||
|
<sequential>
|
||||||
|
<copy file="@{file}" toDir="${target}" overwrite="true"/>
|
||||||
|
</sequential>
|
||||||
|
</for>
|
||||||
|
</then>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="@{do-what}" arg2="listfiles-relative"/>
|
||||||
|
<then>
|
||||||
|
<echo level="info" message=" ${file-list}"/>
|
||||||
|
|
||||||
|
<for list="${file-list}" delimiter=", " param="file">
|
||||||
|
<sequential>
|
||||||
|
<var name="relpath" unset="true"/>
|
||||||
|
<pathconvert dirsep="/" property="relpath">
|
||||||
|
<file file="@{file}"/>
|
||||||
|
<filtermapper>
|
||||||
|
<replacestring from="\" to="/"/>
|
||||||
|
<replaceregex pattern=".*/" replace=""/>
|
||||||
|
</filtermapper>
|
||||||
|
</pathconvert>
|
||||||
|
<echo message=" ${relpath}"/>
|
||||||
|
</sequential>
|
||||||
|
</for>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="@{do-what}" arg2="listfiles-full"/>
|
||||||
|
<then>
|
||||||
|
<echo level="info" message=" ${file-list}"/>
|
||||||
|
<for list="${file-list}" delimiter=", " param="file">
|
||||||
|
<sequential>
|
||||||
|
<var name="fullpath" unset="true"/>
|
||||||
|
<pathconvert dirsep="/" property="fullpath">
|
||||||
|
<file file="@{file}"/>
|
||||||
|
<filtermapper>
|
||||||
|
<replacestring from="\" to="/"/>
|
||||||
|
</filtermapper>
|
||||||
|
</pathconvert>
|
||||||
|
<echo message=" ${fullpath}"/>
|
||||||
|
</sequential>
|
||||||
|
</for>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="@{do-what}" arg2="grep"/>
|
||||||
|
<then>
|
||||||
|
<for list="${file-list}" delimiter=", " param="file">
|
||||||
|
<sequential>
|
||||||
|
<var name="matches" unset="true"/>
|
||||||
|
<loadresource property="matches">
|
||||||
|
<concat>
|
||||||
|
<path path="@{file}"/>
|
||||||
|
<filterchain>
|
||||||
|
<containsregex pattern="${grep}" flags="i"/>
|
||||||
|
<prefixlines prefix=" "/>
|
||||||
|
</filterchain>
|
||||||
|
</concat>
|
||||||
|
</loadresource>
|
||||||
|
<if>
|
||||||
|
<isset property="matches"/>
|
||||||
|
<then>
|
||||||
|
<echo message="@{file}:"/>
|
||||||
|
<echo message="${matches}"/>
|
||||||
|
<echo/>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
</sequential>
|
||||||
|
</for>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="@{do-what}" arg2="list"/>
|
||||||
|
<then>
|
||||||
|
<echo message=" ${path}"/>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
</if>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
<!-- 1/30/2013 -->
|
||||||
|
|
||||||
|
</sequential>
|
||||||
|
</for>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
|
||||||
|
</project>
|
||||||
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,814 @@
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<project xmlns:jacoco="antlib:org.jacoco.ant" name="code-coverage">
|
||||||
|
|
||||||
|
<taskdef uri="antlib:org.jacoco.ant" resource="org/jacoco/ant/antlib.xml">
|
||||||
|
<classpath path="${js-path}/buildomatic/install_resources/extra-jars/jacocoant.jar"/>
|
||||||
|
</taskdef>
|
||||||
|
|
||||||
|
<property name="cc.result.dir" location="${js-pro-path}/code-coverage/cc-report"/>
|
||||||
|
<property name="cc.result.file" location="${cc.result.dir}/jacoco-merged.exec"/>
|
||||||
|
|
||||||
|
<target name="__cc-info">
|
||||||
|
<echo level="info">Collecting jacoco*.exec files and building a coverage report</echo>
|
||||||
|
<echo level="info">Destination : ${cc.result.file}</echo>
|
||||||
|
<echo level="info">js-path : ${js-path}</echo>
|
||||||
|
<echo level="info">js-pro-path : ${js-pro-path}</echo>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="__cc-clean">
|
||||||
|
<delete dir="${cc.result.dir}"/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="__cc-collect-and-build-report" depends="__cc-info, __cc-clean, __cc-merge, __cc-report-by-module">
|
||||||
|
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="__cc-merge">
|
||||||
|
<!-- Merge collects all jacoco*.exec files, including ones generated by integration and production tests -->
|
||||||
|
<!-- Keep in mind, the default build-all does NOT trigger CE production-tests, i.e. coverage report will not include it -->
|
||||||
|
<jacoco:merge destfile="${cc.result.file}">
|
||||||
|
<fileset dir="${js-path}" includes="**/jacoco*.exec"/>
|
||||||
|
<fileset dir="${js-pro-path}" includes="**/jacoco*.exec"/>
|
||||||
|
</jacoco:merge>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="__cc-report">
|
||||||
|
<!-- This report will be structured by java packages across all the source code -->
|
||||||
|
<jacoco:report>
|
||||||
|
<executiondata>
|
||||||
|
<file file="${cc.result.file}"/>
|
||||||
|
</executiondata>
|
||||||
|
<!-- the class files and optional source files ... -->
|
||||||
|
<structure name="JasperReports Server Pro">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}">
|
||||||
|
<include name="**/target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
<fileset dir="${js-pro-path}">
|
||||||
|
<include name="**/target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}">
|
||||||
|
<include name="**/src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
<fileset dir="${js-pro-path}">
|
||||||
|
<include name="**/src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</structure>
|
||||||
|
<!-- to produce reports in different formats. -->
|
||||||
|
<html destdir="${cc.result.dir}"/>
|
||||||
|
<csv destfile="${cc.result.dir}/report.csv"/>
|
||||||
|
<xml destfile="${cc.result.dir}/report.xml"/>
|
||||||
|
</jacoco:report>
|
||||||
|
<echo level="info">Coverage Report is at folder : ${cc.result.dir}</echo>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="__cc-report-by-module">
|
||||||
|
<!-- This report will be structured by maven packages for CE and Pro. The grouping is manually specified -->
|
||||||
|
<!-- WARNING : If module structure changes, the grouping has to be updated!! -->
|
||||||
|
<!-- Module which don't have code are commented out below -->
|
||||||
|
<jacoco:report>
|
||||||
|
<executiondata>
|
||||||
|
<file file="${cc.result.file}"/>
|
||||||
|
</executiondata>
|
||||||
|
<!-- the class files and optional source files ... -->
|
||||||
|
<structure name="JasperReports Server Pro">
|
||||||
|
|
||||||
|
<!-- CE -->
|
||||||
|
|
||||||
|
<group name="ce:jasperserver-api/common">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-api/common">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-api/common">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="ce:jasperserver-api/engine">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-api/engine">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-api/engine">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="ce:jasperserver-api/externalAuth">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-api/externalAuth">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-api/externalAuth">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="ce:jasperserver-api/metadata">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-api/metadata">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-api/metadata">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="ce:jasperserver-api-impl/common">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-api-impl/common">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-api-impl/common">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="ce:jasperserver-api-impl/engine">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-api-impl/engine">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-api-impl/engine">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="ce:jasperserver-api-impl/externalAuth">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-api-impl/externalAuth">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-api-impl/externalAuth">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="ce:jasperserver-api-impl/metadata">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-api-impl/metadata">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-api-impl/metadata">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="ce:jasperserver-core-util">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-core-util">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-core-util">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<!--group name="ce:jasperserver-repository-hibernate">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-repository-hibernate">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-repository-hibernate">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group-->
|
||||||
|
|
||||||
|
<group name="ce:jasperserver-export-tool">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-export-tool">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-export-tool">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="ce:jasperserver-common-ws">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-common-ws">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-common-ws">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="ce:jasperserver-custom-datasources">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-custom-datasources">
|
||||||
|
<include name="target/classes/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-custom-datasources">
|
||||||
|
<include name="src/main/java/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="ce:jasperserver-war-jar">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-war-jar">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-war-jar">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<!--group name="ce:jasperserver-war">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-war">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-war">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group-->
|
||||||
|
|
||||||
|
<!--group name="ce:jasperserver-export-package">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-export-package">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-export-package">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group-->
|
||||||
|
|
||||||
|
<group name="ce:jasperserver-search">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-search">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-search">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="ce:jasperserver-remote">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-remote">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-remote">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<!-- Coverage for production tests will be included to respective modules results -->
|
||||||
|
<!--group name="ce:production-tests">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/production-tests">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/production-tests">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group-->
|
||||||
|
|
||||||
|
<group name="ce:jasperserver-jax-rs-rest">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-jax-rs-rest">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-jax-rs-rest">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="ce:jasperserver-dto">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-dto">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-dto">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="ce:jasperserver-util">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-util">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-util">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="ce:jasperserver-connectors/mongodb-connector">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-connectors/mongodb-connector">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-connectors/mongodb-connector">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="ce:jasperserver-ftp">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-path}/jasperserver-ftp">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-path}/jasperserver-ftp">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<!-- Pro -->
|
||||||
|
|
||||||
|
<group name="pro:common">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/common">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/common">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="pro:common-export">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/common-export">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/common-export">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="pro:mondrian-aop-woven">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/mondrian-aop-woven">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/mondrian-aop-woven">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="pro:jpivot-aop-woven">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/jpivot-aop-woven">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/jpivot-aop-woven">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="pro:license">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/license">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/license">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="pro:datarator">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/datarator">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/datarator">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="pro:datarator-el">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/datarator-el">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/datarator-el">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="pro:semantic-layer">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/semantic-layer">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/semantic-layer">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="pro:multi-tenancy">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/multi-tenancy">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/multi-tenancy">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="pro:analysis">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/analysis">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/analysis">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="pro:analysis-export">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/analysis-export">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/analysis-export">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="pro:adhoc-engine/adhoc-mocks">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/adhoc-engine/adhoc-mocks">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/adhoc-engine/adhoc-mocks">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="pro:adhoc-engine/adhoc-model">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/adhoc-engine/adhoc-model">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/adhoc-engine/adhoc-model">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="pro:adhoc-engine/adhoc-persistence">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/adhoc-engine/adhoc-persistence">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/adhoc-engine/adhoc-persistence">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="pro:gyroscope">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/gyroscope">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/gyroscope">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="pro:gyroscope-export">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/gyroscope-export">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/gyroscope-export">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="pro:report-options/api">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/report-options/api">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/report-options/api">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="pro:report-options/export">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/report-options/export">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/report-options/export">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="pro:report-options/web">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/report-options/web">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/report-options/web">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="pro:jasperserver-war-jar">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/jasperserver-war-jar">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/jasperserver-war-jar">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="pro:gyroscope-ireport-plugin">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/gyroscope-ireport-plugin">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/gyroscope-ireport-plugin">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<group name="pro:repository-hibernate">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/repository-hibernate">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/repository-hibernate">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<!--group name="pro:jasperserver-common-ws">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/jasperserver-common-ws">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/jasperserver-common-ws">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group-->
|
||||||
|
|
||||||
|
<group name="pro:search">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/search">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/search">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<!--group name="pro:jasperserver-war">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/jasperserver-war">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/jasperserver-war">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group-->
|
||||||
|
|
||||||
|
<!--group name="pro:export-tool">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/export-tool">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/export-tool">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group-->
|
||||||
|
|
||||||
|
<!-- Coverage for integration tests will be included to respective modules results -->
|
||||||
|
<!--group name="pro:integration-tests">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/integration-tests">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/integration-tests">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group-->
|
||||||
|
|
||||||
|
<group name="pro:jasperserver-remote">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/jasperserver-remote">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/jasperserver-remote">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
<!-- Coverage for production tests will be included to respective modules results -->
|
||||||
|
<!--group name="pro:production-tests">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/production-tests">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/production-tests">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group-->
|
||||||
|
|
||||||
|
<group name="pro:jasperserver-jax-rs-rest">
|
||||||
|
<classfiles>
|
||||||
|
<fileset dir="${js-pro-path}/jasperserver-jax-rs-rest">
|
||||||
|
<include name="target/classes/com/jaspersoft/**/*.class"/>
|
||||||
|
</fileset>
|
||||||
|
</classfiles>
|
||||||
|
<sourcefiles encoding="UTF-8">
|
||||||
|
<fileset dir="${js-pro-path}/jasperserver-jax-rs-rest">
|
||||||
|
<include name="src/main/java/com/jaspersoft/**/*.java"/>
|
||||||
|
</fileset>
|
||||||
|
</sourcefiles>
|
||||||
|
</group>
|
||||||
|
|
||||||
|
</structure>
|
||||||
|
<!-- to produce reports in different formats. -->
|
||||||
|
<html destdir="${cc.result.dir}"/>
|
||||||
|
<csv destfile="${cc.result.dir}/report.csv"/>
|
||||||
|
<xml destfile="${cc.result.dir}/report.xml"/>
|
||||||
|
</jacoco:report>
|
||||||
|
<echo level="info">Coverage Report is at folder : ${cc.result.dir}</echo>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
</project>
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
set EXP_CLASSPATH=%EXP_CLASSPATH%;%1
|
||||||
|
|
@ -0,0 +1,75 @@
|
||||||
|
@ECHO OFF
|
||||||
|
|
||||||
|
:: Windows NT 4 or later only
|
||||||
|
IF NOT "%OS%"=="Windows_NT" GOTO Syntax
|
||||||
|
:: No command line arguments required
|
||||||
|
IF NOT [%1]==[] GOTO Syntax
|
||||||
|
|
||||||
|
:: Keep variables local
|
||||||
|
SETLOCAL
|
||||||
|
|
||||||
|
:: Store current date in a variable in default Locale format
|
||||||
|
FOR /F "TOKENS=1* DELIMS= " %%A IN ('DATE/T') DO SET DATE=%%B
|
||||||
|
|
||||||
|
:: Store current date in a variable in YYYYMMDD format
|
||||||
|
:: Export registry settings to a temporary file
|
||||||
|
START /W REGEDIT /E %TEMP%.\_TEMP.REG "HKEY_CURRENT_USER\Control Panel\International"
|
||||||
|
:: Read the exported data
|
||||||
|
FOR /F "tokens=1* delims==" %%A IN ('TYPE %TEMP%.\_TEMP.REG ^| FIND /I "iDate"') DO SET iDate=%%B
|
||||||
|
FOR /F "tokens=1* delims==" %%A IN ('TYPE %TEMP%.\_TEMP.REG ^| FIND /I "sDate"') DO SET sDate=%%B
|
||||||
|
DEL %TEMP%.\_TEMP.REG
|
||||||
|
:: Remove quotes
|
||||||
|
SET iDate=%iDate:"=%
|
||||||
|
SET sDate=%sDate:"=%
|
||||||
|
|
||||||
|
:: Parse today's date depending on registry's date format settings
|
||||||
|
IF %iDate%==0 FOR /F "TOKENS=1-4* DELIMS=%sDate%" %%A IN ('DATE/T') DO (
|
||||||
|
SET Year=%%C
|
||||||
|
SET Month=%%A
|
||||||
|
SET Day=%%B
|
||||||
|
)
|
||||||
|
IF %iDate%==1 FOR /F "TOKENS=1-4* DELIMS=%sDate%" %%A IN ('DATE/T') DO (
|
||||||
|
SET Year=%%C
|
||||||
|
SET Month=%%B
|
||||||
|
SET Day=%%A
|
||||||
|
)
|
||||||
|
IF %iDate%==2 FOR /F "TOKENS=1-4* DELIMS=%sDate%" %%A IN ('DATE/T') DO (
|
||||||
|
SET Year=%%A
|
||||||
|
SET Month=%%B
|
||||||
|
SET Day=%%C
|
||||||
|
)
|
||||||
|
:: Remove the day of week if applicable
|
||||||
|
FOR %%A IN (%Year%) DO SET Year=%%A
|
||||||
|
FOR %%A IN (%Month%) DO SET Month=%%A
|
||||||
|
FOR %%A IN (%Day%) DO SET Day=%%A
|
||||||
|
|
||||||
|
:: Today's date in yyyy-MM-dd format
|
||||||
|
SET SortDate=%Year%-%Month%-%Day%
|
||||||
|
|
||||||
|
:: Done
|
||||||
|
ENDLOCAL & SET NOW_YYYY_MM_DD=%SortDate%
|
||||||
|
GOTO:EOF
|
||||||
|
|
||||||
|
:Syntax
|
||||||
|
ECHO.
|
||||||
|
ECHO Date utility for Windows NT 4 / 2000 / XP
|
||||||
|
ECHO Saves current date in yyyy-MM-dd format
|
||||||
|
ECHO to NOW_YYYY_MM_DD environment variable.
|
||||||
|
ECHO.
|
||||||
|
ECHO Prepared by Vladimir Tsukur on the basis of
|
||||||
|
ECHO SortDate batch script.
|
||||||
|
ECHO.
|
||||||
|
ECHO See below for original disclaimer notes:
|
||||||
|
ECHO.
|
||||||
|
ECHO -----------------------------------------------------------
|
||||||
|
ECHO SortDate, Version 3.10 for Windows NT 4 / 2000 / XP
|
||||||
|
ECHO Save date and "sorted" date in environment variables.
|
||||||
|
ECHO.
|
||||||
|
ECHO Usage: %0
|
||||||
|
ECHO.
|
||||||
|
ECHO This batch file will always display the same results,
|
||||||
|
ECHO independent of "International" settings.
|
||||||
|
ECHO.
|
||||||
|
ECHO Written by Rob van der Woude
|
||||||
|
ECHO http://www.robvanderwoude.com
|
||||||
|
ECHO Adapted for Windows XP with help from Kailash Chanduka
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,85 @@
|
||||||
|
@ECHO OFF
|
||||||
|
|
||||||
|
rem ///
|
||||||
|
rem /// JasperReports Server common installation script.
|
||||||
|
rem ///
|
||||||
|
rem /// Usage: do-js-install.bat {edition:(ce|pro)} {option:(<EMPTY>|minimal|drop-db|regen-config|test)}
|
||||||
|
rem ///
|
||||||
|
|
||||||
|
rem -----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
rem
|
||||||
|
rem Determining argument count.
|
||||||
|
rem
|
||||||
|
SET ARGUMENT_COUNT=0
|
||||||
|
FOR %%X IN (%*) DO SET /A ARGUMENT_COUNT+=1
|
||||||
|
|
||||||
|
rem
|
||||||
|
rem Validating and setting edition.
|
||||||
|
rem
|
||||||
|
SET JS_EDITION=%1
|
||||||
|
IF NOT "%JS_EDITION%"=="ce" IF NOT "%JS_EDITION%"=="pro" ( CALL :fail "JasperReports Server edition expected as input" )
|
||||||
|
|
||||||
|
rem
|
||||||
|
rem Validating argument count.
|
||||||
|
rem
|
||||||
|
IF %ARGUMENT_COUNT% GTR 2 ( CALL :fail "Too many arguments" )
|
||||||
|
|
||||||
|
rem
|
||||||
|
rem Choosing setup parameters depending on the given arguments.
|
||||||
|
rem
|
||||||
|
SET JS_OPTION=%2
|
||||||
|
IF "%JS_OPTION%" == "" ( GOTO :default )
|
||||||
|
IF %JS_OPTION% == minimal ( GOTO :minimal )
|
||||||
|
IF %JS_OPTION% == regen-config ( GOTO :regenConfig )
|
||||||
|
IF %JS_OPTION% == drop-db ( GOTO :dropDb )
|
||||||
|
IF %JS_OPTION% == test ( GOTO :test )
|
||||||
|
IF %JS_OPTION% == help ( GOTO :help )
|
||||||
|
CALL :fail "Invalid option specified"
|
||||||
|
EXIT /b 1
|
||||||
|
|
||||||
|
:default
|
||||||
|
SET JS_ANT_TARGET=install-normal-%JS_EDITION%
|
||||||
|
SET JS_OPTION=default
|
||||||
|
GOTO :proceedToSetup
|
||||||
|
|
||||||
|
:minimal
|
||||||
|
SET JS_ANT_TARGET=install-minimal-%JS_EDITION%
|
||||||
|
GOTO :proceedToSetup
|
||||||
|
|
||||||
|
:regenConfig
|
||||||
|
SET JS_ANT_TARGET=refresh-config
|
||||||
|
GOTO :proceedToSetup
|
||||||
|
|
||||||
|
:dropDb
|
||||||
|
SET JS_ANT_TARGET=drop-js-db
|
||||||
|
GOTO :proceedToSetup
|
||||||
|
|
||||||
|
:test
|
||||||
|
SET JS_ANT_TARGET=pre-install-test-%JS_EDITION%
|
||||||
|
GOTO :proceedToSetup
|
||||||
|
|
||||||
|
:help
|
||||||
|
TYPE bin\install.help
|
||||||
|
GOTO :end
|
||||||
|
|
||||||
|
rem
|
||||||
|
rem Calling core setup script with determined parameters.
|
||||||
|
rem
|
||||||
|
:proceedToSetup
|
||||||
|
CALL "%~dp0"do-js-setup.bat install %JS_EDITION% %JS_OPTION% %JS_ANT_TARGET%
|
||||||
|
GOTO :end
|
||||||
|
|
||||||
|
rem -----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
:showUsage
|
||||||
|
ECHO Please enter one of the following options: 'EMPTY', minimal, regen-config, drop-db, test
|
||||||
|
GOTO:EOF
|
||||||
|
|
||||||
|
:fail
|
||||||
|
IF NOT "%~1" == "" ( ECHO %~1 )
|
||||||
|
CALL :showUsage
|
||||||
|
EXIT /b 1
|
||||||
|
|
||||||
|
:end
|
||||||
|
EXIT /b 0
|
||||||
|
|
@ -0,0 +1,77 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
#
|
||||||
|
# JasperReports Server common installation script.
|
||||||
|
#
|
||||||
|
# Usage: do-js-install.sh {edition:(ce|pro)} {option:(<EMPTY>|minimal|drop-db|regen-config|test)}
|
||||||
|
#
|
||||||
|
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
fail() {
|
||||||
|
if [[ -n $1 ]]; then
|
||||||
|
echo $1
|
||||||
|
fi
|
||||||
|
showUsage
|
||||||
|
exit 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
showUsage() {
|
||||||
|
echo "Please enter one of the following options: <EMPTY>, minimal, regen-config, drop-db, test"
|
||||||
|
}
|
||||||
|
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#
|
||||||
|
# Validating and setting edition.
|
||||||
|
#
|
||||||
|
if [[ $# -lt 1 || "$1" != "ce" && "$1" != "pro" ]]; then
|
||||||
|
fail "JasperReports Server edition (ce|pro) expected as input"
|
||||||
|
fi
|
||||||
|
JS_EDITION=$1
|
||||||
|
|
||||||
|
#
|
||||||
|
# Choosing setup parameters depending on the given arguments.
|
||||||
|
#
|
||||||
|
if [ $# -gt 2 ]; then
|
||||||
|
fail "Too many arguments!"
|
||||||
|
else
|
||||||
|
JS_OPTION=$2
|
||||||
|
|
||||||
|
if [ "$JS_OPTION" == "" ]; then
|
||||||
|
JS_ANT_TARGET=install-normal-$JS_EDITION
|
||||||
|
JS_OPTION=default
|
||||||
|
else
|
||||||
|
case "$JS_OPTION" in
|
||||||
|
minimal)
|
||||||
|
JS_ANT_TARGET=install-minimal-$JS_EDITION
|
||||||
|
;;
|
||||||
|
|
||||||
|
regen-config)
|
||||||
|
JS_ANT_TARGET=refresh-config
|
||||||
|
;;
|
||||||
|
|
||||||
|
drop-db)
|
||||||
|
JS_ANT_TARGET=drop-js-db
|
||||||
|
;;
|
||||||
|
|
||||||
|
test)
|
||||||
|
JS_ANT_TARGET=pre-install-test-$JS_EDITION
|
||||||
|
;;
|
||||||
|
|
||||||
|
help)
|
||||||
|
cat ./bin/install.help
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
fail "Invalid option specified"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
#
|
||||||
|
# Calling core setup script with determined parameters.
|
||||||
|
#
|
||||||
|
./bin/do-js-setup.sh install $JS_EDITION $JS_OPTION $JS_ANT_TARGET
|
||||||
|
|
@ -0,0 +1,151 @@
|
||||||
|
@ECHO OFF
|
||||||
|
|
||||||
|
rem
|
||||||
|
rem JasperReports Server common installation and upgrade script.
|
||||||
|
rem
|
||||||
|
rem Usage: do-js-setup.bat (install|upgrade){setup mode} (ce|pro){edition} {script option} {Ant target} [Ant options]
|
||||||
|
rem
|
||||||
|
|
||||||
|
rem -----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
rem
|
||||||
|
rem Determining argument count.
|
||||||
|
rem
|
||||||
|
SET ARGUMENT_COUNT=0
|
||||||
|
FOR %%X IN (%*) DO SET /A ARGUMENT_COUNT+=1
|
||||||
|
|
||||||
|
rem
|
||||||
|
rem Validating arguments and setting internal variables.
|
||||||
|
rem
|
||||||
|
IF %ARGUMENT_COUNT% LSS 4 (
|
||||||
|
CALL :fail "Invalid argument count"
|
||||||
|
EXIT /b 1
|
||||||
|
)
|
||||||
|
IF %ARGUMENT_COUNT% GTR 8 (
|
||||||
|
CALL :fail "Invalid argument count"
|
||||||
|
EXIT /b 1
|
||||||
|
)
|
||||||
|
|
||||||
|
SET JS_SETUP_MODE=%1
|
||||||
|
IF NOT "%JS_SETUP_MODE%"=="install" IF NOT "%JS_SETUP_MODE%"=="upgrade" (
|
||||||
|
CALL :fail "Setup mode expected as input"
|
||||||
|
EXIT /b 1
|
||||||
|
)
|
||||||
|
|
||||||
|
SET JS_EDITION=%2
|
||||||
|
IF NOT "%JS_EDITION%"=="ce" IF NOT "%JS_EDITION%"=="pro" (
|
||||||
|
CALL :fail "JasperReports Server edition expected as input"
|
||||||
|
EXIT /b 1
|
||||||
|
)
|
||||||
|
|
||||||
|
SET JS_OPTION=%3
|
||||||
|
SET JS_ANT_TARGET=%4
|
||||||
|
|
||||||
|
SETLOCAL ENABLEDELAYEDEXPANSION
|
||||||
|
IF "%JS_SETUP_MODE%"=="upgrade" (
|
||||||
|
SET _JS_ANT_OPTIONS=-Dstrategy=%5
|
||||||
|
IF "%5"=="standard" IF NOT ""%6""=="""" (
|
||||||
|
SET _JS_ANT_OPTIONS=!_JS_ANT_OPTIONS! -DimportFile=%6
|
||||||
|
FOR %%X IN (%*) DO (
|
||||||
|
IF "%%X"=="include-access-events" ( SET _IMPORT_ARGS=--%%X !_IMPORT_ARGS!)
|
||||||
|
IF "%%X"=="include-server-settings" ( SET _IMPORT_ARGS=--%%X !_IMPORT_ARGS!)
|
||||||
|
)
|
||||||
|
IF NOT "!_IMPORT_ARGS!"=="" (
|
||||||
|
SET _JS_ANT_OPTIONS=!_JS_ANT_OPTIONS! -DimportArgs="!_IMPORT_ARGS!"
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
ENDLOCAL & SET JS_ANT_OPTIONS=%_JS_ANT_OPTIONS% -Djs.setup.mode=%JS_SETUP_MODE%
|
||||||
|
|
||||||
|
rem
|
||||||
|
rem Initializing time variable.
|
||||||
|
rem
|
||||||
|
CALL "%~dp0/date.bat"
|
||||||
|
CALL "%~dp0/time.bat"
|
||||||
|
SET JS_CURRENT_TIME=%NOW_YYYY_MM_DD%_%NOW_HH_MM%
|
||||||
|
|
||||||
|
rem
|
||||||
|
rem Defining log file name, creating log directory if it doesn't exist.
|
||||||
|
rem
|
||||||
|
SET /a JS_LOG_FILE_PREFIX=%RANDOM%+10000
|
||||||
|
SET JS_LOG_FILE=logs/js-%JS_SETUP_MODE%-%JS_EDITION%_%JS_CURRENT_TIME%_%JS_LOG_FILE_PREFIX%.log
|
||||||
|
IF NOT EXIST logs (
|
||||||
|
md logs
|
||||||
|
)
|
||||||
|
ECHO Writing to log file: %JS_LOG_FILE%
|
||||||
|
|
||||||
|
rem
|
||||||
|
rem Printing entry information.
|
||||||
|
rem
|
||||||
|
CALL :log
|
||||||
|
CALL :log "Running JasperReports Server %JS_SETUP_MODE% script at %JS_CURRENT_TIME%"
|
||||||
|
CALL :log
|
||||||
|
|
||||||
|
rem
|
||||||
|
rem Checking JAVA_HOME.
|
||||||
|
rem
|
||||||
|
if "%JAVA_HOME%"=="" (
|
||||||
|
CALL :log "WARNING: JAVA_HOME environment variable not found"
|
||||||
|
)
|
||||||
|
|
||||||
|
rem
|
||||||
|
rem Setting up Ant.
|
||||||
|
rem
|
||||||
|
|
||||||
|
CALL :log "[%JS_OPTION%]"
|
||||||
|
|
||||||
|
:initializeAntEnvironment
|
||||||
|
IF EXIST "..\apache-ant" ( GOTO :useBundledAnt )
|
||||||
|
CALL :log "Bundled Ant not found. Using existing Ant."
|
||||||
|
SET ANT_RUN=ant
|
||||||
|
GOTO :endAntSetup
|
||||||
|
|
||||||
|
:useBundledAnt
|
||||||
|
SET ANT_HOME=..\apache-ant
|
||||||
|
SET ANT_RUN=%ANT_HOME%\bin\ant
|
||||||
|
SET PATH=%PATH%;%ANT_HOME%\bin
|
||||||
|
|
||||||
|
:endAntSetup
|
||||||
|
|
||||||
|
rem
|
||||||
|
rem Running Ant.
|
||||||
|
rem
|
||||||
|
|
||||||
|
:runAnt
|
||||||
|
IF "%JS_ANT_TARGET%" == "" ( GOTO :antTargetNotSpecified )
|
||||||
|
CALL :log "Running %JS_ANT_TARGET% Ant task"
|
||||||
|
CALL :log
|
||||||
|
CALL %ANT_RUN% -nouserlib -f build.xml %JS_ANT_TARGET% %JS_ANT_OPTIONS% 2>&1 | "%~dp0/wtee" -a %JS_LOG_FILE%
|
||||||
|
|
||||||
|
IF ERRORLEVEL 1 ( GOTO :runAntFailed )
|
||||||
|
CALL :log "Checking Ant return code: OK"
|
||||||
|
CALL :log
|
||||||
|
GOTO :end
|
||||||
|
|
||||||
|
rem -----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
rem
|
||||||
|
rem Console + file logging subroutine.
|
||||||
|
rem
|
||||||
|
:log
|
||||||
|
SET JS_LOG_MESSAGE=
|
||||||
|
IF "%~1" == "" SET JS_LOG_MESSAGE=----------------------------------------------------------------------
|
||||||
|
IF NOT "%~1" == "" SET JS_LOG_MESSAGE=%~1
|
||||||
|
ECHO %JS_LOG_MESSAGE% | "%~dp0/wtee" -a %JS_LOG_FILE%
|
||||||
|
GOTO:EOF
|
||||||
|
|
||||||
|
:showUsage
|
||||||
|
ECHO Usage: ./do-js-setup.bat {setup mode} {edition} {script option} {Ant target} {Ant options}
|
||||||
|
GOTO:EOF
|
||||||
|
|
||||||
|
:fail
|
||||||
|
IF NOT "%~1" == "" ( ECHO %~1 )
|
||||||
|
CALL :showUsage
|
||||||
|
EXIT /b 1
|
||||||
|
|
||||||
|
:runAntFailed
|
||||||
|
CALL :log "Checking Ant return code: BAD (1)"
|
||||||
|
EXIT /b 1
|
||||||
|
|
||||||
|
:end
|
||||||
|
EXIT /b 0
|
||||||
|
|
@ -0,0 +1,150 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
#
|
||||||
|
# JasperReports Server common installation and upgrade script.
|
||||||
|
#
|
||||||
|
# Usage: do-js-setup.sh (install|upgrade){setup mode} (ce|pro){edition} {script option} {Ant target} [Ant options]
|
||||||
|
#
|
||||||
|
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
fail() {
|
||||||
|
if [[ -n $1 ]]; then
|
||||||
|
echo $1
|
||||||
|
fi
|
||||||
|
showUsage
|
||||||
|
exit 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
showUsage() {
|
||||||
|
echo "Usage: ./do-js-setup.sh (install|upgrade){setup mode} (ce|pro){edition} {script option} {Ant target} [Ant options]"
|
||||||
|
}
|
||||||
|
|
||||||
|
#
|
||||||
|
# Selects bundled or existing Ant.
|
||||||
|
#
|
||||||
|
initializeAntEnvironment() {
|
||||||
|
if test -d ../apache-ant
|
||||||
|
then
|
||||||
|
ANT_HOME=../apache-ant
|
||||||
|
export ANT_HOME
|
||||||
|
|
||||||
|
ANT_RUN=$ANT_HOME/bin/ant
|
||||||
|
export ANT_RUN
|
||||||
|
|
||||||
|
PATH=$ANT_HOME/bin:$PATH
|
||||||
|
export PATH
|
||||||
|
else
|
||||||
|
log "Bundled Ant not found. Using existing Ant."
|
||||||
|
|
||||||
|
ANT_RUN=ant
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
#
|
||||||
|
# Runs Ant.
|
||||||
|
#
|
||||||
|
runAnt() {
|
||||||
|
targetName=$1
|
||||||
|
shift
|
||||||
|
options=$@
|
||||||
|
|
||||||
|
if [ "$targetName" != "" ]; then
|
||||||
|
log "Running $targetName Ant task."
|
||||||
|
log
|
||||||
|
|
||||||
|
$ANT_RUN --noconfig -nouserlib -f build.xml $targetName $options 2>&1 | tee -a $JS_LOG_FILE
|
||||||
|
antReturnCode=$?
|
||||||
|
|
||||||
|
antReturnCodeMessage="Checking Ant return code:"
|
||||||
|
if [ $antReturnCode -ne 0 ]; then
|
||||||
|
log "$antReturnCodeMessage BAD ($antReturnCode)"
|
||||||
|
exit 1;
|
||||||
|
else
|
||||||
|
log "$antReturnCodeMessage OK"
|
||||||
|
fi
|
||||||
|
|
||||||
|
else
|
||||||
|
log "Name of Ant target not specified."
|
||||||
|
exit 1;
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
#
|
||||||
|
# Console + file logging subroutine.
|
||||||
|
#
|
||||||
|
log() {
|
||||||
|
if [ "$1" == "" ]; then
|
||||||
|
JS_OUT_STR="----------------------------------------------------------------------"
|
||||||
|
else
|
||||||
|
JS_OUT_STR=$1
|
||||||
|
fi
|
||||||
|
echo $JS_OUT_STR | tee -a $JS_LOG_FILE
|
||||||
|
}
|
||||||
|
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#
|
||||||
|
# Validating arguments and setting internal variables.
|
||||||
|
#
|
||||||
|
|
||||||
|
if [[ $# -lt 4 || $# -gt 8 ]]; then
|
||||||
|
fail "Invalid argument count"
|
||||||
|
fi
|
||||||
|
|
||||||
|
JS_SETUP_MODE=$1
|
||||||
|
if [[ "$JS_SETUP_MODE" != "install" && "$JS_SETUP_MODE" != "upgrade" ]]; then
|
||||||
|
fail "Setup mode (install|upgrade) expected as input"
|
||||||
|
fi
|
||||||
|
|
||||||
|
JS_EDITION=$2
|
||||||
|
if [[ "$JS_EDITION" != "ce" && "$JS_EDITION" != "pro" ]]; then
|
||||||
|
fail "JasperReports Server edition (ce|pro) expected as input"
|
||||||
|
fi
|
||||||
|
|
||||||
|
JS_OPTION=$3
|
||||||
|
JS_ANT_TARGET=$4
|
||||||
|
JS_ANT_OPTIONS="$5 $6 $7 $8 -Djs.setup.mode=$JS_SETUP_MODE -Djava.net.preferIPv4Stack=true"
|
||||||
|
|
||||||
|
#
|
||||||
|
# Initializing time variable.
|
||||||
|
#
|
||||||
|
JS_CURRENT_TIME=`date +%Y-%m-%d_%H-%M`
|
||||||
|
|
||||||
|
#
|
||||||
|
# Defining log file name, creating log directory if it doesn't exist.
|
||||||
|
#
|
||||||
|
JS_LOG_FILE_SUFFIX=$(($RANDOM + 10000))
|
||||||
|
JS_LOG_FILE=logs/js-$JS_SETUP_MODE-$JS_EDITION\_$JS_CURRENT_TIME-$JS_LOG_FILE_SUFFIX.log
|
||||||
|
if [ ! -d logs ]; then
|
||||||
|
mkdir -p logs
|
||||||
|
fi
|
||||||
|
echo "Writing to log file: $JS_LOG_FILE"
|
||||||
|
|
||||||
|
#
|
||||||
|
# Printing entry information.
|
||||||
|
#
|
||||||
|
log
|
||||||
|
log "Running JasperReports Server $JS_SETUP_MODE script at $JS_CURRENT_TIME"
|
||||||
|
log
|
||||||
|
|
||||||
|
export ANT_OPTS="$ANT_OPTS -Dnet.sf.ehcache.disabled=true -Xms512m -Xmx2048m"
|
||||||
|
|
||||||
|
log
|
||||||
|
log "Using ANT_OPTS: $ANT_OPTS"
|
||||||
|
log
|
||||||
|
|
||||||
|
#
|
||||||
|
# Checking JAVA_HOME.
|
||||||
|
#
|
||||||
|
if [ "$JAVA_HOME" == "" ]; then
|
||||||
|
log "WARNING: JAVA_HOME environment variable not found"
|
||||||
|
fi
|
||||||
|
|
||||||
|
#
|
||||||
|
# Running Ant.
|
||||||
|
#
|
||||||
|
log "[$JS_OPTION]"
|
||||||
|
initializeAntEnvironment
|
||||||
|
runAnt $JS_ANT_TARGET $JS_ANT_OPTIONS
|
||||||
|
log
|
||||||
|
|
@ -0,0 +1,185 @@
|
||||||
|
@ECHO OFF
|
||||||
|
|
||||||
|
rem ///
|
||||||
|
rem /// JasperReports Server common upgrade script.
|
||||||
|
rem ///
|
||||||
|
rem /// Usage: do-js-upgrade.bat {edition:(ce|pro)} {strategy:(standard|inDatabase)} {option:(<EMPTY>|with-samples|regen-config|test)} {option(for standard upgrade only):import file(<path-to-file-and-filename>)}
|
||||||
|
rem /// If <path-to-file-and-filename> contains spaces then need to enclose <path-to-file-and-filename> to double quotes.
|
||||||
|
rem ///
|
||||||
|
|
||||||
|
rem -----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
rem
|
||||||
|
rem Determining argument count.
|
||||||
|
rem
|
||||||
|
SET ARGUMENT_COUNT=0
|
||||||
|
FOR %%X IN (%*) DO SET /A ARGUMENT_COUNT+=1
|
||||||
|
|
||||||
|
rem
|
||||||
|
rem Validating and setting edition.
|
||||||
|
rem
|
||||||
|
SET JS_EDITION=%1
|
||||||
|
IF NOT "%JS_EDITION%"=="ce" IF NOT "%JS_EDITION%"=="pro" (
|
||||||
|
CALL :fail "JasperReports Server edition expected as input"
|
||||||
|
EXIT /b 1
|
||||||
|
)
|
||||||
|
|
||||||
|
rem
|
||||||
|
rem Validating and setting upgrade strategy.
|
||||||
|
rem
|
||||||
|
SET JS_UPGRADE_STRATEGY=%2
|
||||||
|
IF NOT "%JS_UPGRADE_STRATEGY%"=="standard" IF NOT "%JS_UPGRADE_STRATEGY%"=="inDatabase" (
|
||||||
|
CALL :fail "JasperReports Server upgrade strategy expected as input"
|
||||||
|
EXIT /b 1
|
||||||
|
)
|
||||||
|
|
||||||
|
rem
|
||||||
|
rem Validating argument count.
|
||||||
|
rem
|
||||||
|
IF "%JS_UPGRADE_STRATEGY%"=="standard" (
|
||||||
|
IF %ARGUMENT_COUNT% GTR 5 (
|
||||||
|
CALL :fail "Too many arguments"
|
||||||
|
EXIT /b 1
|
||||||
|
)
|
||||||
|
IF %ARGUMENT_COUNT% LSS 3 (
|
||||||
|
CALL :fail "Invalid argument count"
|
||||||
|
EXIT /b 1
|
||||||
|
)
|
||||||
|
)
|
||||||
|
IF "%JS_UPGRADE_STRATEGY%"=="inDatabase" IF %ARGUMENT_COUNT% GTR 3 (
|
||||||
|
CALL :fail "Too many arguments"
|
||||||
|
EXIT /b 1
|
||||||
|
)
|
||||||
|
|
||||||
|
SET JS_OPTION=%~3
|
||||||
|
SET IMPORT_FILE=%~4
|
||||||
|
SET IS_INCLUDE_ACCESS_EVENTS=FALSE
|
||||||
|
SET IS_INCLUDE_SERVER_SETTINGS=FALSE
|
||||||
|
IF ""%JS_UPGRADE_STRATEGY%""==""standard"" (
|
||||||
|
SET IS_INCLUDE_SERVER_SETTINGS=TRUE
|
||||||
|
IF ""%3""==""include-access-events"" (
|
||||||
|
SET IS_INCLUDE_ACCESS_EVENTS=TRUE
|
||||||
|
SET JS_OPTION=%~4
|
||||||
|
SET IMPORT_FILE=%~5
|
||||||
|
)
|
||||||
|
IF ""%4""==""include-access-events"" (
|
||||||
|
SET IS_INCLUDE_ACCESS_EVENTS=TRUE
|
||||||
|
SET JS_OPTION=%~3
|
||||||
|
SET IMPORT_FILE=%~5
|
||||||
|
)
|
||||||
|
IF ""%5""==""include-access-events"" (
|
||||||
|
SET IS_INCLUDE_ACCESS_EVENTS=TRUE
|
||||||
|
SET JS_OPTION=%~3
|
||||||
|
SET IMPORT_FILE=%~4
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
SET IS_INVALID_JS_OPTION_VALUE=FALSE
|
||||||
|
IF NOT ""%JS_OPTION%""==""with-samples"" IF NOT ""%JS_OPTION%""==""regen-config"" IF NOT ""%JS_OPTION%""==""test"" IF NOT ""%JS_OPTION%""==""help"" (
|
||||||
|
SET IS_INVALID_JS_OPTION_VALUE=TRUE
|
||||||
|
)
|
||||||
|
|
||||||
|
SET IS_INVALID_PARAM_VALUE=FALSE
|
||||||
|
IF NOT ""%IMPORT_FILE%""==""with-samples"" IF NOT ""%IMPORT_FILE%""==""regen-config"" IF NOT ""%IMPORT_FILE%""==""test"" IF NOT ""%IMPORT_FILE%""==""help"" (
|
||||||
|
SET IS_INVALID_PARAM_VALUE=TRUE
|
||||||
|
)
|
||||||
|
|
||||||
|
SET IMPORT_FILE2=%IMPORT_FILE%
|
||||||
|
IF "%JS_UPGRADE_STRATEGY%"=="standard" (
|
||||||
|
IF ""%IMPORT_FILE%""=="""" (
|
||||||
|
IF "%IS_INVALID_JS_OPTION_VALUE%"=="TRUE" (
|
||||||
|
SET IMPORT_FILE=%JS_OPTION%
|
||||||
|
SET JS_OPTION=
|
||||||
|
) ELSE (
|
||||||
|
IF NOT ""%JS_OPTION%""==""regen-config"" IF NOT ""%JS_OPTION%""==""test"" IF NOT ""%JS_OPTION%""==""help"" (
|
||||||
|
CALL :fail "JasperReports Server import file[path-to-file-and-filename] expected as input"
|
||||||
|
EXIT /b 1
|
||||||
|
)
|
||||||
|
)
|
||||||
|
) ELSE (
|
||||||
|
IF "%IS_INVALID_JS_OPTION_VALUE%"=="TRUE" (
|
||||||
|
IF "%IS_INVALID_PARAM_VALUE%"=="TRUE" (
|
||||||
|
CALL :fail "Invalid option specified"
|
||||||
|
EXIT /b 1
|
||||||
|
) ELSE (
|
||||||
|
SET IMPORT_FILE=%JS_OPTION%
|
||||||
|
SET JS_OPTION=%IMPORT_FILE2%
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
IF ""%JS_UPGRADE_STRATEGY%""==""standard"" IF NOT ""%JS_OPTION%""==""regen-config"" IF NOT ""%JS_OPTION%""==""test"" IF NOT ""%JS_OPTION%""==""help"" IF "%IMPORT_FILE%"=="" (
|
||||||
|
CALL :fail "JasperReports Server import file[path-to-file-and-filename] expected as input"
|
||||||
|
EXIT /b 1
|
||||||
|
)
|
||||||
|
|
||||||
|
IF ""%JS_OPTION%""=="""" ( GOTO :default )
|
||||||
|
IF ""%JS_OPTION%""==""with-samples"" ( GOTO :withSamples )
|
||||||
|
IF ""%JS_OPTION%""==""regen-config"" ( GOTO :regenConfig )
|
||||||
|
IF ""%JS_OPTION%""==""test"" ( GOTO :test )
|
||||||
|
IF ""%JS_OPTION%""==""help"" ( GOTO :help )
|
||||||
|
CALL :fail "Invalid option specified"
|
||||||
|
EXIT /b 1
|
||||||
|
|
||||||
|
:default
|
||||||
|
SET JS_ANT_TARGET=upgrade-minimal-%JS_EDITION%
|
||||||
|
SET JS_OPTION=default
|
||||||
|
GOTO :proceedToSetup
|
||||||
|
|
||||||
|
:withSamples
|
||||||
|
SET JS_ANT_TARGET=upgrade-normal-%JS_EDITION%
|
||||||
|
GOTO :proceedToSetup
|
||||||
|
|
||||||
|
:regenConfig
|
||||||
|
SET JS_ANT_TARGET=refresh-config
|
||||||
|
GOTO :proceedToSetup
|
||||||
|
|
||||||
|
:test
|
||||||
|
SET JS_ANT_TARGET=pre-upgrade-test-%JS_EDITION%
|
||||||
|
GOTO :proceedToSetup
|
||||||
|
|
||||||
|
:help
|
||||||
|
IF "%JS_UPGRADE_STRATEGY%"=="standard" ( TYPE bin\upgrade-newdb.help )
|
||||||
|
IF "%JS_UPGRADE_STRATEGY%"=="inDatabase" ( TYPE bin\upgrade-samedb.help )
|
||||||
|
GOTO :end
|
||||||
|
|
||||||
|
rem
|
||||||
|
rem Calling core setup script with determined parameters.
|
||||||
|
rem
|
||||||
|
:proceedToSetup
|
||||||
|
SETLOCAL ENABLEDELAYEDEXPANSION
|
||||||
|
SET _JS_ANT_OPTIONS=
|
||||||
|
IF "%IMPORT_FILE%"=="" (
|
||||||
|
SET _JS_ANT_OPTIONS=!JS_UPGRADE_STRATEGY!
|
||||||
|
) ELSE (
|
||||||
|
SET _JS_ANT_OPTIONS=!JS_UPGRADE_STRATEGY! "!IMPORT_FILE!"
|
||||||
|
)
|
||||||
|
IF "%JS_UPGRADE_STRATEGY%"=="standard" (
|
||||||
|
IF "%IS_INCLUDE_ACCESS_EVENTS%"=="TRUE" (
|
||||||
|
SET _JS_ANT_OPTIONS=!_JS_ANT_OPTIONS! include-access-events
|
||||||
|
)
|
||||||
|
IF "%IS_INCLUDE_SERVER_SETTINGS%"=="TRUE" (
|
||||||
|
SET _JS_ANT_OPTIONS=!_JS_ANT_OPTIONS! include-server-settings
|
||||||
|
)
|
||||||
|
)
|
||||||
|
ENDLOCAL & SET JS_ANT_OPTIONS=%_JS_ANT_OPTIONS%
|
||||||
|
CALL "%~dp0"do-js-setup.bat upgrade %JS_EDITION% %JS_OPTION% %JS_ANT_TARGET% %JS_ANT_OPTIONS%
|
||||||
|
GOTO :end
|
||||||
|
|
||||||
|
rem -----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
:showUsage
|
||||||
|
ECHO Please enter one of the following options: 'EMPTY', with-samples, regen-config, test
|
||||||
|
IF "%JS_UPGRADE_STRATEGY%"=="standard" (
|
||||||
|
ECHO "Also enter import file option(<path-to-file-and-filename>). If <path-to-file-and-filename> contains spaces then need to enclose <path-to-file-and-filename> to double quotes."
|
||||||
|
)
|
||||||
|
GOTO:EOF
|
||||||
|
|
||||||
|
:fail
|
||||||
|
IF NOT "%~1" == "" ( ECHO %~1 )
|
||||||
|
CALL :showUsage
|
||||||
|
EXIT /b 1
|
||||||
|
|
||||||
|
:end
|
||||||
|
EXIT /b 0
|
||||||
|
|
@ -0,0 +1,160 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
#
|
||||||
|
# JasperReports Server common upgrade script.
|
||||||
|
#
|
||||||
|
# Usage: do-js-upgrade.sh {edition:(ce|pro)} {strategy:(standard|inDatabase)} {option:(<EMPTY>|with-samples|regen-config|test)} {option(for standard upgrade only):import file(-DimportFile=<path-to-file-and-filename>)}
|
||||||
|
#
|
||||||
|
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
fail() {
|
||||||
|
if [[ -n $1 ]]; then
|
||||||
|
echo $1
|
||||||
|
fi
|
||||||
|
showUsage
|
||||||
|
exit 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
showUsage() {
|
||||||
|
echo "Please enter one of the following options: <EMPTY>, with-samples, regen-config, test"
|
||||||
|
}
|
||||||
|
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#
|
||||||
|
# Validating and setting edition.
|
||||||
|
#
|
||||||
|
if [[ $# -lt 1 || "$1" != "ce" && "$1" != "pro" ]]; then
|
||||||
|
fail "JasperReports Server edition (ce|pro) expected as input"
|
||||||
|
fi
|
||||||
|
JS_EDITION=$1
|
||||||
|
|
||||||
|
#
|
||||||
|
# Validating and setting upgrade strategy.
|
||||||
|
#
|
||||||
|
if [[ $# -lt 2 || "$2" != "standard" && "$2" != "inDatabase" ]]; then
|
||||||
|
fail "JasperReports Server upgrade strategy (standard|inDatabase) expected as input"
|
||||||
|
fi
|
||||||
|
JS_UPGRADE_STRATEGY=$2
|
||||||
|
|
||||||
|
#
|
||||||
|
# Choosing setup parameters depending on the given arguments.
|
||||||
|
#
|
||||||
|
if [[ "$JS_UPGRADE_STRATEGY" == "standard" && $# -gt 5 || "$JS_UPGRADE_STRATEGY" == "inDatabase" && $# -gt 3 ]]; then
|
||||||
|
fail "Too many arguments!"
|
||||||
|
else
|
||||||
|
JS_OPTION=$3
|
||||||
|
IMPORT_FILE=$4
|
||||||
|
IS_INCLUDE_SERVER_SETTINGS=false
|
||||||
|
if [[ "$JS_UPGRADE_STRATEGY" == "standard" ]]; then
|
||||||
|
IS_INCLUDE_ACCESS_EVENTS=false
|
||||||
|
IS_INCLUDE_SERVER_SETTINGS=true
|
||||||
|
if [[ "$3" == "include-access-events" ]]; then
|
||||||
|
IS_INCLUDE_ACCESS_EVENTS=true
|
||||||
|
JS_OPTION=$4
|
||||||
|
IMPORT_FILE=$5
|
||||||
|
elif [[ "$4" == "include-access-events" ]]; then
|
||||||
|
IS_INCLUDE_ACCESS_EVENTS=true
|
||||||
|
JS_OPTION=$3
|
||||||
|
IMPORT_FILE=$5
|
||||||
|
elif [[ "$5" == "include-access-events" ]]; then
|
||||||
|
IS_INCLUDE_ACCESS_EVENTS=true
|
||||||
|
JS_OPTION=$3
|
||||||
|
IMPORT_FILE=$4
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
IS_INVALID_JS_OPTION_VALUE=false
|
||||||
|
if [[ "$JS_OPTION" != "with-samples" && "$JS_OPTION" != "regen-config" && "$JS_OPTION" != "test" && "$JS_OPTION" != "help" ]]; then
|
||||||
|
IS_INVALID_JS_OPTION_VALUE=true
|
||||||
|
fi
|
||||||
|
|
||||||
|
IS_INVALID_PARAM_VALUE=false
|
||||||
|
if [[ "$IMPORT_FILE" != "with-samples" && "$IMPORT_FILE" != "regen-config" && "$IMPORT_FILE" != "test" && "$IMPORT_FILE" != "help" ]]; then
|
||||||
|
IS_INVALID_PARAM_VALUE=true
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "$JS_UPGRADE_STRATEGY" == "standard" ]]; then
|
||||||
|
if [[ "$IMPORT_FILE" == "" ]]; then
|
||||||
|
if [[ "$IS_INVALID_JS_OPTION_VALUE" == "true" ]]; then
|
||||||
|
IMPORT_FILE=$JS_OPTION
|
||||||
|
JS_OPTION=""
|
||||||
|
elif [[ "$JS_OPTION" != "regen-config" && "$JS_OPTION" != "test" && "$JS_OPTION" != "help" ]]; then
|
||||||
|
fail "JasperReports Server import file(<path-to-file-and-filename>) expected as input"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
if [[ "$IS_INVALID_JS_OPTION_VALUE" == "true" ]]; then
|
||||||
|
if [[ "$IS_INVALID_PARAM_VALUE" == "true" ]]; then
|
||||||
|
fail "Invalid option specified"
|
||||||
|
else
|
||||||
|
TEMP_IMPORT_FILE=$IMPORT_FILE
|
||||||
|
IMPORT_FILE=$JS_OPTION
|
||||||
|
JS_OPTION=$TEMP_IMPORT_FILE
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
if [[ "$JS_UPGRADE_STRATEGY" == "standard" && "$JS_OPTION" != "regen-config" && "$JS_OPTION" != "test" && "$JS_OPTION" != "help" && "$IMPORT_FILE" == "" ]]; then
|
||||||
|
fail "JasperReports Server import file(<path-to-file-and-filename>) expected as input"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$JS_OPTION" == "" ]; then
|
||||||
|
JS_ANT_TARGET=upgrade-minimal-$JS_EDITION
|
||||||
|
JS_OPTION=default
|
||||||
|
else
|
||||||
|
case "$JS_OPTION" in
|
||||||
|
with-samples)
|
||||||
|
JS_ANT_TARGET=upgrade-normal-$JS_EDITION
|
||||||
|
;;
|
||||||
|
|
||||||
|
regen-config)
|
||||||
|
JS_ANT_TARGET=refresh-config
|
||||||
|
;;
|
||||||
|
|
||||||
|
test)
|
||||||
|
JS_ANT_TARGET=pre-upgrade-test-$JS_EDITION
|
||||||
|
;;
|
||||||
|
|
||||||
|
help)
|
||||||
|
if [[ "$JS_UPGRADE_STRATEGY" == "standard" ]]; then
|
||||||
|
cat ./bin/upgrade-newdb.help
|
||||||
|
elif [[ "$JS_UPGRADE_STRATEGY" == "inDatabase" ]]; then
|
||||||
|
cat ./bin/upgrade-samedb.help
|
||||||
|
fi
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
fail "Invalid option specified"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
JS_ANT_OPTIONS="-Djava.net.preferIPv4Stack=true"
|
||||||
|
if [ "$IMPORT_FILE" == "" ]; then
|
||||||
|
JS_ANT_OPTIONS="$JS_ANT_OPTIONS -Dstrategy=$JS_UPGRADE_STRATEGY"
|
||||||
|
else
|
||||||
|
JS_ANT_OPTIONS="$JS_ANT_OPTIONS -Dstrategy=$JS_UPGRADE_STRATEGY -DimportFile=$IMPORT_FILE"
|
||||||
|
fi
|
||||||
|
if [[ "$JS_UPGRADE_STRATEGY" == "standard" && "$IS_INCLUDE_ACCESS_EVENTS" == "true" ]]; then
|
||||||
|
JS_IMPORT_ARGS="--include-access-events"
|
||||||
|
fi
|
||||||
|
if [ "$IS_INCLUDE_SERVER_SETTINGS" == "true" ]; then
|
||||||
|
if [ "$JS_IMPORT_ARGS" != "" ]; then
|
||||||
|
JS_IMPORT_ARGS="--include-server-settings $JS_IMPORT_ARGS"
|
||||||
|
else
|
||||||
|
JS_IMPORT_ARGS="--include-server-settings"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
#
|
||||||
|
# Calling core setup script with determined parameters.
|
||||||
|
#
|
||||||
|
if [ "$JS_IMPORT_ARGS" != "" ]; then
|
||||||
|
./bin/do-js-setup.sh upgrade $JS_EDITION $JS_OPTION $JS_ANT_TARGET $JS_ANT_OPTIONS "-DimportArgs=\"$JS_IMPORT_ARGS\""
|
||||||
|
else
|
||||||
|
./bin/do-js-setup.sh upgrade $JS_EDITION $JS_OPTION $JS_ANT_TARGET $JS_ANT_OPTIONS
|
||||||
|
fi
|
||||||
|
|
@ -0,0 +1,642 @@
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<project name="export-import">
|
||||||
|
<!-- ======================================================================= -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- import-export helper macros -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- ======================================================================= -->
|
||||||
|
|
||||||
|
<macrodef name="check-import-export-file-property"
|
||||||
|
description="check that importFile or exportFile is defined on import targets">
|
||||||
|
<attribute name="type"/> <!-- import or export -->
|
||||||
|
<attribute name="edition"/> <!-- ce or pro -->
|
||||||
|
<attribute name="example"/> <!-- example command used in error message -->
|
||||||
|
<sequential>
|
||||||
|
<var name="propName" value="@{type}File"/>
|
||||||
|
<if>
|
||||||
|
<not>
|
||||||
|
<isset property="${propName}"/>
|
||||||
|
</not>
|
||||||
|
<then>
|
||||||
|
<echo>
|
||||||
|
The property -D${propName} needs to be specified on the command line
|
||||||
|
For instance: @{example}
|
||||||
|
For options try: js-ant @{type}-help-@{edition}
|
||||||
|
</echo>
|
||||||
|
<fail message="Missing file argument for import/export"/>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<macrodef name="run-import-export"
|
||||||
|
description="import or export of repository data">
|
||||||
|
<attribute name="type"/>
|
||||||
|
<attribute name="archive"/>
|
||||||
|
<attribute name="edition"/> <!-- ce or pro -->
|
||||||
|
<attribute name="checkDBMSConnection"/> <!-- true or false -->
|
||||||
|
<attribute name="useConsoleInput" default="false"/> <!-- true or false -->
|
||||||
|
<element name="args" implicit="yes" optional="true"/>
|
||||||
|
<sequential>
|
||||||
|
<!-- set config dir based on edition, then make sure it's there -->
|
||||||
|
<if>
|
||||||
|
<equals arg1="@{edition}" arg2="ce" />
|
||||||
|
<then>
|
||||||
|
<var name="importExportConfig" value="${importExportConfigCe}"/>
|
||||||
|
</then>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="@{edition}" arg2="pro" />
|
||||||
|
<then>
|
||||||
|
<var name="importExportConfig" value="${importExportConfigPro}"/>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<else>
|
||||||
|
<fail>Invalid value for edition: @{edition}</fail>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
<if>
|
||||||
|
<not>
|
||||||
|
<available file="${importExportConfig}"/>
|
||||||
|
</not>
|
||||||
|
<then>
|
||||||
|
<echo>
|
||||||
|
Error: Directory ${importExportConfig} was not found
|
||||||
|
Try running "js-ant assemble-export-files-@{edition}"
|
||||||
|
Make sure you have compiled the jasperserver source code.
|
||||||
|
</echo>
|
||||||
|
<fail message="Missing import-export config directory"/>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<!-- determine whether we are using dir or zip -->
|
||||||
|
<if>
|
||||||
|
<matches string="@{archive}" pattern="zip$"/>
|
||||||
|
<then>
|
||||||
|
<var name="archiveType" value="zip"/>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<var name="archiveType" value="dir"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
<!-- construct parts of command line -->
|
||||||
|
<if>
|
||||||
|
<equals arg1="@{type}" arg2="import" />
|
||||||
|
<then>
|
||||||
|
<var name="class" value="com.jaspersoft.jasperserver.export.ImportCommand"/>
|
||||||
|
<var name="archiveArg" value="--input-${archiveType}=@{archive}"/>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<var name="class" value="com.jaspersoft.jasperserver.export.ExportCommand"/>
|
||||||
|
<var name="archiveArg" value="--output-${archiveType}=@{archive}"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
<echo> </echo>
|
||||||
|
<echo>Property values (in install.xml): </echo>
|
||||||
|
<echo> archiveArg = ${archiveArg}</echo>
|
||||||
|
<echo> dbType = ${dbType}</echo>
|
||||||
|
<echo> jdbcJar = ${jdbcJar}</echo>
|
||||||
|
<echo> currentConf = ${currentConf}</echo>
|
||||||
|
<echo> importExportConfig = ${importExportConfig}</echo>
|
||||||
|
<echo> </echo>
|
||||||
|
|
||||||
|
<!-- todo: fixed bug 15479 - postgresql fails on export on scheduled report -->
|
||||||
|
<!-- todo: better fix would be to pull in the js.quartz.properties file from the -->
|
||||||
|
<!-- buildomatic/build_conf dir in the run-import-export macrodef -->
|
||||||
|
<!-- tweaking conf_source/import_export_config*/js.quartz.properties for quartz delegate if postgresql -->
|
||||||
|
<if>
|
||||||
|
<equals arg1="${dbType}" arg2="postgresql" />
|
||||||
|
<then>
|
||||||
|
<replace file="${importExportConfig}/js.quartz.properties"
|
||||||
|
token="StdJDBCDelegate" value="PostgreSQLDelegate"/>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<replace file="${importExportConfig}/js.quartz.properties"
|
||||||
|
token="PostgreSQLDelegate" value="StdJDBCDelegate"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<set-import-export-lib-dir importExportConfig="${importExportConfig}"/>
|
||||||
|
|
||||||
|
<if>
|
||||||
|
<equals arg1="@{checkDBMSConnection}" arg2="true" />
|
||||||
|
<then>
|
||||||
|
<validateDB systemName="js" phase="import-export-test" failOnDBNotExists="true"/>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if>
|
||||||
|
<equals arg1="@{useConsoleInput}" arg2="true" />
|
||||||
|
<then>
|
||||||
|
<java classname="${class}" fork="true" failonerror="true">
|
||||||
|
<arg value="--@{type}"/>
|
||||||
|
<arg value="${archiveArg}"/>
|
||||||
|
<args/>
|
||||||
|
<!-- add arg that tells oracle JDBC driver to use utf-8 types; won't hurt anyone else -->
|
||||||
|
<jvmarg value="-Doracle.jdbc.defaultNChar=true"/>
|
||||||
|
<!-- add this to handle properly import catalogs with utf-8 names -->
|
||||||
|
<jvmarg value="-Dfile.encoding=UTF-8"/>
|
||||||
|
<!-- disable ehcache -->
|
||||||
|
<jvmarg value="-Dnet.sf.ehcache.disabled=true"/>
|
||||||
|
<!-- set this var to avoid certain network exceptions in OS X -->
|
||||||
|
<jvmarg value="-Djava.net.preferIPv4Stack=true"/>
|
||||||
|
<jvmarg value="-Xms512m"/>
|
||||||
|
<jvmarg value="-Xmx2048m"/>
|
||||||
|
|
||||||
|
<!-- Uncomment to debug remotely -->
|
||||||
|
<!--<jvmarg value="-Xdebug"/>
|
||||||
|
<jvmarg value="-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9009"/>-->
|
||||||
|
|
||||||
|
<classpath>
|
||||||
|
<!--
|
||||||
|
TODO
|
||||||
|
we should put currentConf first so it can pick up the files generated based on
|
||||||
|
db settings, etc., but if you do that, beans don't get recognized because
|
||||||
|
the Spring context loader uses a pattern of "applicationContext*.xml", which
|
||||||
|
is sensitive to the order of the classpath.
|
||||||
|
We should use one of the args such as -configResources to pass a pattern
|
||||||
|
that is more explicit for Spring, doing something like this:
|
||||||
|
-configResources=file:blah/import-export/dir/applicationContext*.xml
|
||||||
|
-->
|
||||||
|
<pathelement location="${importExportConfig}"/>
|
||||||
|
<fileset dir="${importExportLibDir}" includes="*.jar"/>
|
||||||
|
<fileset dir="${currentDbJDBCDir}" includes="${jdbcJar}"/>
|
||||||
|
<pathelement location="${currentConf}"/>
|
||||||
|
</classpath>
|
||||||
|
</java>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<!--
|
||||||
|
JVM forked by Ant tries to read from input stream by default.
|
||||||
|
If one of the <input>s with be executed after this call then
|
||||||
|
user will be prompted for input at least one more time
|
||||||
|
(pending input for forked JVM).
|
||||||
|
inputstring="" is added explicitly to ensure that input will not be captured
|
||||||
|
and <input>s will work as expected.
|
||||||
|
|
||||||
|
TODO This is a known bug https://issues.apache.org/bugzilla/show_bug.cgi?id=49119. Fixed in Ant 1.8.2
|
||||||
|
-->
|
||||||
|
|
||||||
|
<java classname="${class}" fork="true" failonerror="true" inputstring="">
|
||||||
|
<arg value="--@{type}"/>
|
||||||
|
<arg value="${archiveArg}"/>
|
||||||
|
<args/>
|
||||||
|
<!-- add arg that tells oracle JDBC driver to use utf-8 types; won't hurt anyone else -->
|
||||||
|
<jvmarg value="-Doracle.jdbc.defaultNChar=true"/>
|
||||||
|
<!-- add this to handle properly import catalogs with utf-8 names -->
|
||||||
|
<jvmarg value="-Dfile.encoding=UTF-8"/>
|
||||||
|
<!-- disable ehcache -->
|
||||||
|
<jvmarg value="-Dnet.sf.ehcache.disabled=true"/>
|
||||||
|
<!-- set this var to avoid certain network exceptions in OS X -->
|
||||||
|
<jvmarg value="-Djava.net.preferIPv4Stack=true"/>
|
||||||
|
<jvmarg value="-Xms512m"/>
|
||||||
|
<jvmarg value="-Xmx2048m"/>
|
||||||
|
|
||||||
|
<!-- Uncomment to debug remotely -->
|
||||||
|
<!--<jvmarg value="-Xdebug"/>
|
||||||
|
<jvmarg value="-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9009"/>-->
|
||||||
|
|
||||||
|
<classpath>
|
||||||
|
<!--
|
||||||
|
TODO
|
||||||
|
we should put currentConf first so it can pick up the files generated based on
|
||||||
|
db settings, etc., but if you do that, beans don't get recognized because
|
||||||
|
the Spring context loader uses a pattern of "applicationContext*.xml", which
|
||||||
|
is sensitive to the order of the classpath.
|
||||||
|
We should use one of the args such as -configResources to pass a pattern
|
||||||
|
that is more explicit for Spring, doing something like this:
|
||||||
|
-configResources=file:blah/import-export/dir/applicationContext*.xml
|
||||||
|
-->
|
||||||
|
<pathelement location="${importExportConfig}"/>
|
||||||
|
<fileset dir="${importExportLibDir}" includes="*.jar"/>
|
||||||
|
<fileset dir="${currentDbJDBCDir}" includes="${jdbcJar}"/>
|
||||||
|
<pathelement location="${currentConf}"/>
|
||||||
|
</classpath>
|
||||||
|
</java>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<!-- ======================================================================================= -->
|
||||||
|
<!-- set-import-export-lib-dir -->
|
||||||
|
<!-- For import-export operation set ${importExportLibDir} in order to find the required -->
|
||||||
|
<!-- jar files. -->
|
||||||
|
<!-- 1) if "../scripts/lib" exists then we are in an install context. Default to this -->
|
||||||
|
<!-- setting. (ie an end user installing from the WAR File Dist zip) -->
|
||||||
|
<!-- 2) if no scripts/lib then use the jars put in place by buildomatic -->
|
||||||
|
<!-- (buildomatia/conf_source/import_export_config_<ce/pro>) -->
|
||||||
|
<!-- ======================================================================================= -->
|
||||||
|
<macrodef name="set-import-export-lib-dir">
|
||||||
|
<attribute name="importExportConfig"/>
|
||||||
|
<sequential>
|
||||||
|
<if>
|
||||||
|
<available file="${basedir}/../scripts/lib"/>
|
||||||
|
<then>
|
||||||
|
<var name="importExportLibDir" value="${basedir}/../scripts/lib"/>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<var name="importExportLibDir" value="@{importExportConfig}/lib"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<!-- ======================================================================= -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- import-export targets -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- ======================================================================= -->
|
||||||
|
|
||||||
|
<target name="import"
|
||||||
|
description="do repo import from archive. specify file with -DimportFile">
|
||||||
|
|
||||||
|
<check-import-export-file-property
|
||||||
|
type="import"
|
||||||
|
edition="pro"
|
||||||
|
example="js-ant import -DimportFile=js-catalog.zip"/>
|
||||||
|
<if>
|
||||||
|
<isset property="importArgs"/>
|
||||||
|
<then>
|
||||||
|
<run-import-export type="import" archive="${importFile}"
|
||||||
|
edition="pro" checkDBMSConnection="true" useConsoleInput="true">
|
||||||
|
<arg line="${importArgs}" />
|
||||||
|
</run-import-export>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<run-import-export type="import" archive="${importFile}" edition="pro" checkDBMSConnection="true"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="import-ce"
|
||||||
|
description="do repo import from archive. specify file with -DimportFile">
|
||||||
|
|
||||||
|
<check-import-export-file-property
|
||||||
|
type="import"
|
||||||
|
edition="ce"
|
||||||
|
example="js-ant import-ce -DimportFile=js-catalog.zip"/>
|
||||||
|
<if>
|
||||||
|
<isset property="importArgs"/>
|
||||||
|
<then>
|
||||||
|
<run-import-export type="import" archive="${importFile}" edition="ce" checkDBMSConnection="true">
|
||||||
|
<arg line="${importArgs}" />
|
||||||
|
</run-import-export>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<run-import-export type="import" archive="${importFile}" edition="ce" checkDBMSConnection="true"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- for pro there is a minimal file per db -->
|
||||||
|
<target name="import-minimal-pro"
|
||||||
|
description="do import of minimal resources">
|
||||||
|
|
||||||
|
<run-import-export type="import" archive="${exportDir}/js-catalog-${dbType}-minimal-pro.zip" edition="pro" checkDBMSConnection="true"/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="import-minimal-ce"
|
||||||
|
description="do import of minimal resources">
|
||||||
|
|
||||||
|
<run-import-export type="import" archive="${exportDir}/js-catalog-${dbType}-minimal-ce.zip" edition="ce" checkDBMSConnection="true"/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="import-minimal-for-upgrade-pro"
|
||||||
|
description="do import of minimal resources in upgrade context for Pro">
|
||||||
|
<run-import-export type="import" archive="${exportDir}/js-catalog-${dbType}-minimal-pro.zip" edition="pro" checkDBMSConnection="true">
|
||||||
|
<arg value="--update" />
|
||||||
|
<arg value="--skip-user-update" />
|
||||||
|
</run-import-export>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="import-minimal-for-upgrade-ce"
|
||||||
|
description="do import of minimal resources in upgrade context for CE">
|
||||||
|
<run-import-export type="import" archive="${exportDir}/js-catalog-${dbType}-minimal-ce.zip" edition="ce" checkDBMSConnection="true">
|
||||||
|
<arg value="--update" />
|
||||||
|
<arg value="--skip-user-update" />
|
||||||
|
</run-import-export>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- bug 25644: adding "update-core-users" option for ce and pro -->
|
||||||
|
<target name="import-upgrade"
|
||||||
|
description="do import from older jasperserver version. specify file with -DimportFile=path-and-filename">
|
||||||
|
<check-import-export-file-property
|
||||||
|
type="import"
|
||||||
|
edition="pro"
|
||||||
|
example="js-ant import-upgrade -DimportFile=my-upgrade.zip"/>
|
||||||
|
<if>
|
||||||
|
<isset property="importArgs" />
|
||||||
|
<then>
|
||||||
|
<run-import-export type="import" archive="${importFile}" edition="pro" checkDBMSConnection="true">
|
||||||
|
<arg line="${importArgs}" />
|
||||||
|
<arg value="--update-core-users"/>
|
||||||
|
</run-import-export>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<run-import-export type="import" archive="${importFile}" edition="pro" checkDBMSConnection="true">
|
||||||
|
<arg value="--update-core-users"/>
|
||||||
|
</run-import-export>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="import-upgrade-ce"
|
||||||
|
description="do import from older jasperserver version. specify file with -DimportFile=">
|
||||||
|
|
||||||
|
<check-import-export-file-property
|
||||||
|
type="import"
|
||||||
|
edition="ce"
|
||||||
|
example="js-ant import-upgrade-ce -DimportFile=my-upgrade.zip"/>
|
||||||
|
<if>
|
||||||
|
<isset property="importArgs" />
|
||||||
|
<then>
|
||||||
|
<run-import-export type="import" archive="${importFile}" edition="ce" checkDBMSConnection="true">
|
||||||
|
<arg line="${importArgs}" />
|
||||||
|
<arg value="--update-core-users"/>
|
||||||
|
</run-import-export>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<run-import-export type="import" archive="${importFile}" edition="ce" checkDBMSConnection="true">
|
||||||
|
<arg value="--update-core-users"/>
|
||||||
|
</run-import-export>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="import-sample-data-pro"
|
||||||
|
description="import sample data">
|
||||||
|
|
||||||
|
<run-import-export type="import" archive="${exportDir}/js-catalog-${dbType}-pro.zip" edition="pro" checkDBMSConnection="true">
|
||||||
|
<arg value="--update"/>
|
||||||
|
</run-import-export>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="import-sample-data-ce"
|
||||||
|
description="import sample data">
|
||||||
|
|
||||||
|
<run-import-export type="import" archive="${exportDir}/js-catalog-${dbType}-ce.zip" edition="ce" checkDBMSConnection="true">
|
||||||
|
<arg value="--update"/>
|
||||||
|
</run-import-export>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="import-sample-data-upgrade-pro"
|
||||||
|
description="import sample data">
|
||||||
|
|
||||||
|
<run-import-export type="import" archive="${exportDir}/js-catalog-${dbType}-pro.zip" edition="pro" checkDBMSConnection="true">
|
||||||
|
<arg value="--update"/>
|
||||||
|
<arg value="--skip-user-update"/>
|
||||||
|
</run-import-export>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="import-sample-data-upgrade-ce"
|
||||||
|
description="import sample data">
|
||||||
|
|
||||||
|
<run-import-export type="import" archive="${exportDir}/js-catalog-${dbType}-ce.zip" edition="ce" checkDBMSConnection="true">
|
||||||
|
<arg value="--update"/>
|
||||||
|
<arg value="--skip-user-update"/>
|
||||||
|
</run-import-export>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="export"
|
||||||
|
description="do repo export, specify -DexportFile=">
|
||||||
|
|
||||||
|
<check-import-export-file-property
|
||||||
|
type="export"
|
||||||
|
edition="pro"
|
||||||
|
example="js-ant export -DexportFile=js-export.zip"/>
|
||||||
|
|
||||||
|
<if>
|
||||||
|
<isset property="exportArgs"/>
|
||||||
|
<then>
|
||||||
|
<run-import-export type="export" archive="${exportFile}" edition="pro" checkDBMSConnection="true">
|
||||||
|
<arg line="${exportArgs}" />
|
||||||
|
</run-import-export>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<run-import-export type="export" archive="${exportFile}" edition="pro" checkDBMSConnection="true"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="export-ce"
|
||||||
|
description="do repo export, specify -DexportFile=">
|
||||||
|
|
||||||
|
<check-import-export-file-property
|
||||||
|
type="export"
|
||||||
|
edition="ce"
|
||||||
|
example="js-ant export-ce -DexportFile=js-export.zip"/>
|
||||||
|
|
||||||
|
<if>
|
||||||
|
<isset property="exportArgs"/>
|
||||||
|
<then>
|
||||||
|
<run-import-export type="export" archive="${exportFile}" edition="ce" checkDBMSConnection="true">
|
||||||
|
<arg line="${exportArgs}" />
|
||||||
|
</run-import-export>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<run-import-export type="export" archive="${exportFile}" edition="ce" checkDBMSConnection="true"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="export-everything"
|
||||||
|
description="export all resources, specify -DexportFile=">
|
||||||
|
|
||||||
|
<check-import-export-file-property
|
||||||
|
type="export"
|
||||||
|
edition="pro"
|
||||||
|
example="js-ant export-everything -DexportFile=js-export.zip"/>
|
||||||
|
|
||||||
|
<run-import-export type="export" archive="${exportFile}" edition="pro" checkDBMSConnection="true">
|
||||||
|
<arg value="--everything"/>
|
||||||
|
</run-import-export>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="export-everything-ce"
|
||||||
|
description="export all resources, specify -DexportFile=">
|
||||||
|
|
||||||
|
<check-import-export-file-property
|
||||||
|
type="export"
|
||||||
|
edition="pro"
|
||||||
|
example="js-ant export-everything-ce -DexportFile=js-export.zip"/>
|
||||||
|
|
||||||
|
<run-import-export type="export" archive="${exportFile}" edition="ce" checkDBMSConnection="true">
|
||||||
|
<arg value="--everything"/>
|
||||||
|
<arg line="${exportArgs}"/>
|
||||||
|
</run-import-export>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="validate-database"
|
||||||
|
description="tests if db is available">
|
||||||
|
<validateDB systemName="js" phase="import-export-test" failOnDBNotExists="true"/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="import-help"
|
||||||
|
description="Deprecated target">
|
||||||
|
<echo>
|
||||||
|
NOTE: try running target "import-help-pro" or "import-help-ce"
|
||||||
|
</echo>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="export-help"
|
||||||
|
description="Deprecated target">
|
||||||
|
<echo>
|
||||||
|
NOTE: try running target "export-help-pro" or "export-help-ce"
|
||||||
|
</echo>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="import-help-pro"
|
||||||
|
description="print import help Pro">
|
||||||
|
|
||||||
|
<run-import-export type="import" archive="${exportFile}" edition="pro" checkDBMSConnection="false">
|
||||||
|
<arg line="--help"/>
|
||||||
|
</run-import-export>
|
||||||
|
|
||||||
|
<echo>
|
||||||
|
Buildomatic Import-Export Usage:
|
||||||
|
|
||||||
|
To run using buildomatic, options must be specified as Java command line options:
|
||||||
|
|
||||||
|
General Example:
|
||||||
|
|
||||||
|
js-ant import -DimportFile=my-reports.zip
|
||||||
|
|
||||||
|
Windows Example:
|
||||||
|
|
||||||
|
js-ant import -DimportFile=my-reports-and-users.zip -DimportArgs="--update"
|
||||||
|
|
||||||
|
js-ant import -DimportFile=my-reports-and-users.zip -DimportArgs="--update --skip-user-update"
|
||||||
|
|
||||||
|
Linux Example:
|
||||||
|
|
||||||
|
./js-ant import -DimportFile=my-reports-and-users.zip -DimportArgs="--update"
|
||||||
|
|
||||||
|
./js-ant import -DimportFile=my-reports-and-users.zip -DimportArgs="--update --skip-user-update"
|
||||||
|
</echo>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="import-help-ce"
|
||||||
|
description="print import help CE">
|
||||||
|
|
||||||
|
<run-import-export type="import" archive="${exportFile}" edition="ce" checkDBMSConnection="false">
|
||||||
|
<arg line="--help"/>
|
||||||
|
</run-import-export>
|
||||||
|
|
||||||
|
<echo>
|
||||||
|
Buildomatic Import-Export Usage:
|
||||||
|
|
||||||
|
To run using buildomatic, options must be specified as Java command line options:
|
||||||
|
|
||||||
|
General Example:
|
||||||
|
|
||||||
|
js-ant import-ce -DimportFile=my-reports.zip
|
||||||
|
|
||||||
|
Windows Example:
|
||||||
|
|
||||||
|
js-ant import-ce -DimportFile=my-reports-and-users.zip -DimportArgs="--update"
|
||||||
|
|
||||||
|
js-ant import-ce -DimportFile=my-reports-and-users.zip -DimportArgs="--update --skip-user-update"
|
||||||
|
|
||||||
|
Linux Example:
|
||||||
|
|
||||||
|
./js-ant import-ce -DimportFile=my-reports-and-users.zip -DimportArgs="--update"
|
||||||
|
|
||||||
|
./js-ant import-ce -DimportFile=my-reports-and-users.zip -DimportArgs="--update --skip-user-update"
|
||||||
|
</echo>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="export-help-pro"
|
||||||
|
description="print export help Pro">
|
||||||
|
|
||||||
|
<run-import-export type="export" archive="" edition="pro" checkDBMSConnection="false">
|
||||||
|
<arg line="--help"/>
|
||||||
|
</run-import-export>
|
||||||
|
|
||||||
|
<echo>
|
||||||
|
|
||||||
|
Buildomatic Import-Export Usage:
|
||||||
|
|
||||||
|
To run using buildomatic, options must be specified as Java command line options:
|
||||||
|
|
||||||
|
General Example:
|
||||||
|
|
||||||
|
js-ant export-everything -DexportFile=js-export-all.zip
|
||||||
|
|
||||||
|
Windows Example:
|
||||||
|
|
||||||
|
js-ant export -DexportFile=my-reports-and-users.zip
|
||||||
|
-DexportArgs="--uris /organizations/organization_1/reports
|
||||||
|
--users jasperadmin|organization_1,joeuser|organization_1"
|
||||||
|
|
||||||
|
js-ant export -DexportFile=js-organization-1.zip -DexportArgs="--everything
|
||||||
|
--organization organization_1"
|
||||||
|
|
||||||
|
Linux Example:
|
||||||
|
|
||||||
|
./js-ant export -DexportFile=my-reports-and-users.zip
|
||||||
|
-DexportArgs="--uris /organizations/organization_1/reports
|
||||||
|
--users 'jasperadmin\|organization_1,joeuser\|organization_1'"
|
||||||
|
|
||||||
|
./js-ant export -DexportFile=my-reports-and-users.zip
|
||||||
|
-DexportArgs=\"--uris /organizations/organization_1/reports
|
||||||
|
--users 'jasperadmin\|organization_1,joeuser\|organization_1'\"
|
||||||
|
|
||||||
|
./js-ant export -DexportFile=js-organization-1.zip -DexportArgs=\"--everything
|
||||||
|
--organization organization_1\"
|
||||||
|
|
||||||
|
(linux: note escape backslash on | and " characters and use of ' character)
|
||||||
|
</echo>
|
||||||
|
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="export-help-ce"
|
||||||
|
description="print export help CE">
|
||||||
|
|
||||||
|
<run-import-export type="export" archive="" edition="ce" checkDBMSConnection="false">
|
||||||
|
<arg line="--help"/>
|
||||||
|
</run-import-export>
|
||||||
|
|
||||||
|
<echo>
|
||||||
|
|
||||||
|
Buildomatic Import-Export Usage:
|
||||||
|
|
||||||
|
To run using buildomatic, options must be specified as Java command line options:
|
||||||
|
|
||||||
|
General Example:
|
||||||
|
|
||||||
|
js-ant export-everything-ce -DexportFile=js-export-all.zip
|
||||||
|
|
||||||
|
Windows Example:
|
||||||
|
|
||||||
|
js-ant export-ce -DexportFile=my-reports-and-users.zip
|
||||||
|
-DexportArgs="--uris /reports
|
||||||
|
--users jasperadmin,joeuser"
|
||||||
|
|
||||||
|
Linux Example:
|
||||||
|
|
||||||
|
./js-ant export-ce -DexportFile=my-reports-and-users.zip
|
||||||
|
-DexportArgs="--uris /reports
|
||||||
|
--users 'jasperadmin,joeuser'"
|
||||||
|
|
||||||
|
(linux: note use of the ' character)
|
||||||
|
</echo>
|
||||||
|
</target>
|
||||||
|
</project>
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
<empty> Do install with sample databases and full sample data
|
||||||
|
minimal Do minimal install (no sample data and sample databases)
|
||||||
|
regen-config If you edited your configuration, this will recreate your Buildomatic configuration
|
||||||
|
drop-db Only does a drop of the main JasperReports Server database
|
||||||
|
test Do any possible validation, report problems. Don't change anything
|
||||||
|
help Provide some information about what options mean, what will happen by default, etc.
|
||||||
|
|
@ -0,0 +1,88 @@
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<project name="install">
|
||||||
|
|
||||||
|
<!-- ======================================================================= -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- This file holds installation related macros and targets -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- ======================================================================= -->
|
||||||
|
|
||||||
|
<!-- ======================================================================= -->
|
||||||
|
<!-- Import a build file containing targets for db operations -->
|
||||||
|
<!-- If the db directory has a db.xml, use that, otherwise use default -->
|
||||||
|
<!-- ======================================================================= -->
|
||||||
|
|
||||||
|
<!-- echo for debugging:
|
||||||
|
<echo> overrideDatabaseInstallTargets = ${overrideDatabaseInstallTargets}"/>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<if>
|
||||||
|
<available file="${currentDbDir}/db.xml"/>
|
||||||
|
<then>
|
||||||
|
<import file="${currentDbDir}/db.xml"/>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<!-- use the default DB related targets -->
|
||||||
|
<import file="db-common.xml"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<!-- Import the import-export targets. -->
|
||||||
|
<import file="import-export.xml" />
|
||||||
|
|
||||||
|
<!-- Import application server management and deployment targets. -->
|
||||||
|
<import file="app-server.xml" />
|
||||||
|
|
||||||
|
<!-- ======================================================================= -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- Installation targets -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- ======================================================================= -->
|
||||||
|
|
||||||
|
<target name="install-normal-ce"
|
||||||
|
description="Performs normal install of JasperServer CE (with sample databases and sample data)"
|
||||||
|
depends="gen-config, pre-install-test-ce, prepare-all-ce-dbs-normal, deploy-webapp-ce-if-needed">
|
||||||
|
<echo>Installation successfully completed!</echo>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="install-normal-pro"
|
||||||
|
description="Performs normal install of JasperServer Pro (with sample databases and sample data)"
|
||||||
|
depends="gen-config, pre-install-test-pro, prepare-all-pro-dbs-normal, deploy-webapp-pro-if-needed">
|
||||||
|
<echo>Installation successfully completed!</echo>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="install-minimal-ce"
|
||||||
|
description="Performs minimal install of JasperServer CE (no sample databases and sample data)"
|
||||||
|
depends="set-minimal-mode, gen-config, pre-install-test-ce, prepare-js-ce-db-minimal, deploy-webapp-ce-if-needed">
|
||||||
|
<echo>Installation successfully completed!</echo>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="install-minimal-pro"
|
||||||
|
description="Performs minimal install of JasperServer Pro (no sample databases and sample data)"
|
||||||
|
depends="set-minimal-mode, gen-config, pre-install-test-pro, prepare-js-pro-db-minimal, deploy-webapp-pro-if-needed">
|
||||||
|
<echo>Installation successfully completed!</echo>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="set-minimal-mode"
|
||||||
|
description="Sets property that flags that process of installation or upgrade is 'minimal'">
|
||||||
|
<property name="js.minimal.mode" value="true" />
|
||||||
|
</target>
|
||||||
|
|
||||||
|
</project>
|
||||||
|
|
@ -0,0 +1,66 @@
|
||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# script to run export-import command
|
||||||
|
#
|
||||||
|
|
||||||
|
# Collect the command line args
|
||||||
|
|
||||||
|
CMD_LINE_ARGS=$*
|
||||||
|
|
||||||
|
|
||||||
|
# Set the main config folder to use and collect all
|
||||||
|
# the jars onto the classpath
|
||||||
|
#
|
||||||
|
# If Pro config exists, then set to Pro config
|
||||||
|
# Otherwise, assume CE config
|
||||||
|
|
||||||
|
if test -d $BASEDIR/conf_source/iePro
|
||||||
|
then
|
||||||
|
echo "Using Pro setup"
|
||||||
|
export CONFIG_DIR=$BASEDIR/conf_source/iePro
|
||||||
|
for i in $CONFIG_DIR/lib/*.jar
|
||||||
|
do
|
||||||
|
EXP_CLASSPATH="$EXP_CLASSPATH:$i"
|
||||||
|
done
|
||||||
|
|
||||||
|
else
|
||||||
|
echo "Using CE setup"
|
||||||
|
export CONFIG_DIR=$BASEDIR/conf_source/ieCe
|
||||||
|
for i in $CONFIG_DIR/lib/*.jar
|
||||||
|
do
|
||||||
|
EXP_CLASSPATH="$EXP_CLASSPATH:$i"
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Additional config folder. This will be used to
|
||||||
|
# get js.jdbc.properties from buildomatic setup
|
||||||
|
export ADDITIONAL_CONFIG_DIR=$BASEDIR/build_conf/default
|
||||||
|
|
||||||
|
|
||||||
|
# Locate the java binary bundled with installer
|
||||||
|
#
|
||||||
|
# If "../java/bin/java" exists, use it
|
||||||
|
|
||||||
|
JAVA_EXEC=java
|
||||||
|
|
||||||
|
if test -f $BASEDIR/../java/bin/java
|
||||||
|
then
|
||||||
|
echo "Using Bundled version of Java"
|
||||||
|
JAVA_HOME=$BASEDIR/../java
|
||||||
|
PATH=$JAVA_HOME/bin:$PATH
|
||||||
|
JAVA_EXEC=$JAVA_HOME/bin/java
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Add the java memory options to JAVA_OPTS
|
||||||
|
|
||||||
|
export JAVA_OPTS="$JAVA_OPTS -Xms128m -Xmx512m -Djava.net.preferIPv4Stack=true"
|
||||||
|
# export JAVA_OPTS="$JAVA_OPTS -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005"
|
||||||
|
|
||||||
|
# Add the config folders to EXP_CLASSPATH
|
||||||
|
|
||||||
|
export EXP_CLASSPATH="$CONFIG_DIR:$ADDITIONAL_CONFIG_DIR$EXP_CLASSPATH:."
|
||||||
|
|
||||||
|
# run java
|
||||||
|
|
||||||
|
$JAVA_EXEC -cp "$EXP_CLASSPATH" $JAVA_OPTS $JS_EXP_CMD_CLASS $JS_CMD_NAME $CMD_LINE_ARGS
|
||||||
|
|
||||||
|
|
@ -0,0 +1,490 @@
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
|
||||||
|
<project name="module-manager">
|
||||||
|
|
||||||
|
|
||||||
|
<!-- start module source package layout. Update these if layout structure or naming changes -->
|
||||||
|
<property name="delete-list" value="delete-list"/>
|
||||||
|
<property name="docs" value="docs"/>
|
||||||
|
<property name="extra" value="extra"/>
|
||||||
|
<property name="module-metadata" value="module-metadata"/>
|
||||||
|
<property name="process-src" value="process-src"/>
|
||||||
|
<property name="war" value="war"/>
|
||||||
|
|
||||||
|
<!-- default module location and name -->
|
||||||
|
<!-- assumed location is basedir (ie buildomatic/js-module.zip) -->
|
||||||
|
<property name="defaultModuleName" value="js-module"/>
|
||||||
|
|
||||||
|
<!-- SAMPLE PROPERTIES -->
|
||||||
|
<!-- <property name="webAppContext" value="CE"/> -->
|
||||||
|
<!-- <property name="webAppContext" value="Pro"/> -->
|
||||||
|
|
||||||
|
|
||||||
|
<!-- you have to know whether file is of type file or dir before deleting -->
|
||||||
|
<macrodef name="delete-any">
|
||||||
|
<attribute name="file"/>
|
||||||
|
<sequential>
|
||||||
|
<echo message="macrodef: delete-any"/>
|
||||||
|
<if>
|
||||||
|
<available type="dir" file="@{file}"/>
|
||||||
|
<then>
|
||||||
|
<echo message="deleting @{file}"/>
|
||||||
|
<delete dir="@{file}"/>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<if>
|
||||||
|
<available type="file" file="@{file}"/>
|
||||||
|
<then>
|
||||||
|
<echo message="deleting @{file}"/>
|
||||||
|
<delete file="@{file}"/>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<macrodef name="check-any">
|
||||||
|
<attribute name="file"/>
|
||||||
|
<attribute name="type"/>
|
||||||
|
<sequential>
|
||||||
|
<if>
|
||||||
|
<not>
|
||||||
|
<available type="@{type}" file="@{file}"/>
|
||||||
|
</not>
|
||||||
|
<then>
|
||||||
|
<fail message="@{type} @{file} not found"/>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<macrodef name="check-dir">
|
||||||
|
<attribute name="dir"/>
|
||||||
|
<sequential>
|
||||||
|
<check-any type="dir" file="@{dir}"/>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
|
||||||
|
<macrodef name="check-file">
|
||||||
|
<attribute name="file"/>
|
||||||
|
<sequential>
|
||||||
|
<check-any type="file" file="@{file}"/>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<macrodef name="copy-war"
|
||||||
|
description="copies a WAR -- arguments: warSource (WAR file or dir), warTarget">
|
||||||
|
<attribute name="warSource"/>
|
||||||
|
<attribute name="warTarget"/>
|
||||||
|
<sequential>
|
||||||
|
<echo message="macrodef: copy-war"/>
|
||||||
|
<!-- clobber old webapp -->
|
||||||
|
<delete-any file="@{warTarget}"/>
|
||||||
|
<!-- now copy war (file or dir) -->
|
||||||
|
<if>
|
||||||
|
<available type="dir" file="@{warSource}"/>
|
||||||
|
<then>
|
||||||
|
<echo message="copying WAR directory @{warSource} to @{warTarget}"/>
|
||||||
|
<copy toDir="@{warTarget}">
|
||||||
|
<fileset dir="@{warSource}"/>
|
||||||
|
</copy>
|
||||||
|
</then>
|
||||||
|
<elseif>
|
||||||
|
<available type="file" file="@{warSource}"/>
|
||||||
|
<then>
|
||||||
|
<echo message="unarchiving WAR file @{warSource} to @{warTarget}"/>
|
||||||
|
<copy toDir="@{warTarget}" preservelastmodified="true">
|
||||||
|
<zipfileset src="@{warSource}"/>
|
||||||
|
</copy>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<else>
|
||||||
|
<fail message="WAR file @{warSource} not found"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<macrodef name="apply-module"
|
||||||
|
description="apply a module on top of a WAR -- arguments:
|
||||||
|
moduleBase, moduleName, moduleSource, warSource, warTarget">
|
||||||
|
<attribute name="moduleBase"/>
|
||||||
|
<attribute name="moduleName"/>
|
||||||
|
<attribute name="moduleSource"/>
|
||||||
|
<attribute name="warSource"/>
|
||||||
|
<attribute name="warTarget"/>
|
||||||
|
<sequential>
|
||||||
|
<echo message="apply-module macro: start"/>
|
||||||
|
<!-- validate moduleSource and warTarget -->
|
||||||
|
<check-dir dir="@{moduleBase}"/>
|
||||||
|
<check-dir dir="@{moduleSource}"/>
|
||||||
|
<check-dir dir="@{warSource}"/>
|
||||||
|
<check-dir dir="@{warTarget}"/>
|
||||||
|
|
||||||
|
<!-- check for presence of module.properties file and load it -->
|
||||||
|
<var name="moduleProps" value="@{moduleBase}/${moduleName}/${module-metadata}/module.properties"/>
|
||||||
|
<check-file file="${moduleProps}"/>
|
||||||
|
<var file="${moduleProps}"/>
|
||||||
|
|
||||||
|
<!-- delete files in files-to-delete.txt -->
|
||||||
|
<var name="filesToDelete" value="@{moduleBase}/${moduleName}/${delete-list}/files-to-delete.txt"/>
|
||||||
|
<if>
|
||||||
|
<available file="${filesToDelete}"/>
|
||||||
|
<then>
|
||||||
|
<echo message="apply-module macro: about to delete from files-to-delete.txt list"/>
|
||||||
|
<delete verbose="true">
|
||||||
|
<fileset dir="@{warTarget}" includesfile="${filesToDelete}"/>
|
||||||
|
</delete>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<!-- copy new files -->
|
||||||
|
<var name="newFileSourceDir" value="@{moduleSource}"/>
|
||||||
|
<if>
|
||||||
|
<available type="dir" file="${newFileSourceDir}"/>
|
||||||
|
<then>
|
||||||
|
<copy toDir="@{warTarget}" overwrite="true">
|
||||||
|
<fileset dir="${newFileSourceDir}"/>
|
||||||
|
</copy>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
<!-- do various file mods -->
|
||||||
|
<echo message="apply-module macro: run tweekWar here"/>
|
||||||
|
|
||||||
|
<java classname="org.mozilla.javascript.tools.shell.Main">
|
||||||
|
<arg value="${basedir}/conf_source/standAloneJS/tweakWar.js"/>
|
||||||
|
<arg value="@{warTarget}"/>
|
||||||
|
<arg value="@{moduleBase}/@{moduleName}/${process-src}/warUpdates"/>
|
||||||
|
<classpath>
|
||||||
|
<fileset dir="${basedir}/conf_source/standAloneJS/lib">
|
||||||
|
<include name="**/*.jar"/>
|
||||||
|
</fileset>
|
||||||
|
</classpath>
|
||||||
|
</java>
|
||||||
|
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- check-webapp-context: -->
|
||||||
|
<!-- The module manage needs to know whether the module to be applied is CE or Pro -->
|
||||||
|
<!-- This is because we need to know the war file name to copy from. In the future, -->
|
||||||
|
<!-- if we have more packages with more war names we can manage this with this -->
|
||||||
|
<!-- kind of check-webapp-context logic. -->
|
||||||
|
<!-- If no webAppContext is set, set default to: CE -->
|
||||||
|
|
||||||
|
<macrodef name="check-webapp-context">
|
||||||
|
<sequential>
|
||||||
|
<echo message="check-webapp-context: checking webapp context"/>
|
||||||
|
<if>
|
||||||
|
<not>
|
||||||
|
<isset property="webAppContext"/>
|
||||||
|
</not>
|
||||||
|
<then>
|
||||||
|
<echo message="check-webapp-context: webAppContext property is not set"/>
|
||||||
|
<echo message="check-webapp-context: setting to a default value: CE"/>
|
||||||
|
<var name="webAppContext" value="CE"/>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<echo message="check-webapp-context: webAppContext exists webAppContext=${webAppContext}"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- check-for-moduleBase: -->
|
||||||
|
<!-- To specify the location of a module, two properties should be set in -->
|
||||||
|
<!-- your default_master.properties file (moduleBase, moduleName). -->
|
||||||
|
<!-- If these properties are are not set, then we can try and look at -->
|
||||||
|
<!-- the "default" module location (buildomatic/js-module.zip). -->
|
||||||
|
<!-- If a module is found in the default location ask user if he -->
|
||||||
|
<!-- wants to use it. -->
|
||||||
|
<!-- If a valid module is found, unzip the module -->
|
||||||
|
|
||||||
|
<macrodef name="check-for-moduleBase">
|
||||||
|
<sequential>
|
||||||
|
|
||||||
|
<echo message="check-for-moduleBase: checking if moduleBase is defined"/>
|
||||||
|
<if>
|
||||||
|
<not>
|
||||||
|
<isset property="moduleBase"/>
|
||||||
|
</not>
|
||||||
|
<then>
|
||||||
|
<echo message="check-for-moduleBase: moduleBase property is not set"/>
|
||||||
|
<echo message="check-for-moduleBase: setting to a default value: basedir, basedir=${basedir}"/>
|
||||||
|
<var name="moduleBase" value="${basedir}"/>
|
||||||
|
<var name="moduleBaseNotSet" value="true"/>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<if>
|
||||||
|
<not>
|
||||||
|
<isset property="moduleName"/>
|
||||||
|
</not>
|
||||||
|
<then>
|
||||||
|
<echo message="check-for-moduleBase: ERROR: moduleName property is not set"/>
|
||||||
|
<fail message="check-for-moduleBase: moduleName property is not set"/>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<echo message="check-for-moduleBase: moduleName exists: moduleName=${moduleName}"/>
|
||||||
|
<var name="moduleBase" value="${moduleBase}"/>
|
||||||
|
<var name="moduleName" value="${moduleName}"/>
|
||||||
|
<var name="haveGoodModuleProps" value="true"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
<if>
|
||||||
|
<!-- user can put a default module here: buildomatic/js-module.zip -->
|
||||||
|
<equals arg1="${moduleBaseNotSet}" arg2="true" />
|
||||||
|
<then>
|
||||||
|
<echo message="check-for-moduleBase: look for default module file"/>
|
||||||
|
<if>
|
||||||
|
<available file="${moduleBase}/${defaultModuleName}.zip"/>
|
||||||
|
<then>
|
||||||
|
<echo message="check-for-moduleBase: js-module.zip exists"/>
|
||||||
|
<echo message="check-for-moduleBase: set default moduleBase and moduleName properties"/>
|
||||||
|
|
||||||
|
<!-- check if user wants to use this default module -->
|
||||||
|
|
||||||
|
<echo message=" "/>
|
||||||
|
<input message="A default module has been found at buildomatic/js-module.zip. Use this?"
|
||||||
|
validargs="y,n"
|
||||||
|
addproperty="do.yes"/>
|
||||||
|
<if>
|
||||||
|
<equals arg1="${do.yes}" arg2="n" />
|
||||||
|
<then>
|
||||||
|
<echo message="check-for-moduleBase: don't use the default module js-module.zip"/>
|
||||||
|
<var name="haveGoodModuleProps" value="false"/>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<echo message="check-for-moduleBase: using default module buildomatic/js-module.zip"/>
|
||||||
|
<var name="moduleBase" value="${basedir}"/>
|
||||||
|
<var name="moduleName" value="${defaultModuleName}"/>
|
||||||
|
<var name="haveGoodModuleProps" value="true"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<echo message="check-for-moduleBase: ERROR: default module does not exist:"/>
|
||||||
|
<echo message="check-for-moduleBase: ${basedir}/${defaultModuleName}.zip "/>
|
||||||
|
<fail message="check-for-moduleBase: don't have valid module properties"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
<if>
|
||||||
|
<equals arg1="${haveGoodModuleProps}" arg2="true" />
|
||||||
|
<then>
|
||||||
|
<echo message="check-for-moduleBase: have good module properties: unzip the module"/>
|
||||||
|
|
||||||
|
<unzip dest="${moduleBase}/${moduleName}"
|
||||||
|
src="${moduleBase}/${moduleName}.zip"
|
||||||
|
overwrite="true"/>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<echo message="check-for-moduleBase: ERROR: don't have good module properties"/>
|
||||||
|
<fail message="check-for-moduleBase: ERROR: don't have good module properties"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<macrodef name="check-for-moduleBase-assemble">
|
||||||
|
<sequential>
|
||||||
|
<echo message="check-for-moduleBase-assemble: checking if moduleBase,moduleName are defined"/>
|
||||||
|
<if>
|
||||||
|
<not>
|
||||||
|
<isset property="moduleBase"/>
|
||||||
|
</not>
|
||||||
|
<then>
|
||||||
|
<echo message="check-for-moduleBase-assemble: ERROR: need valued moduleBase and moduleName properties"/>
|
||||||
|
<fail message="moduleBase property is not set"/>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<if>
|
||||||
|
<not>
|
||||||
|
<isset property="moduleName"/>
|
||||||
|
</not>
|
||||||
|
<then>
|
||||||
|
<echo
|
||||||
|
message="check-for-moduleBase-assemble: ERROR: need valid moduleBase and moduleName properties"/>
|
||||||
|
<fail message="moduleName property is not set"/>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<var name="moduleBase" value="${moduleBase}"/>
|
||||||
|
<var name="moduleName" value="${moduleName}"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ================================================================================= -->
|
||||||
|
<!-- apply-module: -->
|
||||||
|
<!-- This target is used for applying a module to an already deployed -->
|
||||||
|
<!-- JasperServer instance. -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- set a property in your default_master.properties to point to module -->
|
||||||
|
<!-- moduleBase = <path-to-folder-holding-module> -->
|
||||||
|
<!-- moduleName = <name-of-module> (don't include ".zip") -->
|
||||||
|
<!-- (module is assumed to be a .zip file) -->
|
||||||
|
<!-- (or logic will look for a default module here: buildomatic/js-module.zip) -->
|
||||||
|
<!-- ================================================================================= -->
|
||||||
|
|
||||||
|
<target name="apply-module"
|
||||||
|
depends="init-source-paths"
|
||||||
|
description="apply specified module to specified app server location">
|
||||||
|
|
||||||
|
<check-webapp-context/> <!-- macro to set the webapp context value: CE or Pro -->
|
||||||
|
|
||||||
|
<check-for-moduleBase/> <!-- macro to help find location of the module to use -->
|
||||||
|
|
||||||
|
<!-- in code below, we need to get the right names for the source and target webappnames -->
|
||||||
|
<!-- for instance, for ce we use the following: -->
|
||||||
|
<!-- webAppNameSrcCE (from conf_source/default.properties) -->
|
||||||
|
<!-- webAppNameCE (from user setting in default_master.properties - can be customized) -->
|
||||||
|
<if>
|
||||||
|
<equals arg1="${webAppContext}" arg2="CE" />
|
||||||
|
<then>
|
||||||
|
<property name="moduleSource" value="${moduleBase}/${moduleName}/${war}/${webAppNameSrcCE}"/>
|
||||||
|
<property name="warSource" value="${warDir}/${webAppNameSrcCE}"/>
|
||||||
|
<!-- call macro to set app server deployment location for tomcat, jboss, etc -->
|
||||||
|
<set-webapp-name webAppNameParam="${webAppNameCE}" webAppNameSrcParam="${webAppNameSrcCE}"
|
||||||
|
webAppNameDelParam="${webAppNameCE}"/>
|
||||||
|
</then>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="${webAppContext}" arg2="Pro" />
|
||||||
|
<then>
|
||||||
|
<property name="moduleSource" value="${moduleBase}/${moduleName}/${war}/${webAppNameSrcPro}"/>
|
||||||
|
<property name="warSource" value="${warDir}/${webAppNameSrcPro}"/>
|
||||||
|
<!-- call macro to set app server deployment location for tomcat, jboss, etc -->
|
||||||
|
<set-webapp-name webAppNameParam="${webAppNamePro}" webAppNameSrcParam="${webAppNameSrcPro}"
|
||||||
|
webAppNameDelParam="${webAppNamePro}"/>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<else>
|
||||||
|
<echo message="WARNING: unable to determine webAppContext, ${webAppContext}"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<property name="warTarget" value="${warTargetDir}"/> <!-- value set from <set-webapp-name> -->
|
||||||
|
|
||||||
|
<echo message="apply-module: Settings:"/>
|
||||||
|
<echo message="moduleBase=${moduleBase}"/>
|
||||||
|
<echo message="moduleName=${moduleName}"/>
|
||||||
|
<echo message="moduleSource=${moduleSource}"/>
|
||||||
|
<echo message="warSource=${warSource}"/>
|
||||||
|
<echo message="warTarget=${warTarget}"/>
|
||||||
|
|
||||||
|
<check-dir dir="${moduleSource}"/>
|
||||||
|
<check-dir dir="${warSource}"/>
|
||||||
|
<check-dir dir="${warTarget}"/>
|
||||||
|
|
||||||
|
<!-- <copy-war warSource="${warSource}" warTarget="${warTarget}" /> -->
|
||||||
|
<apply-module moduleBase="${moduleBase}"
|
||||||
|
moduleName="${moduleName}"
|
||||||
|
moduleSource="${moduleSource}"
|
||||||
|
warSource="${warSource}"
|
||||||
|
warTarget="${warTarget}"/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ======================================================================================= -->
|
||||||
|
<!-- assemble-module-war: -->
|
||||||
|
<!-- This target is specific for building a war file that -->
|
||||||
|
<!-- will be used by the final packages such as installers -->
|
||||||
|
<!-- 1) moduleBase: need the module location path (from default_master.props) -->
|
||||||
|
<!-- 2) moduleName: need the module location name (from default_master.props) -->
|
||||||
|
<!-- 3) warSource and warTarget are the same location in buildomatic/install_resources/war -->
|
||||||
|
<!-- a) so, we apply the moduleSource on top of the warTarget -->
|
||||||
|
<!-- b) warSource is not really needed in this case -->
|
||||||
|
<!-- ======================================================================================= -->
|
||||||
|
<target name="assemble-module-war"
|
||||||
|
depends="init-source-paths"
|
||||||
|
description="apply specified module to buildomatic/install_resources/war location">
|
||||||
|
|
||||||
|
<!-- macro to set the webapp context value: CE or Pro -->
|
||||||
|
|
||||||
|
<check-webapp-context/>
|
||||||
|
|
||||||
|
<check-for-moduleBase-assemble/>
|
||||||
|
|
||||||
|
<!-- in code below, we need to get the right names for the source and target webappnames -->
|
||||||
|
<!-- for instance, for ce we use the following: -->
|
||||||
|
<!-- webAppNameSrcCE (from conf_source/default.properties) -->
|
||||||
|
<!-- webAppNameCE (from user setting in default_master.properties - can be customized) -->
|
||||||
|
<if>
|
||||||
|
<equals arg1="${webAppContext}" arg2="CE" />
|
||||||
|
<then>
|
||||||
|
<property name="moduleSource" value="${moduleBase}/${moduleName}/${war}/${webAppNameSrcCE}"/>
|
||||||
|
<property name="warSource" value="${warDir}/${webAppNameSrcCE}"/>
|
||||||
|
<property name="warTarget" value="${warDir}/${webAppNameCE}"/>
|
||||||
|
</then>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="${webAppContext}" arg2="Pro" />
|
||||||
|
<then>
|
||||||
|
<echo message="webAppContext is: Pro"/>
|
||||||
|
<property name="moduleSource" value="${moduleBase}/${moduleName}/${war}/${webAppNameSrcPro}"/>
|
||||||
|
<property name="warSource" value="${warDir}/${webAppNameSrcPro}"/>
|
||||||
|
<property name="warTarget" value="${warDir}/${webAppNamePro}"/>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<else>
|
||||||
|
<echo message="WARNING: unable to determine webAppContext, ${webAppContext}"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<!-- print out paths we are using -->
|
||||||
|
<echo message="assemble-module-war: Path settings used: "/>
|
||||||
|
<echo message="moduleBase=${moduleBase}"/>
|
||||||
|
<echo message="moduleName=${moduleName}"/>
|
||||||
|
<echo message="moduleSource=${moduleSource}"/>
|
||||||
|
<echo message="warSource=${warSource}"/>
|
||||||
|
<echo message="warTarget=${warTarget}"/>
|
||||||
|
|
||||||
|
<check-dir dir="${moduleSource}"/>
|
||||||
|
<check-dir dir="${warSource}"/>
|
||||||
|
<check-dir dir="${warTarget}"/>
|
||||||
|
|
||||||
|
<if>
|
||||||
|
<equals arg1="${warSource}" arg2="${warTarget}" />
|
||||||
|
<then>
|
||||||
|
<echo message="warSource, warTarget are the same. Do not need to copy from source"/>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<echo message="copying from source to target"/>
|
||||||
|
<copy-war warSource="${warSource}" warTarget="${warTarget}" />
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<apply-module moduleBase="${moduleBase}"
|
||||||
|
moduleName="${moduleName}"
|
||||||
|
moduleSource="${moduleSource}"
|
||||||
|
warSource="${warSource}"
|
||||||
|
warTarget="${warTarget}"/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
|
||||||
|
</project>
|
||||||
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,117 @@
|
||||||
|
@ECHO OFF
|
||||||
|
|
||||||
|
:: Windows 2000 and later only
|
||||||
|
IF NOT "%OS%"=="Windows_NT" GOTO OsErr
|
||||||
|
|
||||||
|
:: Remove the following line to use this batch file
|
||||||
|
:: in Windows NT 4 with the Resource Kit installed
|
||||||
|
VER | FIND "Windows NT" >NUL && GOTO OsErr
|
||||||
|
|
||||||
|
:: Help required?
|
||||||
|
IF NOT "%~1"=="" GOTO Syntax
|
||||||
|
|
||||||
|
:: Enable Command Extensions and use local variables
|
||||||
|
VERIFY OTHER 2>nul
|
||||||
|
SETLOCAL ENABLEEXTENSIONS
|
||||||
|
IF ERRORLEVEL 1 GOTO CmdExtErr
|
||||||
|
|
||||||
|
:: Export registry settings to a temporary file
|
||||||
|
START /W REGEDIT /E "%Temp%.\_TimeTemp.reg" "HKEY_CURRENT_USER\Control Panel\International"
|
||||||
|
:: Read the time format from the exported data
|
||||||
|
FOR /F "tokens=1* delims==" %%A IN ('TYPE "%Temp%.\_TimeTemp.reg" ^| FINDSTR /R /I /B /C:"\"iTime\"="') DO SET iTime=%%~B
|
||||||
|
:: Thanks for Daniel R. Foster for correcting a typo in the next line
|
||||||
|
FOR /F "tokens=1* delims==" %%A IN ('TYPE "%Temp%.\_TimeTemp.reg" ^| FINDSTR /R /I /B /C:"\"sTime\"="') DO SET sTime=%%~B
|
||||||
|
DEL "%Temp%.\_TimeTemp.reg"
|
||||||
|
|
||||||
|
:: Store current time in default Locale format
|
||||||
|
FOR /F "tokens=*" %%A IN ('TIME/T') DO SET Now=%%A
|
||||||
|
|
||||||
|
:: Format time depending on registry settings
|
||||||
|
FOR /F "tokens=1,2* delims=%sTime% " %%A IN ('ECHO %Now%') DO (
|
||||||
|
SET Hour=%%A
|
||||||
|
SET Mins=%%B
|
||||||
|
)
|
||||||
|
:: Translate AM/PM to 24 hours format;
|
||||||
|
:: A correction was required for Windows XP,
|
||||||
|
:: thanks for Harry Teufel for finding this bug
|
||||||
|
ECHO.%Mins%| FIND /I "AM" >NUL && SET AmPm=A
|
||||||
|
ECHO.%Mins%| FIND /I "PM" >NUL && SET AmPm=P
|
||||||
|
:: AM/PM can be all upper or mixed case, with or without leading space; we'll just erase all possible characters
|
||||||
|
SET Mins=%Mins: =%
|
||||||
|
SET Mins=%Mins:A=%
|
||||||
|
SET Mins=%Mins:a=%
|
||||||
|
SET Mins=%Mins:M=%
|
||||||
|
SET Mins=%Mins:m=%
|
||||||
|
SET Mins=%Mins:P=%
|
||||||
|
SET Mins=%Mins:p=%
|
||||||
|
IF 1%Hour% LSS 20 SET Hour=0%Hour%
|
||||||
|
IF 1%Mins% LSS 20 SET Mins=0%Mins%
|
||||||
|
IF %Hour% LSS 12 IF /I "%AmPm%"=="P" SET /A Hour=1%Hour%-88
|
||||||
|
IF %Hour% EQU 12 IF /I "%AmPm%"=="A" SET Hour=00
|
||||||
|
SET Now=%Hour%%sTime%%Mins%
|
||||||
|
|
||||||
|
:Sort
|
||||||
|
FOR /F "tokens=1,2* delims=%sTime% " %%A IN ('ECHO %Now%') DO SET SortTime=%%A-%%B
|
||||||
|
:: Thanks for Holger Stein who mailed me this correction (add leading zero):
|
||||||
|
IF %SortTime% LSS 1000 IF %SortTime% GEQ 100 SET SortTime=0%SortTime%
|
||||||
|
|
||||||
|
:: Purge local variables except SortTime
|
||||||
|
ENDLOCAL & SET NOW_HH_MM=%SortTime%
|
||||||
|
GOTO End
|
||||||
|
|
||||||
|
:CmdExtErr
|
||||||
|
ECHO.
|
||||||
|
ECHO Command extensions need to be enabled for this batch file to run correctly.
|
||||||
|
ECHO.
|
||||||
|
ECHO You can run this batch file using the command:
|
||||||
|
ECHO.
|
||||||
|
ECHO CMD /X %~n0
|
||||||
|
ECHO.
|
||||||
|
ECHO to enable command extensions, however, the results will not be saved in
|
||||||
|
ECHO environment variables that way.
|
||||||
|
GOTO Syntax
|
||||||
|
|
||||||
|
:OsErr
|
||||||
|
ECHO.
|
||||||
|
ECHO This batch file requires Windows 2000 or a later version!
|
||||||
|
ECHO.
|
||||||
|
ECHO To use this batch file with Windows NT 4 you need to install FINDSTR from
|
||||||
|
ECHO the Resource Kit, and to remove the NT 4 check from this batch file.
|
||||||
|
ECHO Read the comment lines in this batch file for details.
|
||||||
|
|
||||||
|
:Syntax
|
||||||
|
ECHO.
|
||||||
|
ECHO Date utility for Windows NT 4 / 2000 / XP
|
||||||
|
ECHO Saves current time in HH-mm format
|
||||||
|
ECHO to NOW_HH_MM environment variable.
|
||||||
|
ECHO.
|
||||||
|
ECHO Prepared by Vladimir Tsukur on the basis of
|
||||||
|
ECHO SortTime batch script.
|
||||||
|
ECHO.
|
||||||
|
ECHO See below for original disclaimer notes:
|
||||||
|
ECHO.
|
||||||
|
ECHO -----------------------------------------------------------
|
||||||
|
ECHO.
|
||||||
|
ECHO SortTime.bat, Version 3.40 for Windows 2000 / XP
|
||||||
|
ECHO Displays the time of execution in the system's default time format and in
|
||||||
|
ECHO hhmm format for sorting purposes.
|
||||||
|
ECHO.
|
||||||
|
ECHO Usage: SORTTIME
|
||||||
|
ECHO.
|
||||||
|
ECHO Notes: [1] The sorted value is stored in the environment variable SORTTIME.
|
||||||
|
ECHO The SORTTIME value is independent of "International", "Regional"
|
||||||
|
ECHO or "Locale" settings.
|
||||||
|
ECHO [2] This batch file uses native Windows 2000 commands only.
|
||||||
|
ECHO To allow the use in Windows NT 4, make sure FINDSTR from the
|
||||||
|
ECHO Resource Kit is installed, and remove the NT 4 check from this
|
||||||
|
ECHO batch file. Read the comment lines for details.
|
||||||
|
ECHO [3] KiXtart, Perl, JScript, Rexx and VBScript versions are available
|
||||||
|
ECHO at http://www.robvanderwoude.com/datetimenonbatch.html
|
||||||
|
ECHO.
|
||||||
|
ECHO Written by Rob van der Woude
|
||||||
|
ECHO http://www.robvanderwoude.com
|
||||||
|
ECHO ^(with corrections by Daniel R. Foster, Harry Teufel and Holger Stein^)
|
||||||
|
ECHO.
|
||||||
|
|
||||||
|
:End
|
||||||
|
:: Done
|
||||||
|
|
@ -0,0 +1,52 @@
|
||||||
|
|
||||||
|
Usage: js-upgrade-newdb.(sh/bat) [option] <path>/js-<ver>-export.zip
|
||||||
|
|
||||||
|
Description:
|
||||||
|
|
||||||
|
This "newdb" upgrade shell script expects at least one argument which specifies
|
||||||
|
the path and file name of the export zip file created from the previous JasperServer
|
||||||
|
instance (ie the instance you are upgrading from). This argument should be the path
|
||||||
|
to the export file and the export file name. The path can be full qualified path
|
||||||
|
or a relative path. If the export file resides in the current folder then just
|
||||||
|
the file name can be specified.
|
||||||
|
|
||||||
|
This script will carry out the following general steps:
|
||||||
|
|
||||||
|
- Validate property settings
|
||||||
|
- Validate database connection
|
||||||
|
- Delete the existing, older jasperserver database
|
||||||
|
- Create and initialize the new jasperserver database
|
||||||
|
- Import new jasperserver resources into the database
|
||||||
|
- Import the export zip file specified on the command line
|
||||||
|
- Delete the existing, older jasperserver war file
|
||||||
|
- Deploy the new jasperserver war file
|
||||||
|
|
||||||
|
An additional, optional argument can be given as described below:
|
||||||
|
|
||||||
|
Options Description
|
||||||
|
|
||||||
|
<none> Do standard, default upgrade operations as described above.
|
||||||
|
|
||||||
|
with-samples Do standard, default upgrade operations. Also, import sample resources
|
||||||
|
from the new JasperServer version.
|
||||||
|
|
||||||
|
include-access-events Do standard, default upgrade operations. Also include any access event
|
||||||
|
resources (if present) from older JasperServer version.
|
||||||
|
|
||||||
|
regen-config If you edited your configuration, this will recreate your Buildomatic configuration
|
||||||
|
|
||||||
|
test Run all validation steps and report on any problems. Existing instances and
|
||||||
|
resources will not be modified.
|
||||||
|
|
||||||
|
help Display this help information.
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
|
||||||
|
./js-upgrade-newdb.sh ../../prev-jasperserver/buildomatic/js-<ver>-export.zip
|
||||||
|
|
||||||
|
js-upgrade-newdb.bat ..\..\prev-jasperserver/buildomatic/js-<ver>-export.zip
|
||||||
|
|
||||||
|
./js-upgrade-newdb.sh with-samples js-<ver>-export.zip
|
||||||
|
|
||||||
|
js-upgrade-newdb.bat test
|
||||||
|
|
||||||
|
|
@ -0,0 +1,44 @@
|
||||||
|
|
||||||
|
Usage: js-upgrade-samedb.(sh/bat) [option]
|
||||||
|
|
||||||
|
Description:
|
||||||
|
|
||||||
|
This "samedb" upgrade shell script will perform an upgrade by modifying the existing
|
||||||
|
jasperserver database.
|
||||||
|
|
||||||
|
This script will carry out the following general steps:
|
||||||
|
|
||||||
|
- Validate property settings
|
||||||
|
- Validate database connection
|
||||||
|
- Run SQL script to update the jasperserver database from old schema to new schema
|
||||||
|
- Import new jasperserver resources into the database
|
||||||
|
- Delete the existing, older jasperserver war file
|
||||||
|
- Deploy the new jasperserver war file
|
||||||
|
|
||||||
|
An additional, optional argument can be given as described below:
|
||||||
|
|
||||||
|
Options Description
|
||||||
|
|
||||||
|
<empty> Do standard, default upgrade operations as described above.
|
||||||
|
|
||||||
|
with-samples Do standard, default upgrade operations. Also, import sample resources
|
||||||
|
from the new JasperServer version.
|
||||||
|
|
||||||
|
regen-config If you edited your configuration, this will recreate your Buildomatic configuration
|
||||||
|
|
||||||
|
test Run all validation steps and report on any problems. Existing instances and
|
||||||
|
resources will not be modified.
|
||||||
|
|
||||||
|
help Display this help information.
|
||||||
|
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
|
||||||
|
./js-upgrade-samedb.sh
|
||||||
|
|
||||||
|
js-upgrade-samedb.bat
|
||||||
|
|
||||||
|
./js-upgrade-samedb.sh with-samples
|
||||||
|
|
||||||
|
js-upgrade-samedb.bat test
|
||||||
|
|
||||||
|
|
@ -0,0 +1,651 @@
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<project name="validation">
|
||||||
|
|
||||||
|
<!-- validateJdbcJar: -->
|
||||||
|
<!-- Has attribute: calling-target-context -->
|
||||||
|
<!-- values can be: runSQL, deploy-webapp -->
|
||||||
|
<!-- if runSQL context: fail execution, give info to user if no jdbc driver -->
|
||||||
|
<!-- if deploy-webapp context: continue execution, give user a warning -->
|
||||||
|
<!-- if no jdbc driver found -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- The jdbcJar property can have two values: -->
|
||||||
|
<!-- 1) actual file name (utilizing the artifactId and version properties) -->
|
||||||
|
<!-- 2) a "*.jar" value -->
|
||||||
|
<!-- In the first case validate that the files pointed to exists. -->
|
||||||
|
<!-- In the second case validate that there is at least one file that ends -->
|
||||||
|
<!-- with .jar. (ie driver copied manually be the user) -->
|
||||||
|
<!-- -->
|
||||||
|
<macrodef name="validateJdbcJar">
|
||||||
|
<attribute name="calling-target-context"/>
|
||||||
|
|
||||||
|
<sequential>
|
||||||
|
|
||||||
|
<if>
|
||||||
|
<equals arg1="${jdbcJar}" arg2="*.jar" />
|
||||||
|
<then>
|
||||||
|
|
||||||
|
<echo>About to validate JDBC jar existence</echo>
|
||||||
|
<echo> Look in: ${currentDbJDBCDir}</echo>
|
||||||
|
|
||||||
|
<condition property="jdbcMoreThanOne">
|
||||||
|
<!-- chk num jars greater or equal one -->
|
||||||
|
<resourcecount when="ge" count="1">
|
||||||
|
<fileset id="jarNames" dir="${currentDbJDBCDir}" includes="*.jar"/>
|
||||||
|
</resourcecount>
|
||||||
|
</condition>
|
||||||
|
|
||||||
|
<if>
|
||||||
|
<isset property="jdbcMoreThanOne" />
|
||||||
|
<then>
|
||||||
|
<echo> Found jar file: assuming OK</echo>
|
||||||
|
<!-- print out the name(s) of the jar(s) found -->
|
||||||
|
<echo> Jar or Jars found: ${toString:jarNames} </echo>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<!-- chk if context is runSQL or deploy-webapp -->
|
||||||
|
<if>
|
||||||
|
<equals arg1="@{calling-target-context}" arg2="runSQL" />
|
||||||
|
<then>
|
||||||
|
<echo>context is runSQL</echo>
|
||||||
|
<echo> jar not found</echo>
|
||||||
|
<setJdbcDownloadURL />
|
||||||
|
<displayJdbcErrorMsg/>
|
||||||
|
<fail>WARNING: STOP EXECUTION: no JDBC driver jar found (see above)</fail>
|
||||||
|
</then>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="@{calling-target-context}" arg2="deploy-webapp" />
|
||||||
|
<then>
|
||||||
|
<echo> jar not found</echo>
|
||||||
|
<displayJdbcWarningMsg/>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<else>
|
||||||
|
<echo>validateJdbcJar: WARNING: invalid context,
|
||||||
|
calling-target-context=@{calling-target-context}</echo>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
|
||||||
|
</then>
|
||||||
|
<elseif>
|
||||||
|
<!-- validate that fully qualified jar file path is good -->
|
||||||
|
<and>
|
||||||
|
<isset property="maven.jdbc.artifactId" />
|
||||||
|
<isset property="maven.jdbc.version" />
|
||||||
|
</and>
|
||||||
|
<then>
|
||||||
|
<echo>For JDBC driver the artifactId and version properties are set:</echo>
|
||||||
|
<echo> maven.jdbc.artifactId=${maven.jdbc.artifactId}</echo>
|
||||||
|
<echo> maven.jdbc.version=${maven.jdbc.version}</echo>
|
||||||
|
<if>
|
||||||
|
<available file="${currentDbJDBCDir}/${jdbcJar}"/>
|
||||||
|
<then>
|
||||||
|
<echo> Specified JDBC driver jar exists</echo>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<echo> Specified JDBC driver jar not found on this path: </echo>
|
||||||
|
<echo> ${currentDbJDBCDir}/${jdbcJar}</echo>
|
||||||
|
|
||||||
|
<!-- chk if context is runSQL or deploy-webapp -->
|
||||||
|
<if>
|
||||||
|
<equals arg1="@{calling-target-context}" arg2="runSQL" />
|
||||||
|
<then>
|
||||||
|
<setJdbcDownloadURL />
|
||||||
|
<displayJdbcErrorMsg/>
|
||||||
|
<fail>WARNING: STOP EXECUTION: no JDBC driver jar found (see above)</fail>
|
||||||
|
</then>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="@{calling-target-context}" arg2="deploy-webapp" />
|
||||||
|
<then>
|
||||||
|
<displayJdbcWarningMsg/>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<else>
|
||||||
|
<echo>validateJdbcJar: WARNING: invalid context,
|
||||||
|
calling-target-context=@{calling-target-context}</echo>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<else>
|
||||||
|
<echo>WARNING: something is wrong with jdbcJar property, jdbcJar=${jdbcJar}</echo>
|
||||||
|
<echo>WARNING: should not get to this else condition</echo>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<macrodef name="displayJdbcErrorMsg">
|
||||||
|
<sequential>
|
||||||
|
<echo> </echo>
|
||||||
|
<echo> </echo>
|
||||||
|
<echo>=============== PLEASE READ THESE INSTRUCTIONS =============== </echo>
|
||||||
|
<echo> </echo>
|
||||||
|
<echo>WARNING: STOP EXECUTION: no JDBC driver jar found </echo>
|
||||||
|
<echo> </echo>
|
||||||
|
<echo>Instructions: </echo>
|
||||||
|
<echo> </echo>
|
||||||
|
<echo> 1) Please download a JDBC driver for the "${dbType}" database </echo>
|
||||||
|
<echo> A driver can be found at the following general location: </echo>
|
||||||
|
<echo> </echo>
|
||||||
|
<echo> ${jdbcDownloadURL} </echo>
|
||||||
|
<echo> </echo>
|
||||||
|
<echo> 2) Copy the JDBC driver to the following buildomatic location: </echo>
|
||||||
|
<echo> </echo>
|
||||||
|
<echo> ${currentDbJDBCDir} </echo>
|
||||||
|
<echo> </echo>
|
||||||
|
<echo> 3) Re-run this installation step </echo>
|
||||||
|
<echo> </echo>
|
||||||
|
<echo>=============== PLEASE READ THESE INSTRUCTIONS =============== </echo>
|
||||||
|
<echo> </echo>
|
||||||
|
<echo> </echo>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<macrodef name="displayJdbcWarningMsg">
|
||||||
|
<sequential>
|
||||||
|
<echo> </echo>
|
||||||
|
<echo>========== WARNING: no JDBC driver jar found ================ </echo>
|
||||||
|
<echo> </echo>
|
||||||
|
<echo> No JDBC driver found in the following location: </echo>
|
||||||
|
<echo> ${currentDbJDBCDir} </echo>
|
||||||
|
<echo> Continuing execution. Make sure to add a JDBC driver to your </echo>
|
||||||
|
<echo> application server. </echo>
|
||||||
|
<echo> </echo>
|
||||||
|
<echo>============================================================== </echo>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<macrodef name="setJdbcDownloadURL">
|
||||||
|
<sequential>
|
||||||
|
<if>
|
||||||
|
<equals arg1="${dbType}" arg2="postgresql" />
|
||||||
|
<then>
|
||||||
|
<property name="jdbcDownloadURL" value="http://jdbc.postgresql.org/download.html"/>
|
||||||
|
</then>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="${dbType}" arg2="mysql" />
|
||||||
|
<then>
|
||||||
|
<property name="jdbcDownloadURL" value="http://dev.mysql.com/downloads/connector/j/"/>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="${dbType}" arg2="oracle" />
|
||||||
|
<then>
|
||||||
|
<property name="jdbcDownloadURL" value="http://www.oracle.com/technetwork/indexes/downloads/index.html"/>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="${dbType}" arg2="sqlserver" />
|
||||||
|
<then>
|
||||||
|
<property name="jdbcDownloadURL" value="http://msdn.microsoft.com/en-us/sqlserver/aa937724"/>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="${dbType}" arg2="db2" />
|
||||||
|
<then>
|
||||||
|
<property name="jdbcDownloadURL" value="http://www-01.ibm.com/software/data/db2/linux-unix-windows/download.html"/>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="${dbType}" arg2="ingres" />
|
||||||
|
<then>
|
||||||
|
<property name="jdbcDownloadURL" value="http://community.ingres.com/wiki/Ingres_JDBC_Driver_Downloads"/>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<else>
|
||||||
|
<echo message="WARNING: unknown database type, dbType=${dbType}"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<macrodef name="validateHostAndPort">
|
||||||
|
<attribute name="host" />
|
||||||
|
<attribute name="port" />
|
||||||
|
<attribute name="type" default="given" />
|
||||||
|
<attribute name="failOnError" default="true" />
|
||||||
|
<attribute name="errorProperty" default="host.or.port.invalid" />
|
||||||
|
|
||||||
|
<sequential>
|
||||||
|
<echo>Checking @{type} host and port:</echo>
|
||||||
|
<!--It`s not correct to fail when host don`t respond on ICMP packages -->
|
||||||
|
<!--<validateHost host="@{host}" failOnError="@{failOnError}" errorProperty="@{errorProperty}" />-->
|
||||||
|
<if>
|
||||||
|
<not>
|
||||||
|
<isset property="@{errorProperty}" />
|
||||||
|
</not>
|
||||||
|
<then>
|
||||||
|
<validatePort host="@{host}" port="@{port}" failOnError="@{failOnError}"
|
||||||
|
errorProperty="@{errorProperty}" />
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<macrodef name="validateHost">
|
||||||
|
<attribute name="host" />
|
||||||
|
<attribute name="failOnError" default="true" />
|
||||||
|
<attribute name="errorProperty" default="host.not.reachable" />
|
||||||
|
|
||||||
|
<sequential>
|
||||||
|
<echo>About to validate host: @{host}</echo>
|
||||||
|
<property name="validateHostTimeout" value="5" />
|
||||||
|
<if>
|
||||||
|
<isreachable host="@{host}" timeout="${validateHostTimeout}" />
|
||||||
|
<then>
|
||||||
|
<echo message=" Host @{host} is OK" />
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<fail>
|
||||||
|
<condition>
|
||||||
|
<istrue value="@{failOnError}" />
|
||||||
|
</condition>
|
||||||
|
Error: host @{host} is not reachable
|
||||||
|
</fail>
|
||||||
|
|
||||||
|
<echo> Error: host @{host} is not reachable</echo>
|
||||||
|
<property name="@{errorProperty}" value="true" />
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
<echo>Done validating host: @{host}</echo>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<macrodef name="validatePort">
|
||||||
|
<attribute name="host" />
|
||||||
|
<attribute name="port" />
|
||||||
|
<attribute name="failOnError" default="true" />
|
||||||
|
<attribute name="errorProperty" default="port.not.reachable" />
|
||||||
|
|
||||||
|
<sequential>
|
||||||
|
<echo>About to validate port: @{host}:@{port}</echo>
|
||||||
|
<if>
|
||||||
|
<socket server="@{host}" port="@{port}" />
|
||||||
|
<then>
|
||||||
|
<echo message=" Port @{port} is OK" />
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<fail>
|
||||||
|
<condition>
|
||||||
|
<istrue value="@{failOnError}" />
|
||||||
|
</condition>
|
||||||
|
Error: port @{port} is not reachable at host @{host}
|
||||||
|
</fail>
|
||||||
|
|
||||||
|
<echo> Error: port @{port} is not reachable at host @{host}</echo>
|
||||||
|
<property name="@{errorProperty}" value="true" />
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
<echo>Done validating port: @{host}:@{port}</echo>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<macrodef name="validatePropsNotBlank">
|
||||||
|
<attribute name="properties"/>
|
||||||
|
|
||||||
|
<sequential>
|
||||||
|
<propertyregex property="list"
|
||||||
|
override="true"
|
||||||
|
input="@{properties}"
|
||||||
|
regexp="\s+"
|
||||||
|
replace=""
|
||||||
|
casesensitive="false" />
|
||||||
|
|
||||||
|
<echo>Checking properties:</echo>
|
||||||
|
<for list="${list}" delimiter="," param="prop" parallel="false">
|
||||||
|
<sequential>
|
||||||
|
<if>
|
||||||
|
<or>
|
||||||
|
<equals arg1="@{prop}" arg2="dbPassword" />
|
||||||
|
<equals arg1="@{prop}" arg2="sysPassword" />
|
||||||
|
</or>
|
||||||
|
<then>
|
||||||
|
<echo> @{prop}=**********</echo>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<echo> @{prop}=${@{prop}}</echo>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
<if>
|
||||||
|
<not>
|
||||||
|
<isset property="@{prop}" />
|
||||||
|
</not>
|
||||||
|
<then>
|
||||||
|
<fail> Error: @{prop} property is not set</fail>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
</sequential>
|
||||||
|
</for>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<!-- ==================================================================== -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- JDBC connection validation and database existence check -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- ==================================================================== -->
|
||||||
|
|
||||||
|
<property name="failOnDBMSConnectionError" value="false" />
|
||||||
|
<property name="failOnDBNotExists" value="false" />
|
||||||
|
<property name="failOnUnrecoverableDBMSConnectionError" value="true" />
|
||||||
|
|
||||||
|
<property name="databaseNotExistsMessage" value="Database doesn't exist" />
|
||||||
|
|
||||||
|
<macrodef name="validateDB"
|
||||||
|
description="Validates JDBC connection and checks existence of the database (written to 'dbExists' variable)">
|
||||||
|
<attribute name="systemName" />
|
||||||
|
<attribute name="phase" default="before" />
|
||||||
|
<attribute name="failOnDBNotExists" default="${failOnDBNotExists}" />
|
||||||
|
<attribute name="failOnUnrecoverableConnectionError" default="${failOnUnrecoverableDBMSConnectionError}" />
|
||||||
|
|
||||||
|
<sequential>
|
||||||
|
<var name="displayNameOfDBToValidate" value="${@{systemName}.db.displayName}" />
|
||||||
|
<var name="connectionURLOfDBToValidate" value="${@{systemName}.jdbcUrl}" />
|
||||||
|
|
||||||
|
<echo>Validating ${displayNameOfDBToValidate} database connection at ${connectionURLOfDBToValidate}. Phase: [@{phase}]</echo>
|
||||||
|
<validateDBMSConnection jdbcUrl="${connectionURLOfDBToValidate}" phase="@{systemName}DB@{phase}" systemName="@{systemName}"
|
||||||
|
failOnConnectionError="@{failOnConnectionError}"
|
||||||
|
failOnDBNotExists="@{failOnDBNotExists}"
|
||||||
|
failOnUnrecoverableConnectionError="@{failOnUnrecoverableConnectionError}">
|
||||||
|
</validateDBMSConnection>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<macrodef name="connectionValidationFailureInfoListener"
|
||||||
|
description="Listens for connection validation failure and prints out information about the failure">
|
||||||
|
<attribute name="errorSqlStateCodeProperty" />
|
||||||
|
<attribute name="errorNativeCodeProperty" />
|
||||||
|
<attribute name="errorMessageProperty" />
|
||||||
|
|
||||||
|
<sequential>
|
||||||
|
<echo>Connection failed:</echo>
|
||||||
|
<echo> SQLState: ${@{errorSqlStateCodeProperty}}</echo>
|
||||||
|
<echo> Vendor specific error code: ${@{errorNativeCodeProperty}}</echo>
|
||||||
|
<echo> Message: [${@{errorMessageProperty}}]</echo>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<macrodef name="hostPortValidationFailureListener"
|
||||||
|
description="Listens for host/port validation failure and prints out information about the failure">
|
||||||
|
<attribute name="failOnUnrecoverableConnectionError" />
|
||||||
|
|
||||||
|
<sequential>
|
||||||
|
<failIfUnrecoverable flag="@{failOnUnrecoverableConnectionError}"
|
||||||
|
message="Invalid host/port combination: [${dbHost}:${dbPort}]" />
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<macrodef name="usernamePasswordValidationFailureListener"
|
||||||
|
description="Listens for userName/password validation failure and prints out information about the failure">
|
||||||
|
<attribute name="failOnUnrecoverableConnectionError" />
|
||||||
|
<attribute name="userName" />
|
||||||
|
<attribute name="password" />
|
||||||
|
|
||||||
|
<sequential>
|
||||||
|
<failIfUnrecoverable flag="@{failOnUnrecoverableConnectionError}"
|
||||||
|
message="Invalid username/password combination: [@{userName}/@{password}]" />
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<macrodef name="dBExistsValidationFailureListener"
|
||||||
|
description="Listens for db exists validation failure and prints out information about the failure">
|
||||||
|
<attribute name="failOnDBNotExists" />
|
||||||
|
|
||||||
|
<sequential>
|
||||||
|
<var name="dbExists" value="false" />
|
||||||
|
<if>
|
||||||
|
<and>
|
||||||
|
<equals arg1="${strategy}" arg2="inDatabase" />
|
||||||
|
<equals arg1="${js.setup.mode}" arg2="upgrade" />
|
||||||
|
</and>
|
||||||
|
<then>
|
||||||
|
<failIfUnrecoverable flag="true"
|
||||||
|
message="${databaseNotExistsMessage}" />
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<failIfUnrecoverable flag="@{failOnDBNotExists}"
|
||||||
|
message="${databaseNotExistsMessage}" />
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<macrodef name="genericConnectionValidationFailureListener"
|
||||||
|
description="Listens generic connection validation failure and prints out information about the failure">
|
||||||
|
<attribute name="failOnUnrecoverableConnectionError" />
|
||||||
|
<attribute name="errorMessageProperty" />
|
||||||
|
|
||||||
|
<sequential>
|
||||||
|
<failIfUnrecoverable flag="@{failOnUnrecoverableConnectionError}"
|
||||||
|
message="Generic connection failure: [${@{errorMessageProperty}}]" />
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<macrodef name="connectionOKValidationListener"
|
||||||
|
description="Listens for successfully connection and prints out information about the failure">
|
||||||
|
|
||||||
|
<sequential>
|
||||||
|
<var name="dbExists" value="true" />
|
||||||
|
<echo>Connection OK</echo>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<macrodef name="failIfUnrecoverable"
|
||||||
|
description="Fails build with message about unrecoverable problem with JDBC connection if flag is set to 'true'.
|
||||||
|
Otherwise just prints the warning.">
|
||||||
|
<attribute name="flag" />
|
||||||
|
<attribute name="message" />
|
||||||
|
|
||||||
|
<sequential>
|
||||||
|
<if>
|
||||||
|
<istrue value="@{flag}" />
|
||||||
|
<then>
|
||||||
|
<fail>@{message}. Treating problem with JDBC connection as unrecoverable</fail>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<echo>@{message}. Treating problem with JDBC connection as noncritical. Proceeding to next step</echo>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
<!-- ==================================================================== -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- Core install and upgrade check -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- ==================================================================== -->
|
||||||
|
|
||||||
|
<target name="do-install-upgrade-test"
|
||||||
|
description="Tests system before installing or upgrading JasperServer">
|
||||||
|
|
||||||
|
<!-- comment out line below if there is a "hang" error on validateHost step -->
|
||||||
|
<validateHostAndPort host="${dbHost}" port="${dbPort}" type="DBMS" />
|
||||||
|
<if>
|
||||||
|
<not>
|
||||||
|
<equals arg1="${dbType}" arg2="db2" />
|
||||||
|
</not>
|
||||||
|
<then>
|
||||||
|
<validateDB systemName="admin" phase="test" failOnDBNotExists="true" />
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
<validateDB systemName="js" phase="test" />
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ==================================================================== -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- Pre-install check -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- ==================================================================== -->
|
||||||
|
|
||||||
|
<target name="do-pre-install-test"
|
||||||
|
description="Tests system before installing JasperServer"
|
||||||
|
depends="do-install-upgrade-test">
|
||||||
|
|
||||||
|
<validateDB systemName="foodmart" phase="test" />
|
||||||
|
<validateDB systemName="sugarcrm" phase="test" />
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="pre-install-test-ce"
|
||||||
|
depends="test-ce-all-props, check-dbtype-ce, test-appServerType-ce, do-pre-install-test"
|
||||||
|
description="Tests system before installing JasperServer CE">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="pre-install-test-pro"
|
||||||
|
depends="test-pro-all-props, check-dbtype-pro, test-appServerType-pro, do-pre-install-test"
|
||||||
|
description="Tests system before installing JasperServer Pro">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="check-dbtype-ce"
|
||||||
|
description="Check DB type for JasperServer CE">
|
||||||
|
<if>
|
||||||
|
<not>
|
||||||
|
<or>
|
||||||
|
<equals arg1="${dbType}" arg2="mysql" />
|
||||||
|
<equals arg1="${dbType}" arg2="postgresql" />
|
||||||
|
</or>
|
||||||
|
</not>
|
||||||
|
<then>
|
||||||
|
<fail>JasperServer CE doesn't support ${dbType} DB type!</fail>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="check-dbtype-pro"
|
||||||
|
description="Check DB type for JasperServer Pro">
|
||||||
|
<if>
|
||||||
|
<not>
|
||||||
|
<or>
|
||||||
|
<equals arg1="${dbType}" arg2="mysql" />
|
||||||
|
<equals arg1="${dbType}" arg2="postgresql" />
|
||||||
|
<equals arg1="${dbType}" arg2="oracle" />
|
||||||
|
<equals arg1="${dbType}" arg2="sqlserver" />
|
||||||
|
<equals arg1="${dbType}" arg2="db2" />
|
||||||
|
</or>
|
||||||
|
</not>
|
||||||
|
<then>
|
||||||
|
<fail>JasperServer Pro doesn't support ${dbType} DB type!</fail>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="test-appServerType-ce"
|
||||||
|
description="Check application server type for JasperServer CE">
|
||||||
|
<if>
|
||||||
|
<not>
|
||||||
|
<or>
|
||||||
|
<equals arg1="${appServerType}" arg2="skipAppServerCheck" />
|
||||||
|
<equals arg1="${appServerType}" arg2="tomcat" />
|
||||||
|
<equals arg1="${appServerType}" arg2="jboss-eap-6" />
|
||||||
|
<equals arg1="${appServerType}" arg2="jboss-eap-7" />
|
||||||
|
<equals arg1="${appServerType}" arg2="wildfly" />
|
||||||
|
<equals arg1="${appServerType}" arg2="glassfish" />
|
||||||
|
</or>
|
||||||
|
</not>
|
||||||
|
<then>
|
||||||
|
<fail>JasperServer CE doesn't support ${appServerType} application server type!</fail>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="test-appServerType-pro"
|
||||||
|
description="Check application server type for JasperServer Pro">
|
||||||
|
<if>
|
||||||
|
<not>
|
||||||
|
<or>
|
||||||
|
<equals arg1="${appServerType}" arg2="skipAppServerCheck" />
|
||||||
|
<equals arg1="${appServerType}" arg2="tomcat" />
|
||||||
|
<equals arg1="${appServerType}" arg2="jboss-eap-6" />
|
||||||
|
<equals arg1="${appServerType}" arg2="jboss-eap-7" />
|
||||||
|
<equals arg1="${appServerType}" arg2="wildfly" />
|
||||||
|
<equals arg1="${appServerType}" arg2="glassfish" />
|
||||||
|
</or>
|
||||||
|
</not>
|
||||||
|
<then>
|
||||||
|
<fail>JasperServer Pro doesn't support ${appServerType} application server type!</fail>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ==================================================================== -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- Pre-upgrade check -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- ==================================================================== -->
|
||||||
|
|
||||||
|
<target name="do-pre-upgrade-test"
|
||||||
|
description="Tests system before upgrading JasperServer"
|
||||||
|
depends="do-install-upgrade-test">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="pre-upgrade-test-ce"
|
||||||
|
depends="test-ce-all-props, check-dbtype-for-upgrade-ce, do-pre-upgrade-test"
|
||||||
|
description="Tests system before upgrading JasperServer CE">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="pre-upgrade-test-pro"
|
||||||
|
depends="test-pro-all-props, check-dbtype-for-upgrade-pro, do-pre-upgrade-test"
|
||||||
|
description="Tests system before upgrading JasperServer Pro">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="check-dbtype-for-upgrade-ce"
|
||||||
|
description="Check DB type for JasperServer CE">
|
||||||
|
<if>
|
||||||
|
<and>
|
||||||
|
<not>
|
||||||
|
<or>
|
||||||
|
<equals arg1="${dbType}" arg2="mysql" />
|
||||||
|
<equals arg1="${dbType}" arg2="postgresql" />
|
||||||
|
</or>
|
||||||
|
</not>
|
||||||
|
<equals arg1="${strategy}" arg2="inDatabase" />
|
||||||
|
</and>
|
||||||
|
<then>
|
||||||
|
<fail>JasperServer CE doesn't support "in-database" upgrade strategy for ${dbType} DB type!</fail>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="check-dbtype-for-upgrade-pro"
|
||||||
|
description="Check DB type for JasperServer Pro">
|
||||||
|
<if>
|
||||||
|
<and>
|
||||||
|
<not>
|
||||||
|
<or>
|
||||||
|
<equals arg1="${dbType}" arg2="mysql" />
|
||||||
|
<equals arg1="${dbType}" arg2="oracle" />
|
||||||
|
<equals arg1="${dbType}" arg2="sqlserver" />
|
||||||
|
<equals arg1="${dbType}" arg2="db2" />
|
||||||
|
<equals arg1="${dbType}" arg2="postgresql" />
|
||||||
|
</or>
|
||||||
|
</not>
|
||||||
|
<equals arg1="${strategy}" arg2="inDatabase" />
|
||||||
|
</and>
|
||||||
|
<then>
|
||||||
|
<fail>JasperServer Pro doesn't support "in-database" upgrade strategy for ${dbType} DB type!</fail>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
</project>
|
||||||
Binary file not shown.
|
|
@ -0,0 +1,557 @@
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<project name="buildomatic" default="help-build">
|
||||||
|
|
||||||
|
<!-- ======================================================================= -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- This file is the starting point for buildomatic execution -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- ======================================================================= -->
|
||||||
|
|
||||||
|
<!-- Checking Ant version. -->
|
||||||
|
|
||||||
|
<property name="js.buildomatic.ant.version.prerequisite" value="1.8.1" />
|
||||||
|
|
||||||
|
<condition property="js.buildomatic.ant.version.is-compatible">
|
||||||
|
<antversion atleast="${js.buildomatic.ant.version.prerequisite}" />
|
||||||
|
</condition>
|
||||||
|
|
||||||
|
<fail unless="js.buildomatic.ant.version.is-compatible">
|
||||||
|
Buildomatic requires Ant ${js.buildomatic.ant.version.prerequisite} or higher. You are using an older version of Ant. Upgrade required
|
||||||
|
</fail>
|
||||||
|
|
||||||
|
<!-- Checking presence of Ant Contrib. -->
|
||||||
|
|
||||||
|
<condition property="js.buildomatic.ant.contrib.available">
|
||||||
|
<available resource="net/sf/antcontrib/antlib.xml" />
|
||||||
|
</condition>
|
||||||
|
|
||||||
|
<fail unless="js.buildomatic.ant.contrib.available">
|
||||||
|
Buildomatic requires ant-contrib library but it was not found on the classpath
|
||||||
|
</fail>
|
||||||
|
|
||||||
|
<!-- ======================================================================= -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- File Imports -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- ======================================================================= -->
|
||||||
|
|
||||||
|
<import file="bin/setup.xml"/>
|
||||||
|
|
||||||
|
<!-- load install targets -->
|
||||||
|
<import file="bin/install.xml"/>
|
||||||
|
|
||||||
|
<!-- Validation/test mode targets and macros. -->
|
||||||
|
<import file="bin/validation.xml"/>
|
||||||
|
|
||||||
|
<!-- load dev targets, if available -->
|
||||||
|
<import file="bin/dev.xml" optional="true"/>
|
||||||
|
|
||||||
|
<!-- load module manager, if available -->
|
||||||
|
<import file="bin/module-manager.xml" optional="true"/>
|
||||||
|
|
||||||
|
<!-- load targets which build separate modules -->
|
||||||
|
<import file="bin/restart-build.xml" optional="true"/>
|
||||||
|
|
||||||
|
<!-- load FTP targets (OPTIONAL) -->
|
||||||
|
<import file="../jasperserver-ftp/build.xml" optional="true"/>
|
||||||
|
|
||||||
|
<!-- ======================================================================= -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- Help Info on buildomatic targets -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- ======================================================================= -->
|
||||||
|
|
||||||
|
<target name="help" depends="help-build">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="help-build" depends="">
|
||||||
|
<echo message=" Handy Buildomatic Source Build Targets: "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Building Everything: "/>
|
||||||
|
<echo message=" -------------------- "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" build-all (Builds ce and pro source base, builds the pro js database "/>
|
||||||
|
<echo message=" runs the integration tests and creates the production data) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" build-all-deploy (Does the above steps, then deploys the pro war file) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" build-all-svn-update (First updates ce, pro, and repo source code from svn, "/>
|
||||||
|
<echo message=" then does all of the build-all steps) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" build-all-ce (Builds ce source base, builds the ce js database, runs the "/>
|
||||||
|
<echo message=" ce integration tests and creates the ce production data) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Run Integration Tests: "/>
|
||||||
|
<echo message=" ---------------------- "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" re-init-js-db-pro (drop js db, create js db, initialize js db with schema) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" run-integration-tests-pro (run integration tests [will not leave resources in the js db. "/>
|
||||||
|
<echo message=" you can run this target repeatedly]) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Run Your Own Integration Test: "/>
|
||||||
|
<echo message=" ------------------------------ "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" run-integration-tests-pro -DuseXmlFile=testng-example-tests-pro.xml (use example xml file) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Run Production Data: "/>
|
||||||
|
<echo message=" -------------------- "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" re-init-js-db-pro (drop js db, create js db, initialize js db with schema) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" run-production-data-pro (run production data [this will load resources into the js db. "/>
|
||||||
|
<echo message=" you need this 'core' data in order to startup jasperserver]) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Update and Build Source: "/>
|
||||||
|
<echo message=" ------------------------ "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" cd jrs-ce-src "/>
|
||||||
|
<echo message=" svn update (update ce source) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" cd jrs-pro-src "/>
|
||||||
|
<echo message=" svn update (update pro source) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" build-src-all (builds ce and pro source) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" build-ce (builds just the ce source) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" build-pro (builds just the pro source) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Deploy the WAR File: "/>
|
||||||
|
<echo message=" -------------------- "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" deploy-webapp-pro (deploy the war to your specified App Server) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Build a Single Folder: "/>
|
||||||
|
<echo message=" ---------------------- "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" build-dir-pro -DdirName=folder-name (example: build-dir-pro -DdirName=datarator) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" build-dir-ce -DdirName=folder-name (example: build-dir-ce -DdirName=jasperserver-api "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Community Source Targets: "/>
|
||||||
|
<echo message=" ------------------------- "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Most of the targets ending with '-pro' have equivalent targets ending with '-ce' "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" default_master.properties File: "/>
|
||||||
|
<echo message=" ------------------------------- "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" All of these targets assume that you have a buildomatic/default_master.properties in place. "/>
|
||||||
|
<echo message=" For additional information see the comments in your default_master.properties file or the "/>
|
||||||
|
<echo message=" properties template file found at buildomatic/sample_conf/source/postgresql_master.properties. "/>
|
||||||
|
<echo message=" Also see Section 3.4 'Configuring the Buildomatic Properties' in the JasperReports Server "/>
|
||||||
|
<echo message=" Source Build Guide. "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Collect Pro Buildomatic Files: "/>
|
||||||
|
<echo message=" ------------------------------ "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" If you are an internal Jaspersoft developer and you want to setup in order to work with a "/>
|
||||||
|
<echo message=" commercial database, you can run the following command to copy Pro buildomatic files to your "/>
|
||||||
|
<echo message=" standard buildomatic folder: "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" assemble-pro-buildomatic-files "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" (If you get an error about using an 'unsupported database', make a temporary change to your "/>
|
||||||
|
<echo message=" default_master.properties. Change, for instance, dbType=oracle to dbType=postgresql. Then "/>
|
||||||
|
<echo message=" change this property back after the command runs successfully.) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Help Targets: "/>
|
||||||
|
<echo message=" ------------- "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" ant help (display this current help page) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" ant help-install (display help on how to install JasperReports Server) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" ant help-install-manual (display help on manual buildomatic install steps) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" ant help-sample-data (display help on setup of sample databases) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" ant help-java-options (display help on settings for JasperServer Java runtime options) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" ant help-with-license (display help on setup of the JasperServer license file - pro only) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Also, for more information, refer to the JasperReports Server Install Guide and the "/>
|
||||||
|
<echo message=" JasperReports Server Source Build Guide. Both are found in the js-src/docs folder. "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="help-install" depends="">
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" JasperReports Server Installation Steps "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Install Using the js-install Script: "/>
|
||||||
|
<echo message=" ------------------------------------ "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" First create a default_master.properties file which should be located in the "/>
|
||||||
|
<echo message=" js-install/buildomatic folder (this file will hold your local settings). "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" For a default_master.properties template, copy from the buildomatic/sample_conf folder. "/>
|
||||||
|
<echo message=" Choose a template that matches your database type and rename to default_master.properties. "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Validate that you settings are correct for your Application Server and your Database. "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Stop your Application Server (except Glassfish) and leave your Database running. "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" cd to folder: js-install/buildomatic "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" execute: "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" js-install.sh or "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" js-install.bat "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Java Memory Settings: "/>
|
||||||
|
<echo message=" --------------------- "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" To run JasperReports Server effectively, you will need to increase the memory settings for "/>
|
||||||
|
<echo message=" your JAVA_OPTS. This is done via an environment variable or in the Application Server "/>
|
||||||
|
<echo message=" startup script. See Section 6.2 'Setting JVM Options for Application Servers'. "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Complete Installation Information: "/>
|
||||||
|
<echo message=" ---------------------------------- "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" For complete information on Installing JasperReports Server please see the "/>
|
||||||
|
<echo message=" js-install/docs/JasperReports-Server-Install-Guide.pdf. "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Help for Manual Buildomatic Targets: "/>
|
||||||
|
<echo message=" ------------------------------------ "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" ant help-install-manual "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="help-install-manual" depends="">
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Help for Buildomatic Manual Installation Steps "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" The recommended procedure for installing JasperReports Server is to use the 'binary' installer "/>
|
||||||
|
<echo message=" or the buildomatic js-install.sh/bat script. "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" However, for many Production environments running automated installation scripts which make "/>
|
||||||
|
<echo message=" database updates is not permitted. In this type of Production environment, it would be more "/>
|
||||||
|
<echo message=" typical to hand the database creation and initialization scripts to the Database Administrator. "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" The Database Administrator would create and initialize the database and the Application Server "/>
|
||||||
|
<echo message=" Administrator would complete the installation of the JasperReports Server WAR file and "/>
|
||||||
|
<echo message=" any additional configuration settings. "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Manual Buildomatic Steps: "/>
|
||||||
|
<echo message=" ------------------------- "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" (First have Database Administrator create the jasperserver database) "/>
|
||||||
|
<echo message=" (add full details here) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" (Then setup buildomatic/default_master.properties) "/>
|
||||||
|
<echo message=" (add full details here) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Next, run these commands: "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" js-ant import-minimal-pro "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" js-ant deploy-webapp-pro "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="help-sample-data" depends="">
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Help for Setup of Sample Databases "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" In order to successfully run the JasperServer integration tests, you must have two sample "/>
|
||||||
|
<echo message=" databases in place. These databases are the following: "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" sugarcrm "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" foodmart "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" We have scripts and functionality in place to be able to create these sample databases on "/>
|
||||||
|
<echo message=" all five of our supported database platforms: PostgreSQL, MySQL, Oracle, SQL Server, and DB2 "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Create and Load Sample Databases: "/>
|
||||||
|
<echo message=" --------------------------------- "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" First setup your default_master.properties for your database type "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" js-ant create-sugarcrm-db "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" js-ant load-sugarcrm-db "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" js-ant create-foodmart-db "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" js-ant load-foodmart-db "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Load Sample Resources to jasperserver Database: "/>
|
||||||
|
<echo message=" ----------------------------------------------- "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" js-ant re-init-js-db-pro "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" js-ant import-sample-data-pro "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" (or js-ant run-production-data-pro) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Run All Targets in One Step: "/>
|
||||||
|
<echo message=" ---------------------------- "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" To run all the above commands in one step, execute the following buildomatic command: "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" js-ant create-load-all-dbs-pro "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Also, refer to the JasperReports Server Source Build Guide for more information. "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
|
||||||
|
<target name="help-java-options" depends="">
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Help for Setting JasperServer Runtime Java Options "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" JasperServer is a relatively large Java Web Application. Because of this it is best to increase "/>
|
||||||
|
<echo message=" the memory settings for the Java JVM. The typical error encountered if you do not increase "/>
|
||||||
|
<echo message=" your default JVM settings will be an error regarding running out of PermGen space. "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" In your Application Server startup script add the following: "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Windows: "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" set JAVA_OPTS=%JAVA_OPTS% -Xms1024m -Xmx2048m -Xss2m -XX:+UseConcMarkSweepGC "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Linux: "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" export JAVA_OPTS="$JAVA_OPTS -Xms1024m -Xmx2048m -Xss2m -XX:+UseConcMarkSweepGC" "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Also, refer to the JasperReports Server Install Guide or Source Build Guide for "/>
|
||||||
|
<echo message=" more information. "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="help-with-license" depends="">
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Help for Setting Up the JasperServer Commercial License "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" In order to run the Commercial version of JasperReports Server, you will need a "/>
|
||||||
|
<echo message=" jasperserver.license file in place. The license file is read by JasperReports Server "/>
|
||||||
|
<echo message=" at startup when the Application Server starts up. "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Setup JasperServer License File: "/>
|
||||||
|
<echo message=" -------------------------------- "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" The simplest way to setup a licenase is to put your jasperserver.license file in the "/>
|
||||||
|
<echo message=" home folder of the User that executes your Application Server. In this case, JasperReports "/>
|
||||||
|
<echo message=" Server will automatically find the license file. "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" (add more details here) "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
<echo message=" Also, refer to Section 6.3 "Setting Up the JasperReports Server License" of the "/>
|
||||||
|
<echo message=" JasperReports Server Install Guide. "/>
|
||||||
|
<echo message=" "/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======================================================================= -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- assemble files targets -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- ======================================================================= -->
|
||||||
|
|
||||||
|
<target name="assemble-pro-buildomatic-files"
|
||||||
|
description="Copy the pro-only buildomatic files on top of the OS buildomatic files">
|
||||||
|
<!-- ========================================================================= -->
|
||||||
|
<!-- 1) Copy the Pro-Only buildomatic files on top of the OS buildomatic files -->
|
||||||
|
<!-- ========================================================================= -->
|
||||||
|
<copy toDir="${js-path}/buildomatic" overwrite="true">
|
||||||
|
<fileset dir="${js-pro-path}/buildomatic-additional">
|
||||||
|
<include name="**"/>
|
||||||
|
</fileset>
|
||||||
|
</copy>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="assemble-export-files-ce"
|
||||||
|
depends="clean-export-files-ce, init-source-paths"
|
||||||
|
description="Delete, then copy os import-export files from os source location">
|
||||||
|
<!-- ========================================================================= -->
|
||||||
|
<!-- The import-export files are generated in the jasperserver source code. -->
|
||||||
|
<!-- In order to run import-export in buildomatic you must first get the most -->
|
||||||
|
<!-- current files from the jasperserver source code. -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- This ensures that we always have the most current import-export files in -->
|
||||||
|
<!-- buildomatic. -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- 1) Unpack the os import-export files in the os source -->
|
||||||
|
<!-- 2) Copy the import-export files to -->
|
||||||
|
<!-- buildomatic/conf_source/ieCe -->
|
||||||
|
<!-- ========================================================================= -->
|
||||||
|
|
||||||
|
<!-- unpack export zip in src location -->
|
||||||
|
<unzip dest="${js-path}/jasperserver-export-package/target"
|
||||||
|
src="${js-path}/jasperserver-export-package/target/js-export-import-tool.zip"
|
||||||
|
overwrite="true"/>
|
||||||
|
|
||||||
|
<copy todir="${buildBase}/conf_source/ieCe" overwrite="true">
|
||||||
|
<fileset dir="${js-path}/jasperserver-export-package/target/js-export-import/config">
|
||||||
|
<exclude name="**/js.jdbc.properties"/>
|
||||||
|
</fileset>
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
<copy todir="${buildBase}/conf_source/ieCe/lib" overwrite="true">
|
||||||
|
<fileset dir="${js-path}/jasperserver-export-package/target/js-export-import/lib"/>
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
<copy toDir="${buildBase}/conf_source/ieCe/lib">
|
||||||
|
<fileset dir="${dbDir}/app-srv-jdbc-drivers" includes="*.jar"/>
|
||||||
|
</copy>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="assemble-export-files-pro"
|
||||||
|
depends="clean-export-files-pro, init-source-paths"
|
||||||
|
description="Delete, then copy pro import-export files from pro source location">
|
||||||
|
<!-- ========================================================================= -->
|
||||||
|
<!-- The import-export files are generated in the jasperserver source code. -->
|
||||||
|
<!-- In order to run import-export in buildomatic you must first get the most -->
|
||||||
|
<!-- current files from the jasperserver source code. -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- This ensures that we always have the most current import-export files in -->
|
||||||
|
<!-- buildomatic. -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- 1) Unpack the pro import-export files in the pro source -->
|
||||||
|
<!-- 2) Copy the import-export files to -->
|
||||||
|
<!-- buildomatic/conf_source/iePro -->
|
||||||
|
<!-- ========================================================================= -->
|
||||||
|
|
||||||
|
<!-- unpack export zip in src location -->
|
||||||
|
<unzip dest="${js-pro-path}/export-tool/target"
|
||||||
|
src="${js-pro-path}/export-tool/target/js-pro-export-import-tool.zip"
|
||||||
|
overwrite="true"/>
|
||||||
|
|
||||||
|
<copy todir="${buildBase}/conf_source/iePro" overwrite="true">
|
||||||
|
<fileset dir="${js-pro-path}/export-tool/target/js-pro-export-import/config">
|
||||||
|
<exclude name="**/js.jdbc.properties"/>
|
||||||
|
<exclude name="log4j-override.properties"/>
|
||||||
|
</fileset>
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
<concat destfile="${buildBase}/conf_source/iePro/log4j.properties" append="true">
|
||||||
|
<file file="${js-pro-path}/export-tool/target/js-pro-export-import/config/log4j-override.properties"/>
|
||||||
|
</concat>
|
||||||
|
|
||||||
|
<copy todir="${buildBase}/conf_source/iePro/lib" overwrite="true">
|
||||||
|
<fileset dir="${js-pro-path}/export-tool/target/js-pro-export-import/lib"/>
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
<copy todir="${buildBase}/conf_source/iePro/adhoc" overwrite="true">
|
||||||
|
<fileset dir="${js-pro-path}/jasperserver-war/target/jasperserver-pro/WEB-INF/adhoc"/>
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
<copy todir="${buildBase}/conf_source/iePro/bundles" overwrite="true">
|
||||||
|
<fileset dir="${js-path}/jasperserver-war/target/jasperserver/WEB-INF/bundles"/>
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
<copy todir="${buildBase}/conf_source/iePro/bundles" overwrite="true">
|
||||||
|
<fileset dir="${js-pro-path}/jasperserver-war/target/jasperserver-pro/WEB-INF/bundles"/>
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
<!-- 2013-09-25 bug 29095 include all the main jdbc drivers into lib folder -->
|
||||||
|
<copy toDir="${buildBase}/conf_source/iePro/lib">
|
||||||
|
<fileset dir="${dbDir}/app-srv-jdbc-drivers" includes="*.jar"/>
|
||||||
|
</copy>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="clean-export-files-ce"
|
||||||
|
description="Delete all files inside the conf_source/ieCe dir">
|
||||||
|
<delete includeEmptyDirs="true" failonerror="false">
|
||||||
|
<fileset dir="${buildBase}/conf_source/ieCe"/>
|
||||||
|
</delete>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="clean-export-files-pro"
|
||||||
|
description="Delete all files inside the conf_source/iePro dir">
|
||||||
|
<delete includeEmptyDirs="true" failonerror="false">
|
||||||
|
<fileset dir="${buildBase}/conf_source/iePro"/>
|
||||||
|
</delete>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="copy-dist-war"
|
||||||
|
description="Copy buildomatic to targetDir. Specify targetDir with -DtargetDir">
|
||||||
|
<!-- ========================================================================= -->
|
||||||
|
<!-- This target is a convenience for copying buildomatic files -->
|
||||||
|
<!-- to a specified location. -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- 1) Be in the buildomatic dir when you execute this task. -->
|
||||||
|
<!-- 2) Specify the target directory with -DtargetDir=<path> -->
|
||||||
|
<!-- Ex: ant -DtargetDir=/home/devuser/js-installer/trunk/target/js-dir -->
|
||||||
|
<!-- ========================================================================= -->
|
||||||
|
|
||||||
|
<if>
|
||||||
|
<isset property="targetDir"/>
|
||||||
|
<then>
|
||||||
|
<property name="copydest" value="${targetDir}"/>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<echo message="-DtargetDir paramater IS *NOT* SET"/>
|
||||||
|
<fail>Error: The copy-dist-war target requires: -DtargetDir option</fail>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<copy toDir="${copydest}/buildomatic">
|
||||||
|
<fileset dir=".">
|
||||||
|
<include name="bin/**"/>
|
||||||
|
<include name="conf_source/**"/>
|
||||||
|
<include name="sample_conf/**"/>
|
||||||
|
<include name="install_resources/sql/**"/>
|
||||||
|
<include name="install_resources/export/**"/>
|
||||||
|
<include name="src/**"/>
|
||||||
|
<include name="target/*.jar"/>
|
||||||
|
<include name="*.xml"/>
|
||||||
|
<include name="*.sh"/>
|
||||||
|
<include name="*.bat"/>
|
||||||
|
</fileset>
|
||||||
|
</copy>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="encrypt-diagnostics-data">
|
||||||
|
<encrypt-zip inFile="${inFile}"
|
||||||
|
encProps="${encProps}" />
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="decrypt-diagnostics-data">
|
||||||
|
<decrypt-zip inFile="${inFile}"
|
||||||
|
encProps="${encProps}" />
|
||||||
|
</target>
|
||||||
|
</project>
|
||||||
Binary file not shown.
Binary file not shown.
|
|
@ -0,0 +1,18 @@
|
||||||
|
conf_source/db/app-srv-jdbc-drivers/readme.txt
|
||||||
|
----------------------------------------------
|
||||||
|
|
||||||
|
Date: 2014-04-21
|
||||||
|
----------------
|
||||||
|
|
||||||
|
This folder is meant to hold the JDBC drivers that are intended to be copied
|
||||||
|
to the lib folder of the application server.
|
||||||
|
|
||||||
|
Note that we do not distribute the mysql JDBC driver because it is licensed
|
||||||
|
under the GPL license and we don't re-distribute 3rd party GPL components.
|
||||||
|
|
||||||
|
Additionally, we are not distributing JDBC drivers from commercial database
|
||||||
|
applications.
|
||||||
|
|
||||||
|
The drivers in this folder will automatically be copied to the application server
|
||||||
|
as part of the buildomatic deploy-webapp-pro/ce target.
|
||||||
|
|
||||||
|
|
@ -0,0 +1,59 @@
|
||||||
|
#
|
||||||
|
# Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
# http://www.jaspersoft.com.
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
|
||||||
|
# default properties template for a db
|
||||||
|
# some of these set defaults if the values aren't set already
|
||||||
|
# others act as templates to plug values in
|
||||||
|
|
||||||
|
# port that database listens on
|
||||||
|
dbPort=3306
|
||||||
|
|
||||||
|
# driver class
|
||||||
|
#jdbcDriverClass=com.mysql.jdbc.Driver
|
||||||
|
jdbcDriverClass=org.mariadb.jdbc.Driver
|
||||||
|
|
||||||
|
# datasource class
|
||||||
|
jdbcDataSourceClass=org.mariadb.jdbc.MySQLDataSource
|
||||||
|
|
||||||
|
#Sql query for testing jdbc connection pool
|
||||||
|
jdbcTestTableQuery=SELECT 1
|
||||||
|
|
||||||
|
# for maven: artifact info so unit tests can get to the correct jdbc driver
|
||||||
|
# 2011-07-07: driver now removed from src
|
||||||
|
#maven.jdbc.groupId=mysql
|
||||||
|
#maven.jdbc.artifactId=mysql-connector-java
|
||||||
|
#maven.jdbc.version=5.1.10
|
||||||
|
#
|
||||||
|
maven.jdbc.groupId=org.mariadb.jdbc
|
||||||
|
maven.jdbc.artifactId=mariadb-java-client
|
||||||
|
maven.jdbc.version=1.6.3
|
||||||
|
|
||||||
|
# hibernate dialect
|
||||||
|
hibernateDialect=org.hibernate.dialect.MySQL5InnoDBDialect
|
||||||
|
|
||||||
|
# quartz delegate class
|
||||||
|
quartz.delegateClass=org.quartz.impl.jdbcjobstore.StdJDBCDelegate
|
||||||
|
|
||||||
|
# prefix for quartz table names
|
||||||
|
quartz.tablePrefix=QRTZ_
|
||||||
|
|
||||||
|
# quartz ddl file (in jasperserver/scripts/quartz)
|
||||||
|
quartz.ddlScript=tables_mysql_innodb.sql
|
||||||
|
|
||||||
|
# datastore helper class for Websphere application server
|
||||||
|
ws.dataStore.helper.class=com.ibm.websphere.rsadapter.GenericDataStoreHelper
|
||||||
|
|
@ -0,0 +1,50 @@
|
||||||
|
#
|
||||||
|
# Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
# http://www.jaspersoft.com.
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
|
||||||
|
# default properties template for a db
|
||||||
|
# these properties act as templates to plug values in
|
||||||
|
|
||||||
|
# default database names
|
||||||
|
js.dbName=jasperserver
|
||||||
|
sugarcrm.dbName=sugarcrm
|
||||||
|
foodmart.dbName=foodmart
|
||||||
|
|
||||||
|
# jdbc url templates...assume same host, port, db type
|
||||||
|
# newer mariadb drivers discard username/password if it is not provided in the url and the url is set after username/password on a javax.sql.DataSource
|
||||||
|
# glassfish sets username before url so this is why we put username/password in the url here
|
||||||
|
# this was introduced by this change https://github.com/MariaDB/mariadb-connector-j/commit/76372ae in version 1.2.0
|
||||||
|
admin.jdbcUrl=jdbc:mysql://${dbHost}:${dbPort}/mysql
|
||||||
|
js.jdbcUrl=jdbc:mysql://${dbHost}:${dbPort}/${js.dbName}?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&autoReconnectForPools=true&tinyInt1isBit=false
|
||||||
|
sugarcrm.jdbcUrl=jdbc:mysql://${dbHost}:${dbPort}/${sugarcrm.dbName}?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&autoReconnectForPools=true&tinyInt1isBit=false
|
||||||
|
foodmart.jdbcUrl=jdbc:mysql://${dbHost}:${dbPort}/${foodmart.dbName}?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&autoReconnectForPools=true&tinyInt1isBit=false
|
||||||
|
|
||||||
|
# Websphere specific properties
|
||||||
|
# jdbc driver properties for jasperserver datasource
|
||||||
|
ws.jdbc.js.properties={{url java.lang.String ${js.jdbcUrl}} \
|
||||||
|
{user java.lang.String ${js.dbUsername}} \
|
||||||
|
{password java.lang.String ${js.dbPassword}} }
|
||||||
|
|
||||||
|
# jdbc driver properties for foodmart datasource
|
||||||
|
ws.jdbc.foodmart.properties={{url java.lang.String ${foodmart.jdbcUrl}} \
|
||||||
|
{user java.lang.String ${foodmart.dbUsername}} \
|
||||||
|
{password java.lang.String ${foodmart.dbPassword}} }
|
||||||
|
|
||||||
|
# jdbc driver properties for sugarcrm datasource
|
||||||
|
ws.jdbc.sugarcrm.properties={{url java.lang.String ${sugarcrm.jdbcUrl}} \
|
||||||
|
{user java.lang.String ${sugarcrm.dbUsername}} \
|
||||||
|
{password java.lang.String ${sugarcrm.dbPassword}} }
|
||||||
|
|
@ -0,0 +1,100 @@
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<project name="db">
|
||||||
|
|
||||||
|
<import file="${buildBin}/db-common.xml"/>
|
||||||
|
|
||||||
|
<!-- database tasks -->
|
||||||
|
|
||||||
|
<macrodef name="validateDBMSConnection">
|
||||||
|
<attribute name="jdbcUrl" />
|
||||||
|
<attribute name="systemName" default="before" />
|
||||||
|
<attribute name="phase" default="before" />
|
||||||
|
<attribute name="failOnConnectionError" default="true" />
|
||||||
|
<attribute name="failOnDBNotExists" default="false" />
|
||||||
|
<attribute name="failOnUnrecoverableConnectionError" default="true" />
|
||||||
|
<attribute name="connectionErrorOccurredProperty" default="connectionErrorOccurredProperty@{phase}" />
|
||||||
|
<attribute name="errorSqlStateCodeProperty" default="errorSqlStateCodeProperty@{phase}" />
|
||||||
|
<attribute name="errorNativeCodeProperty" default="errorNativeCodeProperty@{phase}" />
|
||||||
|
<attribute name="errorMessageProperty" default="errorMessageProperty@{phase}" />
|
||||||
|
|
||||||
|
<sequential>
|
||||||
|
<var name="dbExists" value="" />
|
||||||
|
|
||||||
|
<runSQL jdbcUrl="@{jdbcUrl}"
|
||||||
|
print="false"
|
||||||
|
onerror="abort"
|
||||||
|
failOnConnectionError="@{failOnConnectionError}"
|
||||||
|
connectionErrorOccurredProperty="@{connectionErrorOccurredProperty}"
|
||||||
|
errorSqlStateCodeProperty="@{errorSqlStateCodeProperty}"
|
||||||
|
errorNativeCodeProperty="@{errorNativeCodeProperty}"
|
||||||
|
errorMessageProperty="@{errorMessageProperty}">
|
||||||
|
SELECT 0;
|
||||||
|
</runSQL>
|
||||||
|
|
||||||
|
<if>
|
||||||
|
<isset property="@{connectionErrorOccurredProperty}" />
|
||||||
|
<then>
|
||||||
|
<connectionValidationFailureInfoListener
|
||||||
|
errorSqlStateCodeProperty="@{errorSqlStateCodeProperty}"
|
||||||
|
errorNativeCodeProperty="@{errorNativeCodeProperty}"
|
||||||
|
errorMessageProperty="@{errorMessageProperty}" />
|
||||||
|
<if>
|
||||||
|
<equals arg1="${@{errorSqlStateCodeProperty}}" arg2="08S01" />
|
||||||
|
<then>
|
||||||
|
<hostPortValidationFailureListener
|
||||||
|
failOnUnrecoverableConnectionError="@{failOnUnrecoverableConnectionError}" />
|
||||||
|
</then>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="${@{errorSqlStateCodeProperty}}" arg2="28000" />
|
||||||
|
<then>
|
||||||
|
<usernamePasswordValidationFailureListener
|
||||||
|
failOnUnrecoverableConnectionError="@{failOnUnrecoverableConnectionError}"
|
||||||
|
userName="${dbUsername}"
|
||||||
|
password="${dbPassword}" />
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="${@{errorSqlStateCodeProperty}}" arg2="42000" />
|
||||||
|
<then>
|
||||||
|
<dBExistsValidationFailureListener failOnDBNotExists="@{failOnDBNotExists}" />
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<!-- bug 33000: check mariadb jdbc driver return code when database not found (HY0000) -->
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="${@{errorSqlStateCodeProperty}}" arg2="HY0000" />
|
||||||
|
<then>
|
||||||
|
<dBExistsValidationFailureListener failOnDBNotExists="@{failOnDBNotExists}" />
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<else>
|
||||||
|
<genericConnectionValidationFailureListener
|
||||||
|
failOnUnrecoverableConnectionError="@{failOnUnrecoverableConnectionError}"
|
||||||
|
errorMessageProperty="@{errorMessageProperty}" />
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<connectionOKValidationListener />
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
</project>
|
||||||
|
|
@ -0,0 +1,474 @@
|
||||||
|
The MariaDB Project Team site is here:
|
||||||
|
|
||||||
|
http://mariadb.org
|
||||||
|
|
||||||
|
The MariaDB JDBC client code is under the LGPL 2.1 license:
|
||||||
|
|
||||||
|
https://downloads.mariadb.org/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Here is the text of the LGPL 2.1 License
|
||||||
|
----------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
GNU LESSER GENERAL PUBLIC LICENSE
|
||||||
|
Version 2.1, February 1999
|
||||||
|
|
||||||
|
Copyright (C) 1991, 1999 Free Software Foundation, Inc.
|
||||||
|
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
Everyone is permitted to copy and distribute verbatim copies
|
||||||
|
of this license document, but changing it is not allowed.
|
||||||
|
|
||||||
|
[This is the first released version of the Lesser GPL. It also counts
|
||||||
|
as the successor of the GNU Library Public License, version 2, hence
|
||||||
|
the version number 2.1.]
|
||||||
|
|
||||||
|
Preamble
|
||||||
|
|
||||||
|
The licenses for most software are designed to take away your
|
||||||
|
freedom to share and change it. By contrast, the GNU General Public
|
||||||
|
Licenses are intended to guarantee your freedom to share and change
|
||||||
|
free software--to make sure the software is free for all its users.
|
||||||
|
|
||||||
|
This license, the Lesser General Public License, applies to some
|
||||||
|
specially designated software packages--typically libraries--of the
|
||||||
|
Free Software Foundation and other authors who decide to use it. You
|
||||||
|
can use it too, but we suggest you first think carefully about whether
|
||||||
|
this license or the ordinary General Public License is the better
|
||||||
|
strategy to use in any particular case, based on the explanations below.
|
||||||
|
|
||||||
|
When we speak of free software, we are referring to freedom of use,
|
||||||
|
not price. Our General Public Licenses are designed to make sure that
|
||||||
|
you have the freedom to distribute copies of free software (and charge
|
||||||
|
for this service if you wish); that you receive source code or can get
|
||||||
|
it if you want it; that you can change the software and use pieces of
|
||||||
|
it in new free programs; and that you are informed that you can do
|
||||||
|
these things.
|
||||||
|
|
||||||
|
To protect your rights, we need to make restrictions that forbid
|
||||||
|
distributors to deny you these rights or to ask you to surrender these
|
||||||
|
rights. These restrictions translate to certain responsibilities for
|
||||||
|
you if you distribute copies of the library or if you modify it.
|
||||||
|
|
||||||
|
For example, if you distribute copies of the library, whether gratis
|
||||||
|
or for a fee, you must give the recipients all the rights that we gave
|
||||||
|
you. You must make sure that they, too, receive or can get the source
|
||||||
|
code. If you link other code with the library, you must provide
|
||||||
|
complete object files to the recipients, so that they can relink them
|
||||||
|
with the library after making changes to the library and recompiling
|
||||||
|
it. And you must show them these terms so they know their rights.
|
||||||
|
|
||||||
|
We protect your rights with a two-step method: (1) we copyright the
|
||||||
|
library, and (2) we offer you this license, which gives you legal
|
||||||
|
permission to copy, distribute and/or modify the library.
|
||||||
|
|
||||||
|
To protect each distributor, we want to make it very clear that
|
||||||
|
there is no warranty for the free library. Also, if the library is
|
||||||
|
modified by someone else and passed on, the recipients should know
|
||||||
|
that what they have is not the original version, so that the original
|
||||||
|
author's reputation will not be affected by problems that might be
|
||||||
|
introduced by others.
|
||||||
|
|
||||||
|
Finally, software patents pose a constant threat to the existence of
|
||||||
|
any free program. We wish to make sure that a company cannot
|
||||||
|
effectively restrict the users of a free program by obtaining a
|
||||||
|
restrictive license from a patent holder. Therefore, we insist that
|
||||||
|
any patent license obtained for a version of the library must be
|
||||||
|
consistent with the full freedom of use specified in this license.
|
||||||
|
|
||||||
|
Most GNU software, including some libraries, is covered by the
|
||||||
|
ordinary GNU General Public License. This license, the GNU Lesser
|
||||||
|
General Public License, applies to certain designated libraries, and
|
||||||
|
is quite different from the ordinary General Public License. We use
|
||||||
|
this license for certain libraries in order to permit linking those
|
||||||
|
libraries into non-free programs.
|
||||||
|
|
||||||
|
When a program is linked with a library, whether statically or using
|
||||||
|
a shared library, the combination of the two is legally speaking a
|
||||||
|
combined work, a derivative of the original library. The ordinary
|
||||||
|
General Public License therefore permits such linking only if the
|
||||||
|
entire combination fits its criteria of freedom. The Lesser General
|
||||||
|
Public License permits more lax criteria for linking other code with
|
||||||
|
the library.
|
||||||
|
|
||||||
|
We call this license the "Lesser" General Public License because it
|
||||||
|
does Less to protect the user's freedom than the ordinary General
|
||||||
|
Public License. It also provides other free software developers Less
|
||||||
|
of an advantage over competing non-free programs. These disadvantages
|
||||||
|
are the reason we use the ordinary General Public License for many
|
||||||
|
libraries. However, the Lesser license provides advantages in certain
|
||||||
|
special circumstances.
|
||||||
|
|
||||||
|
For example, on rare occasions, there may be a special need to
|
||||||
|
encourage the widest possible use of a certain library, so that it becomes
|
||||||
|
a de-facto standard. To achieve this, non-free programs must be
|
||||||
|
allowed to use the library. A more frequent case is that a free
|
||||||
|
library does the same job as widely used non-free libraries. In this
|
||||||
|
case, there is little to gain by limiting the free library to free
|
||||||
|
software only, so we use the Lesser General Public License.
|
||||||
|
|
||||||
|
In other cases, permission to use a particular library in non-free
|
||||||
|
programs enables a greater number of people to use a large body of
|
||||||
|
free software. For example, permission to use the GNU C Library in
|
||||||
|
non-free programs enables many more people to use the whole GNU
|
||||||
|
operating system, as well as its variant, the GNU/Linux operating
|
||||||
|
system.
|
||||||
|
|
||||||
|
Although the Lesser General Public License is Less protective of the
|
||||||
|
users' freedom, it does ensure that the user of a program that is
|
||||||
|
linked with the Library has the freedom and the wherewithal to run
|
||||||
|
that program using a modified version of the Library.
|
||||||
|
|
||||||
|
The precise terms and conditions for copying, distribution and
|
||||||
|
modification follow. Pay close attention to the difference between a
|
||||||
|
"work based on the library" and a "work that uses the library". The
|
||||||
|
former contains code derived from the library, whereas the latter must
|
||||||
|
be combined with the library in order to run.
|
||||||
|
|
||||||
|
GNU LESSER GENERAL PUBLIC LICENSE
|
||||||
|
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||||
|
|
||||||
|
0. This License Agreement applies to any software library or other
|
||||||
|
program which contains a notice placed by the copyright holder or
|
||||||
|
other authorized party saying it may be distributed under the terms of
|
||||||
|
this Lesser General Public License (also called "this License").
|
||||||
|
Each licensee is addressed as "you".
|
||||||
|
|
||||||
|
A "library" means a collection of software functions and/or data
|
||||||
|
prepared so as to be conveniently linked with application programs
|
||||||
|
(which use some of those functions and data) to form executables.
|
||||||
|
|
||||||
|
The "Library", below, refers to any such software library or work
|
||||||
|
which has been distributed under these terms. A "work based on the
|
||||||
|
Library" means either the Library or any derivative work under
|
||||||
|
copyright law: that is to say, a work containing the Library or a
|
||||||
|
portion of it, either verbatim or with modifications and/or translated
|
||||||
|
straightforwardly into another language. (Hereinafter, translation is
|
||||||
|
included without limitation in the term "modification".)
|
||||||
|
|
||||||
|
"Source code" for a work means the preferred form of the work for
|
||||||
|
making modifications to it. For a library, complete source code means
|
||||||
|
all the source code for all modules it contains, plus any associated
|
||||||
|
interface definition files, plus the scripts used to control compilation
|
||||||
|
and installation of the library.
|
||||||
|
|
||||||
|
Activities other than copying, distribution and modification are not
|
||||||
|
covered by this License; they are outside its scope. The act of
|
||||||
|
running a program using the Library is not restricted, and output from
|
||||||
|
such a program is covered only if its contents constitute a work based
|
||||||
|
on the Library (independent of the use of the Library in a tool for
|
||||||
|
writing it). Whether that is true depends on what the Library does
|
||||||
|
and what the program that uses the Library does.
|
||||||
|
|
||||||
|
1. You may copy and distribute verbatim copies of the Library's
|
||||||
|
complete source code as you receive it, in any medium, provided that
|
||||||
|
you conspicuously and appropriately publish on each copy an
|
||||||
|
appropriate copyright notice and disclaimer of warranty; keep intact
|
||||||
|
all the notices that refer to this License and to the absence of any
|
||||||
|
warranty; and distribute a copy of this License along with the
|
||||||
|
Library.
|
||||||
|
|
||||||
|
You may charge a fee for the physical act of transferring a copy,
|
||||||
|
and you may at your option offer warranty protection in exchange for a
|
||||||
|
fee.
|
||||||
|
|
||||||
|
2. You may modify your copy or copies of the Library or any portion
|
||||||
|
of it, thus forming a work based on the Library, and copy and
|
||||||
|
distribute such modifications or work under the terms of Section 1
|
||||||
|
above, provided that you also meet all of these conditions:
|
||||||
|
|
||||||
|
a) The modified work must itself be a software library.
|
||||||
|
|
||||||
|
b) You must cause the files modified to carry prominent notices
|
||||||
|
stating that you changed the files and the date of any change.
|
||||||
|
|
||||||
|
c) You must cause the whole of the work to be licensed at no
|
||||||
|
charge to all third parties under the terms of this License.
|
||||||
|
|
||||||
|
d) If a facility in the modified Library refers to a function or a
|
||||||
|
table of data to be supplied by an application program that uses
|
||||||
|
the facility, other than as an argument passed when the facility
|
||||||
|
is invoked, then you must make a good faith effort to ensure that,
|
||||||
|
in the event an application does not supply such function or
|
||||||
|
table, the facility still operates, and performs whatever part of
|
||||||
|
its purpose remains meaningful.
|
||||||
|
|
||||||
|
(For example, a function in a library to compute square roots has
|
||||||
|
a purpose that is entirely well-defined independent of the
|
||||||
|
application. Therefore, Subsection 2d requires that any
|
||||||
|
application-supplied function or table used by this function must
|
||||||
|
be optional: if the application does not supply it, the square
|
||||||
|
root function must still compute square roots.)
|
||||||
|
|
||||||
|
These requirements apply to the modified work as a whole. If
|
||||||
|
identifiable sections of that work are not derived from the Library,
|
||||||
|
and can be reasonably considered independent and separate works in
|
||||||
|
themselves, then this License, and its terms, do not apply to those
|
||||||
|
sections when you distribute them as separate works. But when you
|
||||||
|
distribute the same sections as part of a whole which is a work based
|
||||||
|
on the Library, the distribution of the whole must be on the terms of
|
||||||
|
this License, whose permissions for other licensees extend to the
|
||||||
|
entire whole, and thus to each and every part regardless of who wrote
|
||||||
|
it.
|
||||||
|
|
||||||
|
Thus, it is not the intent of this section to claim rights or contest
|
||||||
|
your rights to work written entirely by you; rather, the intent is to
|
||||||
|
exercise the right to control the distribution of derivative or
|
||||||
|
collective works based on the Library.
|
||||||
|
|
||||||
|
In addition, mere aggregation of another work not based on the Library
|
||||||
|
with the Library (or with a work based on the Library) on a volume of
|
||||||
|
a storage or distribution medium does not bring the other work under
|
||||||
|
the scope of this License.
|
||||||
|
|
||||||
|
3. You may opt to apply the terms of the ordinary GNU General Public
|
||||||
|
License instead of this License to a given copy of the Library. To do
|
||||||
|
this, you must alter all the notices that refer to this License, so
|
||||||
|
that they refer to the ordinary GNU General Public License, version 2,
|
||||||
|
instead of to this License. (If a newer version than version 2 of the
|
||||||
|
ordinary GNU General Public License has appeared, then you can specify
|
||||||
|
that version instead if you wish.) Do not make any other change in
|
||||||
|
these notices.
|
||||||
|
|
||||||
|
Once this change is made in a given copy, it is irreversible for
|
||||||
|
that copy, so the ordinary GNU General Public License applies to all
|
||||||
|
subsequent copies and derivative works made from that copy.
|
||||||
|
|
||||||
|
This option is useful when you wish to copy part of the code of
|
||||||
|
the Library into a program that is not a library.
|
||||||
|
|
||||||
|
4. You may copy and distribute the Library (or a portion or
|
||||||
|
derivative of it, under Section 2) in object code or executable form
|
||||||
|
under the terms of Sections 1 and 2 above provided that you accompany
|
||||||
|
it with the complete corresponding machine-readable source code, which
|
||||||
|
must be distributed under the terms of Sections 1 and 2 above on a
|
||||||
|
medium customarily used for software interchange.
|
||||||
|
|
||||||
|
If distribution of object code is made by offering access to copy
|
||||||
|
from a designated place, then offering equivalent access to copy the
|
||||||
|
source code from the same place satisfies the requirement to
|
||||||
|
distribute the source code, even though third parties are not
|
||||||
|
compelled to copy the source along with the object code.
|
||||||
|
|
||||||
|
5. A program that contains no derivative of any portion of the
|
||||||
|
Library, but is designed to work with the Library by being compiled or
|
||||||
|
linked with it, is called a "work that uses the Library". Such a
|
||||||
|
work, in isolation, is not a derivative work of the Library, and
|
||||||
|
therefore falls outside the scope of this License.
|
||||||
|
|
||||||
|
However, linking a "work that uses the Library" with the Library
|
||||||
|
creates an executable that is a derivative of the Library (because it
|
||||||
|
contains portions of the Library), rather than a "work that uses the
|
||||||
|
library". The executable is therefore covered by this License.
|
||||||
|
Section 6 states terms for distribution of such executables.
|
||||||
|
|
||||||
|
When a "work that uses the Library" uses material from a header file
|
||||||
|
that is part of the Library, the object code for the work may be a
|
||||||
|
derivative work of the Library even though the source code is not.
|
||||||
|
Whether this is true is especially significant if the work can be
|
||||||
|
linked without the Library, or if the work is itself a library. The
|
||||||
|
threshold for this to be true is not precisely defined by law.
|
||||||
|
|
||||||
|
If such an object file uses only numerical parameters, data
|
||||||
|
structure layouts and accessors, and small macros and small inline
|
||||||
|
functions (ten lines or less in length), then the use of the object
|
||||||
|
file is unrestricted, regardless of whether it is legally a derivative
|
||||||
|
work. (Executables containing this object code plus portions of the
|
||||||
|
Library will still fall under Section 6.)
|
||||||
|
|
||||||
|
Otherwise, if the work is a derivative of the Library, you may
|
||||||
|
distribute the object code for the work under the terms of Section 6.
|
||||||
|
Any executables containing that work also fall under Section 6,
|
||||||
|
whether or not they are linked directly with the Library itself.
|
||||||
|
|
||||||
|
6. As an exception to the Sections above, you may also combine or
|
||||||
|
link a "work that uses the Library" with the Library to produce a
|
||||||
|
work containing portions of the Library, and distribute that work
|
||||||
|
under terms of your choice, provided that the terms permit
|
||||||
|
modification of the work for the customer's own use and reverse
|
||||||
|
engineering for debugging such modifications.
|
||||||
|
|
||||||
|
You must give prominent notice with each copy of the work that the
|
||||||
|
Library is used in it and that the Library and its use are covered by
|
||||||
|
this License. You must supply a copy of this License. If the work
|
||||||
|
during execution displays copyright notices, you must include the
|
||||||
|
copyright notice for the Library among them, as well as a reference
|
||||||
|
directing the user to the copy of this License. Also, you must do one
|
||||||
|
of these things:
|
||||||
|
|
||||||
|
a) Accompany the work with the complete corresponding
|
||||||
|
machine-readable source code for the Library including whatever
|
||||||
|
changes were used in the work (which must be distributed under
|
||||||
|
Sections 1 and 2 above); and, if the work is an executable linked
|
||||||
|
with the Library, with the complete machine-readable "work that
|
||||||
|
uses the Library", as object code and/or source code, so that the
|
||||||
|
user can modify the Library and then relink to produce a modified
|
||||||
|
executable containing the modified Library. (It is understood
|
||||||
|
that the user who changes the contents of definitions files in the
|
||||||
|
Library will not necessarily be able to recompile the application
|
||||||
|
to use the modified definitions.)
|
||||||
|
|
||||||
|
b) Use a suitable shared library mechanism for linking with the
|
||||||
|
Library. A suitable mechanism is one that (1) uses at run time a
|
||||||
|
copy of the library already present on the user's computer system,
|
||||||
|
rather than copying library functions into the executable, and (2)
|
||||||
|
will operate properly with a modified version of the library, if
|
||||||
|
the user installs one, as long as the modified version is
|
||||||
|
interface-compatible with the version that the work was made with.
|
||||||
|
|
||||||
|
c) Accompany the work with a written offer, valid for at
|
||||||
|
least three years, to give the same user the materials
|
||||||
|
specified in Subsection 6a, above, for a charge no more
|
||||||
|
than the cost of performing this distribution.
|
||||||
|
|
||||||
|
d) If distribution of the work is made by offering access to copy
|
||||||
|
from a designated place, offer equivalent access to copy the above
|
||||||
|
specified materials from the same place.
|
||||||
|
|
||||||
|
e) Verify that the user has already received a copy of these
|
||||||
|
materials or that you have already sent this user a copy.
|
||||||
|
|
||||||
|
For an executable, the required form of the "work that uses the
|
||||||
|
Library" must include any data and utility programs needed for
|
||||||
|
reproducing the executable from it. However, as a special exception,
|
||||||
|
the materials to be distributed need not include anything that is
|
||||||
|
normally distributed (in either source or binary form) with the major
|
||||||
|
components (compiler, kernel, and so on) of the operating system on
|
||||||
|
which the executable runs, unless that component itself accompanies
|
||||||
|
the executable.
|
||||||
|
|
||||||
|
It may happen that this requirement contradicts the license
|
||||||
|
restrictions of other proprietary libraries that do not normally
|
||||||
|
accompany the operating system. Such a contradiction means you cannot
|
||||||
|
use both them and the Library together in an executable that you
|
||||||
|
distribute.
|
||||||
|
|
||||||
|
7. You may place library facilities that are a work based on the
|
||||||
|
Library side-by-side in a single library together with other library
|
||||||
|
facilities not covered by this License, and distribute such a combined
|
||||||
|
library, provided that the separate distribution of the work based on
|
||||||
|
the Library and of the other library facilities is otherwise
|
||||||
|
permitted, and provided that you do these two things:
|
||||||
|
|
||||||
|
a) Accompany the combined library with a copy of the same work
|
||||||
|
based on the Library, uncombined with any other library
|
||||||
|
facilities. This must be distributed under the terms of the
|
||||||
|
Sections above.
|
||||||
|
|
||||||
|
b) Give prominent notice with the combined library of the fact
|
||||||
|
that part of it is a work based on the Library, and explaining
|
||||||
|
where to find the accompanying uncombined form of the same work.
|
||||||
|
|
||||||
|
8. You may not copy, modify, sublicense, link with, or distribute
|
||||||
|
the Library except as expressly provided under this License. Any
|
||||||
|
attempt otherwise to copy, modify, sublicense, link with, or
|
||||||
|
distribute the Library is void, and will automatically terminate your
|
||||||
|
rights under this License. However, parties who have received copies,
|
||||||
|
or rights, from you under this License will not have their licenses
|
||||||
|
terminated so long as such parties remain in full compliance.
|
||||||
|
|
||||||
|
9. You are not required to accept this License, since you have not
|
||||||
|
signed it. However, nothing else grants you permission to modify or
|
||||||
|
distribute the Library or its derivative works. These actions are
|
||||||
|
prohibited by law if you do not accept this License. Therefore, by
|
||||||
|
modifying or distributing the Library (or any work based on the
|
||||||
|
Library), you indicate your acceptance of this License to do so, and
|
||||||
|
all its terms and conditions for copying, distributing or modifying
|
||||||
|
the Library or works based on it.
|
||||||
|
|
||||||
|
10. Each time you redistribute the Library (or any work based on the
|
||||||
|
Library), the recipient automatically receives a license from the
|
||||||
|
original licensor to copy, distribute, link with or modify the Library
|
||||||
|
subject to these terms and conditions. You may not impose any further
|
||||||
|
restrictions on the recipients' exercise of the rights granted herein.
|
||||||
|
You are not responsible for enforcing compliance by third parties with
|
||||||
|
this License.
|
||||||
|
|
||||||
|
11. If, as a consequence of a court judgment or allegation of patent
|
||||||
|
infringement or for any other reason (not limited to patent issues),
|
||||||
|
conditions are imposed on you (whether by court order, agreement or
|
||||||
|
otherwise) that contradict the conditions of this License, they do not
|
||||||
|
excuse you from the conditions of this License. If you cannot
|
||||||
|
distribute so as to satisfy simultaneously your obligations under this
|
||||||
|
License and any other pertinent obligations, then as a consequence you
|
||||||
|
may not distribute the Library at all. For example, if a patent
|
||||||
|
license would not permit royalty-free redistribution of the Library by
|
||||||
|
all those who receive copies directly or indirectly through you, then
|
||||||
|
the only way you could satisfy both it and this License would be to
|
||||||
|
refrain entirely from distribution of the Library.
|
||||||
|
|
||||||
|
If any portion of this section is held invalid or unenforceable under any
|
||||||
|
particular circumstance, the balance of the section is intended to apply,
|
||||||
|
and the section as a whole is intended to apply in other circumstances.
|
||||||
|
|
||||||
|
It is not the purpose of this section to induce you to infringe any
|
||||||
|
patents or other property right claims or to contest validity of any
|
||||||
|
such claims; this section has the sole purpose of protecting the
|
||||||
|
integrity of the free software distribution system which is
|
||||||
|
implemented by public license practices. Many people have made
|
||||||
|
generous contributions to the wide range of software distributed
|
||||||
|
through that system in reliance on consistent application of that
|
||||||
|
system; it is up to the author/donor to decide if he or she is willing
|
||||||
|
to distribute software through any other system and a licensee cannot
|
||||||
|
impose that choice.
|
||||||
|
|
||||||
|
This section is intended to make thoroughly clear what is believed to
|
||||||
|
be a consequence of the rest of this License.
|
||||||
|
|
||||||
|
12. If the distribution and/or use of the Library is restricted in
|
||||||
|
certain countries either by patents or by copyrighted interfaces, the
|
||||||
|
original copyright holder who places the Library under this License may add
|
||||||
|
an explicit geographical distribution limitation excluding those countries,
|
||||||
|
so that distribution is permitted only in or among countries not thus
|
||||||
|
excluded. In such case, this License incorporates the limitation as if
|
||||||
|
written in the body of this License.
|
||||||
|
|
||||||
|
13. The Free Software Foundation may publish revised and/or new
|
||||||
|
versions of the Lesser General Public License from time to time.
|
||||||
|
Such new versions will be similar in spirit to the present version,
|
||||||
|
but may differ in detail to address new problems or concerns.
|
||||||
|
|
||||||
|
Each version is given a distinguishing version number. If the Library
|
||||||
|
specifies a version number of this License which applies to it and
|
||||||
|
"any later version", you have the option of following the terms and
|
||||||
|
conditions either of that version or of any later version published by
|
||||||
|
the Free Software Foundation. If the Library does not specify a
|
||||||
|
license version number, you may choose any version ever published by
|
||||||
|
the Free Software Foundation.
|
||||||
|
|
||||||
|
14. If you wish to incorporate parts of the Library into other free
|
||||||
|
programs whose distribution conditions are incompatible with these,
|
||||||
|
write to the author to ask for permission. For software which is
|
||||||
|
copyrighted by the Free Software Foundation, write to the Free
|
||||||
|
Software Foundation; we sometimes make exceptions for this. Our
|
||||||
|
decision will be guided by the two goals of preserving the free status
|
||||||
|
of all derivatives of our free software and of promoting the sharing
|
||||||
|
and reuse of software generally.
|
||||||
|
|
||||||
|
NO WARRANTY
|
||||||
|
|
||||||
|
15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
|
||||||
|
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
|
||||||
|
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
|
||||||
|
OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
|
||||||
|
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
|
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||||
|
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
|
||||||
|
LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
|
||||||
|
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||||
|
|
||||||
|
16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
|
||||||
|
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
|
||||||
|
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
|
||||||
|
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
|
||||||
|
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
|
||||||
|
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
|
||||||
|
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
|
||||||
|
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
|
||||||
|
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
|
||||||
|
DAMAGES.
|
||||||
|
|
||||||
|
END OF TERMS AND CONDITIONS
|
||||||
|
|
||||||
Binary file not shown.
|
|
@ -0,0 +1,60 @@
|
||||||
|
buildomatic/conf_source/db/mysql/jdbc/readme.txt
|
||||||
|
------------------------------------------------
|
||||||
|
|
||||||
|
2014-04-18
|
||||||
|
----------
|
||||||
|
|
||||||
|
If you would like to use the JDBC driver that is maintained and distributed
|
||||||
|
by the MySQL project, you can download the most current driver from this
|
||||||
|
location:
|
||||||
|
|
||||||
|
https://dev.mysql.com/downloads/connector/j/
|
||||||
|
|
||||||
|
A downloaded MySQL driver typically has a name like the following:
|
||||||
|
|
||||||
|
mysql-connector-java-5.1.30-bin.jar
|
||||||
|
|
||||||
|
To set your buildomatic properties so that it uses the driver above instead
|
||||||
|
of the JDBC driver maintained by the MariaDB project, you can do the following:
|
||||||
|
|
||||||
|
Copy the MySQL driver to the following location:
|
||||||
|
|
||||||
|
buildomatic/conf_source/db/mysql/jdbc
|
||||||
|
|
||||||
|
Next, edit your default_master.properties file. Comment out and edit to
|
||||||
|
set the following:
|
||||||
|
|
||||||
|
jdbcDriverClass=com.mysql.jdbc.Driver
|
||||||
|
maven.jdbc.groupId=mysql
|
||||||
|
maven.jdbc.artifactId=mysql-connector-java
|
||||||
|
maven.jdbc.version=5.1.30-bin
|
||||||
|
|
||||||
|
(note the "-bin" on this end of the file/version name)
|
||||||
|
|
||||||
|
|
||||||
|
2013-05-23
|
||||||
|
----------
|
||||||
|
|
||||||
|
Updated buildomatic default configurations to specify the MariaDB
|
||||||
|
JDBC driver. So, now, the MariaDB JDBC driver will be used by default
|
||||||
|
when installing JasperReports Server to a MySQL database. The MariaDB
|
||||||
|
JDBC driver is compatible with the MySQL database.
|
||||||
|
|
||||||
|
|
||||||
|
2013-03-29
|
||||||
|
----------
|
||||||
|
|
||||||
|
Adding the MariaDB JDBC client driver. This should be completely
|
||||||
|
compatible with MySQL (MariaDB is a fork of the MySQL src base).
|
||||||
|
|
||||||
|
|
||||||
|
2011-07-27
|
||||||
|
----------
|
||||||
|
|
||||||
|
MySQL JDBC drivers can be downloaded from the following location:
|
||||||
|
|
||||||
|
http://dev.mysql.com/downloads/connector/j/
|
||||||
|
|
||||||
|
A downloaded driver should be placed in this folder in order to
|
||||||
|
run with the buildomatic scripts.
|
||||||
|
|
||||||
|
|
@ -0,0 +1,27 @@
|
||||||
|
#
|
||||||
|
# Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
# http://www.jaspersoft.com.
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
|
||||||
|
js.drop = drop database ${js.dbName}
|
||||||
|
sugarcrm.drop = drop database ${sugarcrm.dbName}
|
||||||
|
foodmart.drop = drop database ${foodmart.dbName}
|
||||||
|
|
||||||
|
js.create = create database ${js.dbName} character set utf8 collate utf8_bin
|
||||||
|
js.set-users-password-expire = update jiuser set previouspasswordchangetime = '1970-01-01'
|
||||||
|
js.disable-users = update jiuser set enabled = false where username <> 'superuser'
|
||||||
|
sugarcrm.create = create database ${sugarcrm.dbName} character set utf8
|
||||||
|
foodmart.create = create database ${foodmart.dbName}
|
||||||
|
|
@ -0,0 +1,63 @@
|
||||||
|
#
|
||||||
|
# Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
# http://www.jaspersoft.com.
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
|
||||||
|
# default properties template for a db
|
||||||
|
# some of these set defaults if the values aren't set already
|
||||||
|
# others act as templates to plug values in
|
||||||
|
|
||||||
|
# default port that database listens on
|
||||||
|
dbPort=5432
|
||||||
|
|
||||||
|
# driver class
|
||||||
|
jdbcDriverClass=org.postgresql.Driver
|
||||||
|
|
||||||
|
# datasource class
|
||||||
|
jdbcDataSourceClass=org.postgresql.ds.PGConnectionPoolDataSource
|
||||||
|
|
||||||
|
#Sql query for testing jdbc connection pool
|
||||||
|
jdbcTestTableQuery=SELECT 1
|
||||||
|
|
||||||
|
# for maven: artifact info so unit tests can get to the correct jdbc driver
|
||||||
|
maven.jdbc.groupId=postgresql
|
||||||
|
maven.jdbc.artifactId=postgresql
|
||||||
|
maven.jdbc.version=9.4-1210.jdbc41
|
||||||
|
|
||||||
|
|
||||||
|
# hibernate dialect
|
||||||
|
hibernateDialect=com.jaspersoft.hibernate.dialect.PostgresqlNoBlobDialect
|
||||||
|
# tmp - old props before bobs fix
|
||||||
|
#hibernateDialect=org.hibernate.dialect.PostgreSQLDialect
|
||||||
|
|
||||||
|
# used by context.xml to set defaultAutoCommit (needed for blob support)
|
||||||
|
# js.extraParams = defaultAutoCommit="false"
|
||||||
|
# above: old props before bobs fix
|
||||||
|
|
||||||
|
# quartz delegate class
|
||||||
|
quartz.delegateClass=org.quartz.impl.jdbcjobstore.PostgreSQLDelegate
|
||||||
|
|
||||||
|
# prefix for quartz table names
|
||||||
|
quartz.tablePrefix=QRTZ_
|
||||||
|
|
||||||
|
# quartz ddl file (in jasperserver/scripts/quartz)
|
||||||
|
quartz.ddlScript=tables_postgres.sql
|
||||||
|
|
||||||
|
# property setting for unit-tests runtime
|
||||||
|
test.databaseFlavor=postgresql
|
||||||
|
|
||||||
|
# datastore helper class for Websphere application server
|
||||||
|
ws.dataStore.helper.class=com.ibm.websphere.rsadapter.GenericDataStoreHelper
|
||||||
|
|
@ -0,0 +1,55 @@
|
||||||
|
#
|
||||||
|
# Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
# http://www.jaspersoft.com.
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
|
||||||
|
# default properties template for a db
|
||||||
|
# these properties act as templates to plug values in
|
||||||
|
|
||||||
|
# default database names
|
||||||
|
js.dbName=jasperserver
|
||||||
|
js.it.dbName=${js.dbName}_it
|
||||||
|
sugarcrm.dbName=sugarcrm
|
||||||
|
foodmart.dbName=foodmart
|
||||||
|
|
||||||
|
# jdbc url templates...assume same host, port, db type
|
||||||
|
admin.jdbcUrl=jdbc:postgresql://${dbHost}:${dbPort}/postgres
|
||||||
|
js.jdbcUrl=jdbc:postgresql://${dbHost}:${dbPort}/${js.dbName}
|
||||||
|
js.it.jdbcUrl=jdbc:postgresql://${dbHost}:${dbPort}/${js.it.dbName}
|
||||||
|
sugarcrm.jdbcUrl=jdbc:postgresql://${dbHost}:${dbPort}/${sugarcrm.dbName}
|
||||||
|
foodmart.jdbcUrl=jdbc:postgresql://${dbHost}:${dbPort}/${foodmart.dbName}
|
||||||
|
|
||||||
|
# Websphere specific properties
|
||||||
|
# jdbc driver properties for jasperserver datasource
|
||||||
|
ws.jdbc.js.properties={{serverName java.lang.String ${dbHost}} \
|
||||||
|
{portNumber java.lang.String ${dbPort}} \
|
||||||
|
{databaseName java.lang.String ${js.dbName}} \
|
||||||
|
{user java.lang.String ${js.dbUsername}} \
|
||||||
|
{password java.lang.String ${js.dbPassword}} }
|
||||||
|
|
||||||
|
# jdbc driver properties for foodmart datasource
|
||||||
|
ws.jdbc.foodmart.properties={{serverName java.lang.String ${dbHost}} \
|
||||||
|
{portNumber java.lang.String ${dbPort}} \
|
||||||
|
{databaseName java.lang.String ${foodmart.dbName}} \
|
||||||
|
{user java.lang.String ${foodmart.dbUsername}} \
|
||||||
|
{password java.lang.String ${foodmart.dbPassword}} }
|
||||||
|
|
||||||
|
# jdbc driver properties for sugarcrm datasource
|
||||||
|
ws.jdbc.sugarcrm.properties={{serverName java.lang.String ${dbHost}} \
|
||||||
|
{portNumber java.lang.String ${dbPort}} \
|
||||||
|
{databaseName java.lang.String ${sugarcrm.dbName}} \
|
||||||
|
{user java.lang.String ${sugarcrm.dbUsername}} \
|
||||||
|
{password java.lang.String ${sugarcrm.dbPassword}} }
|
||||||
|
|
@ -0,0 +1,93 @@
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<project name="db">
|
||||||
|
|
||||||
|
<import file="${buildBin}/db-common.xml"/>
|
||||||
|
|
||||||
|
<!-- database tasks -->
|
||||||
|
|
||||||
|
<macrodef name="validateDBMSConnection">
|
||||||
|
<attribute name="jdbcUrl"/>
|
||||||
|
<attribute name="systemName" default="before"/>
|
||||||
|
<attribute name="phase" default="before"/>
|
||||||
|
<attribute name="failOnConnectionError" default="true"/>
|
||||||
|
<attribute name="failOnDBNotExists" default="false"/>
|
||||||
|
<attribute name="failOnUnrecoverableConnectionError" default="true"/>
|
||||||
|
<attribute name="connectionErrorOccurredProperty" default="connectionErrorOccurredProperty@{phase}"/>
|
||||||
|
<attribute name="errorSqlStateCodeProperty" default="errorSqlStateCodeProperty@{phase}"/>
|
||||||
|
<attribute name="errorNativeCodeProperty" default="errorNativeCodeProperty@{phase}"/>
|
||||||
|
<attribute name="errorMessageProperty" default="errorMessageProperty@{phase}"/>
|
||||||
|
|
||||||
|
<sequential>
|
||||||
|
<var name="dbExists" value=""/>
|
||||||
|
|
||||||
|
<runSQL jdbcUrl="@{jdbcUrl}"
|
||||||
|
print="false"
|
||||||
|
onerror="abort"
|
||||||
|
failOnConnectionError="@{failOnConnectionError}"
|
||||||
|
connectionErrorOccurredProperty="@{connectionErrorOccurredProperty}"
|
||||||
|
errorSqlStateCodeProperty="@{errorSqlStateCodeProperty}"
|
||||||
|
errorNativeCodeProperty="@{errorNativeCodeProperty}"
|
||||||
|
errorMessageProperty="@{errorMessageProperty}">
|
||||||
|
SELECT 0;
|
||||||
|
</runSQL>
|
||||||
|
|
||||||
|
<if>
|
||||||
|
<isset property="@{connectionErrorOccurredProperty}"/>
|
||||||
|
<then>
|
||||||
|
<connectionValidationFailureInfoListener
|
||||||
|
errorSqlStateCodeProperty="@{errorSqlStateCodeProperty}"
|
||||||
|
errorNativeCodeProperty="@{errorNativeCodeProperty}"
|
||||||
|
errorMessageProperty="@{errorMessageProperty}"/>
|
||||||
|
<if>
|
||||||
|
<matches pattern="^08.*" string="${@{errorSqlStateCodeProperty}}"/>
|
||||||
|
<then>
|
||||||
|
<hostPortValidationFailureListener
|
||||||
|
failOnUnrecoverableConnectionError="@{failOnUnrecoverableConnectionError}"/>
|
||||||
|
</then>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="${@{errorSqlStateCodeProperty}}" arg2="28000"/>
|
||||||
|
<then>
|
||||||
|
<usernamePasswordValidationFailureListener
|
||||||
|
failOnUnrecoverableConnectionError="@{failOnUnrecoverableConnectionError}"
|
||||||
|
userName="${dbUsername}"
|
||||||
|
password="${dbPassword}"/>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<elseif>
|
||||||
|
<equals arg1="${@{errorSqlStateCodeProperty}}" arg2="3D000"/>
|
||||||
|
<then>
|
||||||
|
<dBExistsValidationFailureListener failOnDBNotExists="@{failOnDBNotExists}"/>
|
||||||
|
</then>
|
||||||
|
</elseif>
|
||||||
|
<else>
|
||||||
|
<genericConnectionValidationFailureListener
|
||||||
|
failOnUnrecoverableConnectionError="@{failOnUnrecoverableConnectionError}"
|
||||||
|
errorMessageProperty="@{errorMessageProperty}"/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</then>
|
||||||
|
<else>
|
||||||
|
<connectionOKValidationListener/>
|
||||||
|
</else>
|
||||||
|
</if>
|
||||||
|
</sequential>
|
||||||
|
</macrodef>
|
||||||
|
|
||||||
|
</project>
|
||||||
Binary file not shown.
Binary file not shown.
|
|
@ -0,0 +1,77 @@
|
||||||
|
buildomatic/conf_source/db/postgresql/jdbc/readme.txt
|
||||||
|
-----------------------------------------------------
|
||||||
|
|
||||||
|
2016-09-09
|
||||||
|
----------
|
||||||
|
|
||||||
|
Added most current JDBC41 driver from the postgresql website
|
||||||
|
|
||||||
|
postgresql-9.4-1210.jdbc41.jar
|
||||||
|
|
||||||
|
Added most current JDBC42 driver from the postgresql website
|
||||||
|
|
||||||
|
postgresql-9.4-1210.jdbc41.jar
|
||||||
|
|
||||||
|
2014-04-18
|
||||||
|
----------
|
||||||
|
|
||||||
|
Added most current JDBC41 driver from the postgresql website
|
||||||
|
|
||||||
|
postgresql-9.3-1101.jdbc41.jar
|
||||||
|
- should be backwards compatible with postgresql 8.x
|
||||||
|
- runs under Java 1.7 only (not Java 1.6)
|
||||||
|
- support for JDBC4 (support is limited see postgresql online documentation)
|
||||||
|
|
||||||
|
NOTE: This new driver is not the default driver currently configured.
|
||||||
|
The default driver specified in the buildomatic configurations is the following:
|
||||||
|
|
||||||
|
postgresql-9.2-1002.jdbc4.jar
|
||||||
|
|
||||||
|
To change to the most current driver shown above, edit your:
|
||||||
|
|
||||||
|
buildomatic/default_master.properties
|
||||||
|
|
||||||
|
Change:
|
||||||
|
|
||||||
|
# maven.jdbc.version=9.2-1002.jdbc4
|
||||||
|
|
||||||
|
To:
|
||||||
|
|
||||||
|
maven.jdbc.version=9.3-1101.jdbc41
|
||||||
|
|
||||||
|
|
||||||
|
2013-03-29
|
||||||
|
----------
|
||||||
|
|
||||||
|
Remove the older 801 jars.
|
||||||
|
|
||||||
|
|
||||||
|
2013-02-26
|
||||||
|
----------
|
||||||
|
|
||||||
|
Drivers updated to versions 1002:
|
||||||
|
|
||||||
|
postgresql-9.2-1002.jdbc3.jar
|
||||||
|
postgresql-9.2-1002.jdbc4.jar
|
||||||
|
|
||||||
|
|
||||||
|
2011-07-27
|
||||||
|
----------
|
||||||
|
|
||||||
|
Drivers in this folder:
|
||||||
|
|
||||||
|
postgresql-9.0-801.jdbc3.jar
|
||||||
|
- backwards compatible with postgresql 8.x
|
||||||
|
- compatible with postgresql 9.0
|
||||||
|
- runs under Java 1.5 and Java 1.6
|
||||||
|
|
||||||
|
postgresql-9.0-801.jdbc4.jar
|
||||||
|
- compatible with postgresql 9.0
|
||||||
|
- runs under Java 1.6
|
||||||
|
- support for JDBC4 (support is limited see postgresql online documentation)
|
||||||
|
|
||||||
|
|
||||||
|
http://jdbc.postgresql.org/download.html
|
||||||
|
- download info
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,30 @@
|
||||||
|
#
|
||||||
|
# Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
# http://www.jaspersoft.com.
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
|
||||||
|
js.drop = drop database "${js.dbName}"
|
||||||
|
js.it.drop = drop database "${js.it.dbName}"
|
||||||
|
sugarcrm.drop = drop database "${sugarcrm.dbName}"
|
||||||
|
foodmart.drop = drop database "${foodmart.dbName}"
|
||||||
|
|
||||||
|
|
||||||
|
js.create = create database "${js.dbName}" template=template0 encoding='utf8' lc_collate='${db.set.lc_collate}' lc_ctype='${db.set.lc_ctype}'
|
||||||
|
js.it.create = create database "${js.it.dbName}" template=template0 encoding='utf8' lc_collate='${db.set.lc_collate}' lc_ctype='${db.set.lc_ctype}'
|
||||||
|
|
||||||
|
sugarcrm.create = create database "${sugarcrm.dbName}" template=template0 encoding='utf8' lc_collate='${db.set.lc_collate}' lc_ctype='${db.set.lc_ctype}'
|
||||||
|
|
||||||
|
foodmart.create = create database "${foodmart.dbName}"
|
||||||
|
|
@ -0,0 +1,29 @@
|
||||||
|
#
|
||||||
|
# Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
# http://www.jaspersoft.com.
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
|
||||||
|
js.drop = drop database "${js.dbName}"
|
||||||
|
js.it.drop = drop database "${js.it.dbName}"
|
||||||
|
sugarcrm.drop = drop database "${sugarcrm.dbName}"
|
||||||
|
foodmart.drop = drop database "${foodmart.dbName}"
|
||||||
|
|
||||||
|
js.create = create database "${js.dbName}" encoding='utf8'
|
||||||
|
js.it.create = create database "${js.it.dbName}" encoding='utf8'
|
||||||
|
js.set-users-password-expire = update jiuser set previouspasswordchangetime = '1970-01-01'
|
||||||
|
js.disable-users = update jiuser set enabled = false where username <> 'superuser'
|
||||||
|
sugarcrm.create = create database "${sugarcrm.dbName}" encoding='utf8'
|
||||||
|
foodmart.create = create database "${foodmart.dbName}"
|
||||||
|
|
@ -0,0 +1,154 @@
|
||||||
|
#
|
||||||
|
# Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
# http://www.jaspersoft.com.
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
|
||||||
|
# This is a file containing properties that are not platform-specific,
|
||||||
|
# but can safely be set to defaults (for now).
|
||||||
|
# For this to support all possible configuration, some things may have to have more config hooks
|
||||||
|
#
|
||||||
|
# TODO
|
||||||
|
# configure quartz.web.deployment.uri
|
||||||
|
# configure quartz.mail.*
|
||||||
|
#
|
||||||
|
# default web app names
|
||||||
|
webAppNameCE = jasperserver
|
||||||
|
webAppNamePro = jasperserver-pro
|
||||||
|
|
||||||
|
# war file source name used when copying
|
||||||
|
# (should not be changed)
|
||||||
|
webAppNameSrcCE = jasperserver
|
||||||
|
webAppNameSrcPro = jasperserver-pro
|
||||||
|
|
||||||
|
# to run maven in offline mode, set to true
|
||||||
|
maven.offline = false
|
||||||
|
|
||||||
|
# default location of maven local repository
|
||||||
|
maven-localrepo-path = $\{user.home\}/.m2/repository
|
||||||
|
|
||||||
|
# JNDI names; these should never change
|
||||||
|
js.jndi=jdbc/jasperserver
|
||||||
|
sugarcrm.jndi=jdbc/sugarcrm
|
||||||
|
foodmart.jndi=jdbc/foodmart
|
||||||
|
|
||||||
|
# use the same users and passwords for everything
|
||||||
|
js.dbUsername = ${dbUsername}
|
||||||
|
js.dbPassword = ${dbPassword}
|
||||||
|
sugarcrm.dbUsername = ${dbUsername}
|
||||||
|
sugarcrm.dbPassword = ${dbPassword}
|
||||||
|
foodmart.dbUsername = ${dbUsername}
|
||||||
|
foodmart.dbPassword = ${dbPassword}
|
||||||
|
|
||||||
|
# used by context.xml to set defaultAutoCommit for postgres
|
||||||
|
# set to blank if it hasn't already been set
|
||||||
|
js.extraParams=
|
||||||
|
|
||||||
|
# used only for oracle(this user have to be created)
|
||||||
|
dba.user=sys
|
||||||
|
dba.password=password
|
||||||
|
dba.role=as SYSDBA
|
||||||
|
|
||||||
|
|
||||||
|
# settings for quartz to send mail, used in js.quartz.properties
|
||||||
|
quartz.mail.sender.host=mail.example.com
|
||||||
|
quartz.mail.sender.port=25
|
||||||
|
quartz.mail.sender.protocol=smtp
|
||||||
|
quartz.mail.sender.username=admin
|
||||||
|
quartz.mail.sender.password=password
|
||||||
|
quartz.mail.sender.from=admin@example.com
|
||||||
|
quartz.web.deployment.uri=http://localhost:8080/jasperserver-pro
|
||||||
|
|
||||||
|
# property settings for unit-tests
|
||||||
|
test.foodmart.upperCaseNames=false
|
||||||
|
test.sugarcrm.upperCaseNames=false
|
||||||
|
|
||||||
|
# remote-tests settings
|
||||||
|
remote.test.host=localhost
|
||||||
|
remote.test.port=8080
|
||||||
|
remote.test.app-context-path-ce=jasperserver
|
||||||
|
remote.test.app-context-path-pro=jasperserver-pro
|
||||||
|
|
||||||
|
# docFlex settings for Public API generation
|
||||||
|
# docFlex is a non-included commercial product
|
||||||
|
# docFlexDir=c:/bin/docflex
|
||||||
|
docFlexDir=/opt/docflex-javadoc-1.6
|
||||||
|
docFlexVer=1.6
|
||||||
|
|
||||||
|
# flag used to skip of JDBC driver deploying during deployment process.
|
||||||
|
deployJDBCDriver=true
|
||||||
|
|
||||||
|
#Diagnostic configuration
|
||||||
|
diagnostic.jmx.usePlatformServer = false
|
||||||
|
# change this value if you have more than one app server on the same machine running JRS
|
||||||
|
diagnostic.jmx.port = 10990
|
||||||
|
test.diagnostic.jmx.port = 10999
|
||||||
|
# change this if you have more than one instance of JRS on the same app server (i.e. more than one JRS web app)
|
||||||
|
diagnostic.jmx.name = jasperserver
|
||||||
|
# change this to your RMI registry host name or IP, if you use a separate one
|
||||||
|
diagnostic.jmx.rmiHost = localhost
|
||||||
|
|
||||||
|
#AWS data source configuration
|
||||||
|
#Enable or disable creating of AWD Data Source security group.
|
||||||
|
aws.db.security.group.changes.enabled=true
|
||||||
|
|
||||||
|
# Db Security Group Name. Need to be overridden if server(where instance is running) is out of scope Amazon to have
|
||||||
|
#unique group name for this server.
|
||||||
|
aws.db.security.group.name=JRSSecurityGroup
|
||||||
|
aws.db.security.group.description=JasperReports Server Security Group
|
||||||
|
|
||||||
|
# Ingress Public Ip address of server that will be added in Db Security Group to have access to target Db instance
|
||||||
|
# that contains this Group.
|
||||||
|
aws.db.security.group.ingressPublicIp=
|
||||||
|
|
||||||
|
# Property, that control whether to suppress Warning if IAM role not properly configured in EC2 environment
|
||||||
|
aws.db.security.group.suppressEc2CredentialsWarnings=false
|
||||||
|
|
||||||
|
# flag s to enable or disable Monitoring and heart beat options.
|
||||||
|
jrs.config.enable.audit_monitoring=false
|
||||||
|
jrs.config.enable.audit.records=false
|
||||||
|
jrs.config.enable.monitoring.records=false
|
||||||
|
jrs.config.enable.heartbeat=true
|
||||||
|
jrs.config.enable.heartbeat.askForPermission=true
|
||||||
|
jrs.config.enable.heartbeat.permissionGranted=false
|
||||||
|
|
||||||
|
#flag which control whether to use by default optimized version of scripts in runtime
|
||||||
|
optimize.javascript=true
|
||||||
|
|
||||||
|
# default PhantomJS location
|
||||||
|
headless.browser=
|
||||||
|
|
||||||
|
#flag if tibcoDrivers are available for source build or not
|
||||||
|
#only applies for builds inside Jaspersoft TIBCO
|
||||||
|
#default setting : true
|
||||||
|
#if set to false, tibco driver dependencies are ignored
|
||||||
|
tibco.driver.available=true
|
||||||
|
SKIP_TEST_ARG=ignored
|
||||||
|
|
||||||
|
#source distribution:
|
||||||
|
#flag if fafj is used as maven dependencies or if it is pre-deployed
|
||||||
|
#to original folders
|
||||||
|
#if set to true, fafj dependencies and handling are ignored
|
||||||
|
disable.fafj=true
|
||||||
|
#(pro only) initialization for additional driver repository, see sample_conf/<db-type>_master.properties for configuration
|
||||||
|
tibco-driver-path=${repo-path}
|
||||||
|
#(pro only) by default tibco drivers are not deployed
|
||||||
|
deploy-tibco-drivers=false
|
||||||
|
|
||||||
|
# Repo FTP access
|
||||||
|
ftp.enabled=false
|
||||||
|
|
||||||
|
# If you are using an oracle 12c, you should set dbScriptVersion=oracle12c in order to use specific supermart-update script for oracle 12c
|
||||||
|
dbScriptVersion=
|
||||||
|
|
@ -0,0 +1,37 @@
|
||||||
|
/*
|
||||||
|
* Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
* http://www.jaspersoft.com.
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
importPackage(java.io);
|
||||||
|
|
||||||
|
function writeFile(path, contents) {
|
||||||
|
var fw = new FileWriter(path);
|
||||||
|
fw.write(contents);
|
||||||
|
fw.close();
|
||||||
|
}
|
||||||
|
|
||||||
|
print('hi, this is js');
|
||||||
|
var appConFile = '../target/jasperserver-pro/WEB-INF/applicationContext-adhoc.xml';
|
||||||
|
var appCon = new XML(readFile(appConFile));
|
||||||
|
appCon.appendChild(<bean id="mybean" class="com.jaspersoft.ji.SomeBean">
|
||||||
|
<property name="foo" value="bar"/>
|
||||||
|
</bean>);
|
||||||
|
writeFile('newAppCon.xml', appCon.toString());
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,38 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!-- =============================================================== -->
|
||||||
|
<!-- demo of running js standalone from Ant -->
|
||||||
|
<!-- =============================================================== -->
|
||||||
|
|
||||||
|
<project name="jasperserver-pro" default="tweakWar" basedir=".">
|
||||||
|
<target name="tweakWar">
|
||||||
|
<java classname="org.mozilla.javascript.tools.shell.Main">
|
||||||
|
<arg value="${basedir}/tweakWar.js"/>
|
||||||
|
<arg value="${webapp}"/>
|
||||||
|
<arg value="${config}"/>
|
||||||
|
<classpath>
|
||||||
|
<fileset dir="lib">
|
||||||
|
<include name="**/*.jar"/>
|
||||||
|
</fileset>
|
||||||
|
</classpath>
|
||||||
|
</java>
|
||||||
|
</target>
|
||||||
|
</project>
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -0,0 +1,471 @@
|
||||||
|
/*
|
||||||
|
* Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
* http://www.jaspersoft.com.
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
tweakWar.js
|
||||||
|
This is run by the build of jasperserver-war in jasperserver-pro
|
||||||
|
|
||||||
|
It reads in one more more jiconfig files that specify various updates
|
||||||
|
to configuration files in the JasperServer OS webapp.
|
||||||
|
Current files updated:
|
||||||
|
WEB-INF/applicationContext.xml
|
||||||
|
WEB-INF/applicationContext-security.xml
|
||||||
|
WEB-INF/jasperserver-servlet.xml
|
||||||
|
|
||||||
|
example file:
|
||||||
|
<jiconfig>
|
||||||
|
|
||||||
|
<!-- additions to applicationContext.xml -->
|
||||||
|
|
||||||
|
<!-- this adds an entry to the sessionFactory bean that configures Hibernate -->
|
||||||
|
<addHibernateConfig hbmfile="/com/jaspersoft/ji/adhoc/AdhocState.hbm.xml"/>
|
||||||
|
|
||||||
|
<!-- this adds an entry to the persistentMappings bean that maps client classes
|
||||||
|
(or interfaces) to their corresponding persisted objects -->
|
||||||
|
<addPersistentClassMapping key="com.jaspersoft.ji.adhoc.AdhocState"
|
||||||
|
value="com.jaspersoft.ji.adhoc.hibernate.RepoAdhocTableState"/>
|
||||||
|
|
||||||
|
<!-- this adds an entry to the persistentMappings bean that maps client classes
|
||||||
|
(or interfaces) to their corresponding persisted objects -->
|
||||||
|
<addPersistentClassMapping key="com.jaspersoft.ji.adhoc.AdhocTableState"
|
||||||
|
value="com.jaspersoft.ji.adhoc.hibernate.RepoAdhocTableState"/>
|
||||||
|
|
||||||
|
<!-- this adds an entry to the mappingResourceFactory bean that maps client interfaces
|
||||||
|
to their corresponding client implementations -->
|
||||||
|
<addClientClassMapping key="com.jaspersoft.ji.adhoc.AdhocReportUnit"
|
||||||
|
value="com.jaspersoft.ji.adhoc.AdhocReportUnitImpl"/>
|
||||||
|
|
||||||
|
<!-- adding an MVC JSP
|
||||||
|
(updates jasperserver-servlet.xml and applicationContext-security.xml)
|
||||||
|
|
||||||
|
Adds a new entry to the handlerMapping bean which maps URIs to their controllers,
|
||||||
|
and adds a new entry to the paramResolver bean which maps it to a jsp under WEB-INF/jsp.
|
||||||
|
If uri isn't set, it's assumed to be "/" + jsp + ".html"
|
||||||
|
* NOTE: uri currently ignored
|
||||||
|
If role is set, adds the uri to the filterInvocationInterceptor in
|
||||||
|
applicationContext-security.xml with the given role string.
|
||||||
|
This lets non-admins see the page. The roles string is a comma-separated
|
||||||
|
list of roles. Current roles are ROLE_USER, ROLE_ADMIN (default), and ROLE_ANONYMOUS. -->
|
||||||
|
<addJSP
|
||||||
|
jsp="olap/viewOlap"
|
||||||
|
uri="/olap/viewOlap.html"
|
||||||
|
controllerBean ="olapModelController"
|
||||||
|
roles="ROLE_USER,ROLE_ANONYMOUS"/>
|
||||||
|
|
||||||
|
<!-- adds a new filter to one of the filter chains defined in applicationContext-security.xml.
|
||||||
|
There are multiple filter chains, each for a different URL pattern.
|
||||||
|
filterBean is the name of the bean to insert.
|
||||||
|
before is the bean it should come before.
|
||||||
|
pattern lets us specify which filter chain. -->
|
||||||
|
<addFilter
|
||||||
|
filterBean="JILicenseFilter"
|
||||||
|
before="exceptionTranslationFilter"
|
||||||
|
pattern="/**"/>
|
||||||
|
|
||||||
|
<!-- add a message catalog to the messageSource bean. This name should refer to a properties file
|
||||||
|
somewhere on the classpath -->
|
||||||
|
<addMessageCatalog path="LicenseMessages"/>
|
||||||
|
|
||||||
|
<!-- eval a js expression on the given file to do any kind of tweak that isn't covered here
|
||||||
|
The file is read in and turned into the XML variable 'top' which represents
|
||||||
|
the top level node. You can include any number of expressions.-->
|
||||||
|
<evalOnFile path="WEB-INF/web.xml>
|
||||||
|
<expr>top.* += <something/></expr>
|
||||||
|
</evalOnFile>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- setting of properties
|
||||||
|
right now I'm only letting you do appCon.xml, jasperserver.servlet.xml, and appCon-security.xml
|
||||||
|
but I suppose I could do any file
|
||||||
|
-->
|
||||||
|
<setProperty file="servlet" bean="configurationBean" property="paginationPageSize" value="20"/>
|
||||||
|
|
||||||
|
<!-- add listener class to web.xml
|
||||||
|
-->
|
||||||
|
<addListener class="my.Listener"/>
|
||||||
|
|
||||||
|
<!-- add Spring bean filter to web.xml
|
||||||
|
-->
|
||||||
|
<addServletSpringFilter beanName="filterBean" urlPattern="/filtered_path/*"/>
|
||||||
|
|
||||||
|
</jiconfig>
|
||||||
|
*/
|
||||||
|
importPackage(java.io);
|
||||||
|
|
||||||
|
// keep comments and whitespace in
|
||||||
|
XML.ignoreComments = false;
|
||||||
|
XML.ignoreWhitespace = false;
|
||||||
|
|
||||||
|
function writeFile(path, contents) {
|
||||||
|
var fw = new FileWriter(path);
|
||||||
|
fw.write(contents);
|
||||||
|
fw.close();
|
||||||
|
}
|
||||||
|
|
||||||
|
function clobberDir(path) {
|
||||||
|
var dir = new File(path);
|
||||||
|
var list = dir.listFiles();
|
||||||
|
for (i in list) {
|
||||||
|
// gotta love JS syntax...
|
||||||
|
list[i]["delete"]();
|
||||||
|
}
|
||||||
|
dir["delete"]();
|
||||||
|
}
|
||||||
|
|
||||||
|
// this returns a list of files with the given extension
|
||||||
|
function getFilesByExtension(dir, ext) {
|
||||||
|
var filter = new FileFilter({ accept: function(f) { return f.name.endsWith("." + ext) }});
|
||||||
|
var files = new File(dir).listFiles(filter);
|
||||||
|
var paths = [];
|
||||||
|
for (var i in files) {
|
||||||
|
paths.push(files[i].path);
|
||||||
|
}
|
||||||
|
return paths;
|
||||||
|
}
|
||||||
|
|
||||||
|
function saveXML(xml, filename) {
|
||||||
|
writeFile(filename, xml.toXMLString());
|
||||||
|
}
|
||||||
|
|
||||||
|
// look up bean, then property, in a spring bean definition file
|
||||||
|
function beanProperty(root, beanName, propName) {
|
||||||
|
var prop = root.beansNS::bean.(@id == beanName).beansNS::property.(@name == propName);
|
||||||
|
// if not found, create it
|
||||||
|
if (prop.length() == 0) {
|
||||||
|
// print("root: " + root.toXMLString());
|
||||||
|
// print("bean " + beanName + ": " + root.bean.(@id == beanName).toXMLString());
|
||||||
|
var newChild = <property name={propName}/>;
|
||||||
|
newChild.setNamespace(beansNS);
|
||||||
|
root.beansNS::bean.(@id == beanName).appendChild(newChild);
|
||||||
|
prop = root.beansNS::bean.(@id == beanName).beansNS::property.(@name == propName);
|
||||||
|
}
|
||||||
|
return prop;
|
||||||
|
}
|
||||||
|
|
||||||
|
function debug(str) {
|
||||||
|
// print(str);
|
||||||
|
}
|
||||||
|
|
||||||
|
function printStackTrace(exp) {
|
||||||
|
if (exp == undefined) {
|
||||||
|
try {
|
||||||
|
exp.toString();
|
||||||
|
} catch (e) {
|
||||||
|
exp = e;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// note that user could have caught some other
|
||||||
|
// "exception"- may be even a string or number -
|
||||||
|
// and passed the same as argument. Also, check for
|
||||||
|
// rhinoException property before using it
|
||||||
|
if (exp instanceof Error &&
|
||||||
|
exp.rhinoException != undefined) {
|
||||||
|
exp.rhinoException.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var beansNS = new Namespace("http://www.springframework.org/schema/beans");
|
||||||
|
var wsddNS = new Namespace("http://xml.apache.org/axis/wsdd/");
|
||||||
|
var noNS = new Namespace("");
|
||||||
|
|
||||||
|
var webapp = arguments[0];
|
||||||
|
var configPath = arguments[1];
|
||||||
|
var savePath; // = 'oldfiles';
|
||||||
|
|
||||||
|
// file locations
|
||||||
|
var appConFile = webapp + '/WEB-INF/applicationContext.xml';
|
||||||
|
var servletFile = webapp + '/WEB-INF/jasperserver-servlet.xml';
|
||||||
|
var webXmlFile = webapp + '/WEB-INF/web.xml';
|
||||||
|
var wsDeployFile = webapp + '/WEB-INF/server-config.wsdd';
|
||||||
|
// var securityFile = webapp + '/WEB-INF/applicationContext-security.xml';
|
||||||
|
|
||||||
|
// read in files to xml
|
||||||
|
var appCon = new XML(readFile(appConFile));
|
||||||
|
var servlet = new XML(readFile(servletFile));
|
||||||
|
var webXml = new XML(readFile(webXmlFile));
|
||||||
|
var wsDeploy = new XML(readFile(wsDeployFile));
|
||||||
|
// var security = new XML(readFile(securityFile));
|
||||||
|
|
||||||
|
try {
|
||||||
|
// save before tweaking if there is a savedir
|
||||||
|
// we can diff easier because the formatting will be the same
|
||||||
|
if (savePath) {
|
||||||
|
clobberDir(savePath);
|
||||||
|
var saveDir = new File(savePath);
|
||||||
|
saveDir.mkdir();
|
||||||
|
var a = savePath + "/" + new File(appConFile).name;
|
||||||
|
var b = savePath + "/" + new File(servletFile).name;
|
||||||
|
// var c = savePath + "/" + new File(securityFile).name;
|
||||||
|
saveXML(appCon, a);
|
||||||
|
saveXML(servlet, b);
|
||||||
|
// saveXML(security, c);
|
||||||
|
}
|
||||||
|
|
||||||
|
// file or dir?
|
||||||
|
var cfg = new File(configPath);
|
||||||
|
if (cfg.directory) {
|
||||||
|
configFiles = getFilesByExtension(configPath, 'xml');
|
||||||
|
} else {
|
||||||
|
configFiles = [ configPath ];
|
||||||
|
}
|
||||||
|
|
||||||
|
for (i in configFiles) {
|
||||||
|
var configFile = configFiles[i];
|
||||||
|
print ("processing config file: " + configFile);
|
||||||
|
// read in config to xml
|
||||||
|
var config = new XML(readFile(configFile));
|
||||||
|
// get list of hbm configs
|
||||||
|
var sessionMapperList =
|
||||||
|
beanProperty(appCon, 'sessionFactory', 'mappingResources').beansNS::list;
|
||||||
|
|
||||||
|
// get list of hbm configs we want to add and add them
|
||||||
|
var hclist = config.addHibernateConfig;
|
||||||
|
for (var hc in hclist) {
|
||||||
|
var newChild = <value>{hclist[hc].@hbmfile}</value>;
|
||||||
|
newChild.setNamespace(beansNS);
|
||||||
|
sessionMapperList.appendChild(newChild);
|
||||||
|
debug('adding hbm config ' + hclist[hc].@hbmfile);
|
||||||
|
}
|
||||||
|
|
||||||
|
// get list of client mappings
|
||||||
|
var clientClassMappings =
|
||||||
|
beanProperty(appCon, 'mappingResourceFactory', 'implementationClassMappings').beansNS::map;
|
||||||
|
|
||||||
|
// get list of mappings we want to add and add them
|
||||||
|
var ccmlist = config.addClientClassMapping;
|
||||||
|
for (var ccm in ccmlist) {
|
||||||
|
var newChild = <entry key={ccmlist[ccm].@key} value={ccmlist[ccm].@value}/>;
|
||||||
|
newChild.setNamespace(beansNS);
|
||||||
|
clientClassMappings.appendChild(newChild);
|
||||||
|
debug('adding client class mapping: ' + newChild);
|
||||||
|
}
|
||||||
|
|
||||||
|
// get list of persistent mappings
|
||||||
|
var persistentClassMappings =
|
||||||
|
beanProperty(appCon, 'persistentMappings', 'implementationClassMappings').beansNS::map;
|
||||||
|
|
||||||
|
// get list of mappings we want to add and add them
|
||||||
|
var pcmlist = config.addPersistentClassMapping;
|
||||||
|
for (var pcm in pcmlist) {
|
||||||
|
var newChild = <entry key={pcmlist[pcm].@key} value={pcmlist[pcm].@value}/>;
|
||||||
|
newChild.setNamespace(beansNS);
|
||||||
|
persistentClassMappings.appendChild(newChild);
|
||||||
|
debug('adding persistent class mapping: ' + newChild);
|
||||||
|
}
|
||||||
|
|
||||||
|
var handlerMappings = beanProperty(servlet, 'urlHandlerMapping', 'properties').beansNS::props;
|
||||||
|
var methodMappings = beanProperty(servlet, 'paramResolver', 'mappings').beansNS::props;
|
||||||
|
|
||||||
|
// get JSPs that we want to add
|
||||||
|
var newJSPs = config.addJSP;
|
||||||
|
for (i in newJSPs) {
|
||||||
|
var jsp = newJSPs[i];
|
||||||
|
debug('adding new jsp: ' + jsp);
|
||||||
|
// construct uri from jsp
|
||||||
|
var uri = '/' + jsp.@jsp + '.html';
|
||||||
|
|
||||||
|
var newHandlerMapping = <prop key={ uri }>{ jsp.@controllerBean } </prop>;
|
||||||
|
newHandlerMapping.setNamespace(beansNS);
|
||||||
|
handlerMappings.appendChild(newHandlerMapping);
|
||||||
|
|
||||||
|
var newMethodMapping = <prop key={ uri }>{ jsp.@jsp } </prop>;
|
||||||
|
newMethodMapping.setNamespace(beansNS);
|
||||||
|
methodMappings.appendChild(newMethodMapping);
|
||||||
|
|
||||||
|
// add role to filterInvocationInterceptor if present
|
||||||
|
/*
|
||||||
|
if (jsp.@role) {
|
||||||
|
var pageRolesDef = security.
|
||||||
|
beansNS::bean.(@id == 'filterInvocationInterceptor').
|
||||||
|
beansNS::property.(@name == 'objectDefinitionSource').beansNS::value;
|
||||||
|
var pageRoles = pageRolesDef.toString().split('\n');
|
||||||
|
// add new role before first pattern (contains '=')
|
||||||
|
for (i in pageRoles) {
|
||||||
|
if (pageRoles[i].indexOf('=') > -1) {
|
||||||
|
pageRoles.splice(i, 0, uri.toLowerCase() + '=' + jsp.@roles);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// put roles together again, and put back into XML
|
||||||
|
pageRolesDef.* = pageRoles.join('\n');
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
// add filter to filter chain in security
|
||||||
|
/*
|
||||||
|
var newFilters = config.addFilter;
|
||||||
|
for (i in newFilters) {
|
||||||
|
var newFilter = newFilters[i];
|
||||||
|
debug('adding new filter: ' + newFilter);
|
||||||
|
var filterDef = beanProperty(
|
||||||
|
security, 'filterChainProxy', 'filterInvocationDefinitionSource').beansNS::value;
|
||||||
|
var filters = filterDef.toString().split('\n');
|
||||||
|
// find filter with matching pattern, and insert new filter before desired location
|
||||||
|
for (i in filters) {
|
||||||
|
if (filters[i].indexOf(newFilter.@pattern + '=') > -1) {
|
||||||
|
var index = filters[i].indexOf(newFilter.@before);
|
||||||
|
if (index > -1) {
|
||||||
|
filters[i] =
|
||||||
|
filters[i].slice(0, index) +
|
||||||
|
newFilter.@filterBean + ',' +
|
||||||
|
filters[i].slice(index);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// put filters together again, and put back into XML
|
||||||
|
filterDef.* = filters.join('\n');
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
// add message catalogs to messageSource in appCon
|
||||||
|
var newCats = config.addMessageCatalog;
|
||||||
|
var msgCatList = beanProperty(appCon, 'messageSource', 'basenames').beansNS::list;
|
||||||
|
for (i in newCats) {
|
||||||
|
var newCat = newCats[i];
|
||||||
|
var newChild = <value>WEB-INF/bundles/{ newCat.@name }</value>;
|
||||||
|
newChild.setNamespace(beansNS);
|
||||||
|
msgCatList.appendChild(newChild);
|
||||||
|
}
|
||||||
|
|
||||||
|
// add internal catalogs to messageSource in appCon
|
||||||
|
var newIntCats = config.addInternalCatalog;
|
||||||
|
for (i in newIntCats) {
|
||||||
|
var newIntCat = newIntCats[i];
|
||||||
|
var newChild = <value>WEB-INF/internal/{ newIntCat.@name }</value>;
|
||||||
|
newChild.setNamespace(beansNS);
|
||||||
|
msgCatList.appendChild(newChild);
|
||||||
|
}
|
||||||
|
|
||||||
|
// generic updates of files (powerful but dangerous!)
|
||||||
|
for each (var ev in config.evalOnFile) {
|
||||||
|
var path = webapp + '/' + ev.@path;
|
||||||
|
var top = new XML(readFile(path));
|
||||||
|
if (savePath) {
|
||||||
|
var saveFile = savePath + "/" + new File(path).name;
|
||||||
|
saveXML(top, saveFile);
|
||||||
|
}
|
||||||
|
for each (var expr in ev.expr) {
|
||||||
|
try {
|
||||||
|
eval(expr.toString());
|
||||||
|
} catch (e) {
|
||||||
|
print('error evaluating ' + expr + ' in file ' + ev.@path);
|
||||||
|
print(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
saveXML(top, path);
|
||||||
|
}
|
||||||
|
|
||||||
|
// generic updates of properties
|
||||||
|
for each (var setProp in config.setProperty) {
|
||||||
|
// should map to one of our files (appCon, servlet, security) or else it'll blow up
|
||||||
|
// TODO allow child element as value
|
||||||
|
// TODO generic adding things to lists, props, maps, etc.
|
||||||
|
if (setProp.@file.length() > 0) {
|
||||||
|
eval("var file = " + setProp.@file);
|
||||||
|
var prop = beanProperty(file, setProp.@bean, setProp.@property);
|
||||||
|
prop.@value = setProp.@value;
|
||||||
|
} else if (setProp.@path.length() > 0) {
|
||||||
|
var path = webapp + '/' + setProp.@path;
|
||||||
|
var file = new XML(readFile(path));
|
||||||
|
var prop = beanProperty(file, setProp.@bean, setProp.@property);
|
||||||
|
prop.@value = setProp.@value;
|
||||||
|
saveXML(file, path);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// web xml stuff, set default namespace correctly
|
||||||
|
default xml namespace = webXml.namespace();
|
||||||
|
// add listeners to web.xml, after first listener
|
||||||
|
for each (var addListener in config.noNS::addListener) {
|
||||||
|
var listenerNode = <listener>
|
||||||
|
<listener-class>{ addListener.@noNS::className } </listener-class>
|
||||||
|
</listener>;
|
||||||
|
if (addListener.@noNS::position == 'last') {
|
||||||
|
webXml.insertChildAfter(webXml.listener[webXml.listener.length() - 1], listenerNode);
|
||||||
|
} else {
|
||||||
|
webXml.insertChildBefore(webXml.listener[0], listenerNode);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// add filters to web.xml, after last filter
|
||||||
|
for each (var filter in config.noNS::addServletSpringFilter) {
|
||||||
|
var filterNode =
|
||||||
|
<filter>
|
||||||
|
<filter-name>{filter.@noNS::beanName}</filter-name>
|
||||||
|
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
|
||||||
|
</filter>;
|
||||||
|
var filterMappingNode =
|
||||||
|
<filter-mapping>
|
||||||
|
<filter-name>{filter.@noNS::beanName}</filter-name>
|
||||||
|
<url-pattern>{filter.@noNS::urlPattern}</url-pattern>
|
||||||
|
</filter-mapping>;
|
||||||
|
webXml.insertChildAfter(webXml.filter[webXml.filter.length() - 1], filterNode);
|
||||||
|
webXml.insertChildAfter(webXml.filter[webXml.filter.length() - 1], filterMappingNode);
|
||||||
|
}
|
||||||
|
|
||||||
|
// set web.xml context param
|
||||||
|
// only works if param's already there
|
||||||
|
for each (var setContextParam in config.noNS::setContextParam) {
|
||||||
|
for each(var p in webXml['context-param']) {
|
||||||
|
if (p['param-name'] == setContextParam.@noNS::name) {
|
||||||
|
p['param-value'] = setContextParam.@noNS::value;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for each (var setServletClass in config.noNS::setServletClass) {
|
||||||
|
for each(var p in webXml['servlet']) {
|
||||||
|
if (p['servlet-name'] == setServletClass.@noNS::name) {
|
||||||
|
p['servlet-class'] = setServletClass.@noNS::className;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for each (var addServlet in config.noNS::addServlet) {
|
||||||
|
webXml.appendChild( <servlet>
|
||||||
|
<servlet-name>{addServlet.@noNS::name}</servlet-name>
|
||||||
|
<servlet-class>{addServlet.@noNS::className}</servlet-class>
|
||||||
|
</servlet>);
|
||||||
|
webXml.appendChild( <servlet-mapping>
|
||||||
|
<servlet-name>{addServlet.@noNS::name}</servlet-name>
|
||||||
|
<url-pattern>{addServlet.@noNS::urlPattern}</url-pattern>
|
||||||
|
</servlet-mapping>);
|
||||||
|
}
|
||||||
|
|
||||||
|
//Web Services
|
||||||
|
default xml namespace = wsDeploy.namespace();
|
||||||
|
for each (var addService in config.noNS::addService) {
|
||||||
|
for each (var service in addService.wsddNS::service) {
|
||||||
|
wsDeploy.appendChild(service);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// reset
|
||||||
|
default xml namespace = "";
|
||||||
|
}
|
||||||
|
|
||||||
|
// write file
|
||||||
|
saveXML(appCon, appConFile);
|
||||||
|
saveXML(servlet, servletFile);
|
||||||
|
saveXML(webXml, webXmlFile);
|
||||||
|
saveXML(wsDeploy, wsDeployFile);
|
||||||
|
// saveXML(security, securityFile);
|
||||||
|
|
||||||
|
} catch (e) {
|
||||||
|
printStackTrace(e);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,45 @@
|
||||||
|
#
|
||||||
|
# Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
# http://www.jaspersoft.com.
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
|
||||||
|
### jboss specific settings
|
||||||
|
# jboss profile (also known as a jboss configuration: all, default, minimal, etc)
|
||||||
|
jboss.profile = default
|
||||||
|
|
||||||
|
# jboss 7 profile
|
||||||
|
jboss7.profile = standalone
|
||||||
|
|
||||||
|
### Glassfish specific settings
|
||||||
|
|
||||||
|
# Glassfish's asadmin path
|
||||||
|
asadminPath = ${fixedAppServerDir}/bin
|
||||||
|
|
||||||
|
# Glassfish domain name (default is domain1)
|
||||||
|
glassfishDomain=domain1
|
||||||
|
|
||||||
|
# Glassfish domain port (default is 4848), user (default is admin) and password.
|
||||||
|
# Uncomment and set up next parmeters if you install JasperServer to the custom Glassfish domain (not default)
|
||||||
|
#glassfishPort=4848
|
||||||
|
#glassfishUser=admin
|
||||||
|
#AS_ADMIN_PASSWORD=adminadmin
|
||||||
|
|
||||||
|
|
||||||
|
# set here JVM Options for Glassfish
|
||||||
|
glassfishJvmOpt=-Xms1024m:-Xmx2048m:-Xss2m:-XX\\:+UseConcMarkSweepGC:-Djavax.xml.soap.MessageFactory=org.apache.axis.soap.MessageFactoryImpl:-Djavax.xml.soap.SOAPConnectionFactory=org.apache.axis.soap.SOAPConnectionFactoryImpl:-Djavax.xml.soap.SOAPFactory=org.apache.axis.soap.SOAPFactoryImpl:-Dcom.sun.enterprise.overrideablejavaxpackages=javax.ws.rs,javax.ws.rs.core,javax.ws.rs.ext:-Dcom.sun.grizzly.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true
|
||||||
|
# set here JVM Options for Glassfish which needs to be removed firstly
|
||||||
|
glassfishJvmOptForRemoving=-Xmx512m
|
||||||
|
|
||||||
|
|
@ -0,0 +1,24 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!DOCTYPE sun-web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Application Server 9.0 Servlet 2.5//EN" "http://www.sun.com/software/appserver/dtds/sun-web-app_2_5-0.dtd">
|
||||||
|
<glassfish-web-app>
|
||||||
|
<context-root>@webAppName@</context-root>
|
||||||
|
<class-loader delegate="false"/>
|
||||||
|
</glassfish-web-app>
|
||||||
|
|
@ -0,0 +1,33 @@
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!DOCTYPE hibernate-configuration PUBLIC
|
||||||
|
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
|
||||||
|
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
|
||||||
|
|
||||||
|
<hibernate-configuration>
|
||||||
|
<session-factory name="metadata">
|
||||||
|
|
||||||
|
<property name="dialect">${hibernateDialect}</property>
|
||||||
|
|
||||||
|
<property name="show_sql">false</property>
|
||||||
|
<property name="format_sql">false</property>
|
||||||
|
</session-factory>
|
||||||
|
</hibernate-configuration>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,33 @@
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
<groupId>com.jaspersoft.jasperserver</groupId>
|
||||||
|
<artifactId>jdbc-dep</artifactId>
|
||||||
|
<packaging>pom</packaging>
|
||||||
|
<version>1.0</version>
|
||||||
|
<name>JDBC driver dependency wrapper</name>
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>${maven.jdbc.groupId}</groupId>
|
||||||
|
<artifactId>${maven.jdbc.artifactId}</artifactId>
|
||||||
|
<version>${maven.jdbc.version}</version>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
</project>
|
||||||
|
|
@ -0,0 +1,88 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!DOCTYPE resources PUBLIC "-//Sun Microsystems Inc.//DTD Application Server 9.0 Domain//EN" "*<install directory>/lib/dtds/sun-resources_1_3.dtd*">
|
||||||
|
|
||||||
|
|
||||||
|
<resources>
|
||||||
|
<jdbc-connection-pool
|
||||||
|
name="jasperserver_pool"
|
||||||
|
datasource-classname="${jdbcDataSourceClass}"
|
||||||
|
res-type="javax.sql.ConnectionPoolDataSource"
|
||||||
|
max-pool-size="50">
|
||||||
|
<property name="serverName" value="${dbHost}"/>
|
||||||
|
<property name="user" value="${js.dbUsername}"/>
|
||||||
|
<property name="password" value="${escapeXML:js.dbPassword}"/>
|
||||||
|
<property name="url" value="${js.jdbcUrl}"/>
|
||||||
|
<property name="databaseName" value="${js.dbName}"/>
|
||||||
|
<property name="driverType" value="${db2.driverType}"/>
|
||||||
|
<property name="portNumber" value="${dbPort}"/>
|
||||||
|
<property name="currentSchema" value="${js.dbName}"/>
|
||||||
|
<property name="fullyMaterializeLobData" value="${db2.fullyMaterializeLobData}"/>
|
||||||
|
<property name="fullyMaterializeInputStreams" value="${db2.fullyMaterializeInputStreams}"/>
|
||||||
|
<property name="progressiveStreaming" value="${db2.progressiveStreaming}"/>
|
||||||
|
<property name="progresssiveLocators" value="${db2.progresssiveLocators}"/>
|
||||||
|
<property name="JDBC30DataSource" value="true"/>
|
||||||
|
<property name="AlternateID" value="${js.dbName}"/>
|
||||||
|
</jdbc-connection-pool>
|
||||||
|
|
||||||
|
<jdbc-resource enabled="true" jndi-name="${js.jndi}" object-type="user" pool-name="jasperserver_pool"/>
|
||||||
|
|
||||||
|
|
||||||
|
<jdbc-connection-pool
|
||||||
|
name="sugarcrm_pool"
|
||||||
|
datasource-classname="${jdbcDataSourceClass}"
|
||||||
|
res-type="javax.sql.ConnectionPoolDataSource"
|
||||||
|
max-pool-size="50">
|
||||||
|
<property name="serverName" value="${dbHost}"/>
|
||||||
|
<property name="user" value="${sugarcrm.dbUsername}"/>
|
||||||
|
<property name="password" value="${escapeXML:sugarcrm.dbPassword}"/>
|
||||||
|
<property name="url" value="${sugarcrm.jdbcUrl}"/>
|
||||||
|
<property name="databaseName" value="${sugarcrm.dbName}"/>
|
||||||
|
<property name="driverType" value="${db2.driverType}"/>
|
||||||
|
<property name="portNumber" value="${dbPort}"/>
|
||||||
|
<property name="currentSchema" value="${sugarcrm.dbName}"/>
|
||||||
|
<property name="JDBC30DataSource" value="true"/>
|
||||||
|
<property name="AlternateID" value="${sugarcrm.dbName}"/>
|
||||||
|
</jdbc-connection-pool>
|
||||||
|
|
||||||
|
<jdbc-resource enabled="true" jndi-name="${sugarcrm.jndi}" object-type="user" pool-name="sugarcrm_pool"/>
|
||||||
|
|
||||||
|
|
||||||
|
<jdbc-connection-pool
|
||||||
|
name="foodmart_pool"
|
||||||
|
datasource-classname="${jdbcDataSourceClass}"
|
||||||
|
res-type="javax.sql.ConnectionPoolDataSource"
|
||||||
|
max-pool-size="50">
|
||||||
|
<property name="serverName" value="${dbHost}"/>
|
||||||
|
<property name="user" value="${foodmart.dbUsername}"/>
|
||||||
|
<property name="password" value="${escapeXML:foodmart.dbPassword}"/>
|
||||||
|
<property name="url" value="${foodmart.jdbcUrl}"/>
|
||||||
|
<property name="databaseName" value="${foodmart.dbName}"/>
|
||||||
|
<property name="driverType" value="${db2.driverType}"/>
|
||||||
|
<property name="portNumber" value="${dbPort}"/>
|
||||||
|
<property name="currentSchema" value="${foodmart.dbName}"/>
|
||||||
|
<property name="JDBC30DataSource" value="true"/>
|
||||||
|
<property name="AlternateID" value="${foodmart.dbName}"/>
|
||||||
|
</jdbc-connection-pool>
|
||||||
|
|
||||||
|
<jdbc-resource enabled="true" jndi-name="${foodmart.jndi}" object-type="user" pool-name="foodmart_pool"/>
|
||||||
|
|
||||||
|
|
||||||
|
</resources>
|
||||||
|
|
@ -0,0 +1,74 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!DOCTYPE resources PUBLIC "-//Sun Microsystems Inc.//DTD Application Server 9.0 Domain//EN" "*<install directory>/lib/dtds/sun-resources_1_3.dtd*">
|
||||||
|
|
||||||
|
|
||||||
|
<resources>
|
||||||
|
<jdbc-connection-pool
|
||||||
|
name="jasperserver_pool"
|
||||||
|
datasource-classname="${jdbcDataSourceClass}"
|
||||||
|
res-type="javax.sql.ConnectionPoolDataSource"
|
||||||
|
max-pool-size="50">
|
||||||
|
<property name="serverName" value="${dbHost}"/>
|
||||||
|
<property name="user" value="${js.dbUsername}"/>
|
||||||
|
<property name="password" value="${escapeXML:js.dbPassword}"/>
|
||||||
|
<property name="url" value="${js.jdbcUrl}"/>
|
||||||
|
<property name="databaseName" value="${js.dbName}"/>
|
||||||
|
<property name="JDBC30DataSource" value="true"/>
|
||||||
|
</jdbc-connection-pool>
|
||||||
|
|
||||||
|
<jdbc-resource enabled="true" jndi-name="${js.jndi}" object-type="user" pool-name="jasperserver_pool"/>
|
||||||
|
|
||||||
|
|
||||||
|
<jdbc-connection-pool
|
||||||
|
name="sugarcrm_pool"
|
||||||
|
datasource-classname="${jdbcDataSourceClass}"
|
||||||
|
res-type="javax.sql.ConnectionPoolDataSource"
|
||||||
|
max-pool-size="50">
|
||||||
|
<property name="serverName" value="${dbHost}"/>
|
||||||
|
<property name="user" value="${sugarcrm.dbUsername}"/>
|
||||||
|
<property name="password" value="${escapeXML:sugarcrm.dbPassword}"/>
|
||||||
|
<property name="url" value="${sugarcrm.jdbcUrl}"/>
|
||||||
|
<property name="databaseName" value="${sugarcrm.dbName}"/>
|
||||||
|
<property name="portNumber" value="${dbPort}"/>
|
||||||
|
<property name="JDBC30DataSource" value="true"/>
|
||||||
|
</jdbc-connection-pool>
|
||||||
|
|
||||||
|
<jdbc-resource enabled="true" jndi-name="${sugarcrm.jndi}" object-type="user" pool-name="sugarcrm_pool"/>
|
||||||
|
|
||||||
|
|
||||||
|
<jdbc-connection-pool
|
||||||
|
name="foodmart_pool"
|
||||||
|
datasource-classname="${jdbcDataSourceClass}"
|
||||||
|
res-type="javax.sql.ConnectionPoolDataSource"
|
||||||
|
max-pool-size="50">
|
||||||
|
<property name="serverName" value="${dbHost}"/>
|
||||||
|
<property name="user" value="${foodmart.dbUsername}"/>
|
||||||
|
<property name="password" value="${escapeXML:foodmart.dbPassword}"/>
|
||||||
|
<property name="url" value="${foodmart.jdbcUrl}"/>
|
||||||
|
<property name="databaseName" value="${foodmart.dbName}"/>
|
||||||
|
<property name="portNumber" value="${dbPort}"/>
|
||||||
|
<property name="JDBC30DataSource" value="true"/>
|
||||||
|
</jdbc-connection-pool>
|
||||||
|
|
||||||
|
<jdbc-resource enabled="true" jndi-name="${foodmart.jndi}" object-type="user" pool-name="foodmart_pool"/>
|
||||||
|
|
||||||
|
|
||||||
|
</resources>
|
||||||
|
|
@ -0,0 +1,85 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!DOCTYPE resources PUBLIC "-//Sun Microsystems Inc.//DTD Application Server 9.0 Domain//EN" "*<install directory>/lib/dtds/sun-resources_1_3.dtd*">
|
||||||
|
|
||||||
|
|
||||||
|
<resources>
|
||||||
|
<jdbc-connection-pool
|
||||||
|
name="jasperserver_pool"
|
||||||
|
datasource-classname="${jdbcDataSourceClass}"
|
||||||
|
res-type="javax.sql.ConnectionPoolDataSource"
|
||||||
|
max-pool-size="50">
|
||||||
|
<property name="serverName" value="${dbHost}"/>
|
||||||
|
<property name="user" value="${js.dbUsername}"/>
|
||||||
|
<property name="password" value="${escapeXML:js.dbPassword}"/>
|
||||||
|
<property name="url" value="${js.jdbcUrl}&user=${js.dbUsername}&password=${escapeXML:js.dbPassword}"/>
|
||||||
|
<property name="databaseName" value="${js.dbName}"/>
|
||||||
|
<property name="driverType" value="${db2.driverType}"/>
|
||||||
|
<property name="portNumber" value="${dbPort}"/>
|
||||||
|
<property name="currentSchema" value="${js.dbName}"/>
|
||||||
|
<property name="fullyMaterializeLobData" value="${db2.fullyMaterializeLobData}"/>
|
||||||
|
<property name="fullyMaterializeInputStreams" value="${db2.fullyMaterializeInputStreams}"/>
|
||||||
|
<property name="progressiveStreaming" value="${db2.progressiveStreaming}"/>
|
||||||
|
<property name="progresssiveLocators" value="${db2.progresssiveLocators}"/>
|
||||||
|
<property name="JDBC30DataSource" value="true"/>
|
||||||
|
</jdbc-connection-pool>
|
||||||
|
|
||||||
|
<jdbc-resource enabled="true" jndi-name="${js.jndi}" object-type="user" pool-name="jasperserver_pool"/>
|
||||||
|
|
||||||
|
|
||||||
|
<jdbc-connection-pool
|
||||||
|
name="sugarcrm_pool"
|
||||||
|
datasource-classname="${jdbcDataSourceClass}"
|
||||||
|
res-type="javax.sql.ConnectionPoolDataSource"
|
||||||
|
max-pool-size="50">
|
||||||
|
<property name="serverName" value="${dbHost}"/>
|
||||||
|
<property name="user" value="${sugarcrm.dbUsername}"/>
|
||||||
|
<property name="password" value="${escapeXML:sugarcrm.dbPassword}"/>
|
||||||
|
<property name="url" value="${sugarcrm.jdbcUrl}&user=${sugarcrm.dbUsername}&password=${escapeXML:sugarcrm.dbPassword}"/>
|
||||||
|
<property name="databaseName" value="${sugarcrm.dbName}"/>
|
||||||
|
<property name="driverType" value="${db2.driverType}"/>
|
||||||
|
<property name="portNumber" value="${dbPort}"/>
|
||||||
|
<property name="currentSchema" value="${sugarcrm.dbName}"/>
|
||||||
|
<property name="JDBC30DataSource" value="true"/>
|
||||||
|
</jdbc-connection-pool>
|
||||||
|
|
||||||
|
<jdbc-resource enabled="true" jndi-name="${sugarcrm.jndi}" object-type="user" pool-name="sugarcrm_pool"/>
|
||||||
|
|
||||||
|
|
||||||
|
<jdbc-connection-pool
|
||||||
|
name="foodmart_pool"
|
||||||
|
datasource-classname="${jdbcDataSourceClass}"
|
||||||
|
res-type="javax.sql.ConnectionPoolDataSource"
|
||||||
|
max-pool-size="50">
|
||||||
|
<property name="serverName" value="${dbHost}"/>
|
||||||
|
<property name="user" value="${foodmart.dbUsername}"/>
|
||||||
|
<property name="password" value="${escapeXML:foodmart.dbPassword}"/>
|
||||||
|
<property name="url" value="${foodmart.jdbcUrl}&user=${foodmart.dbUsername}&password=${escapeXML:foodmart.dbPassword}"/>
|
||||||
|
<property name="databaseName" value="${foodmart.dbName}"/>
|
||||||
|
<property name="driverType" value="${db2.driverType}"/>
|
||||||
|
<property name="portNumber" value="${dbPort}"/>
|
||||||
|
<property name="currentSchema" value="${foodmart.dbName}"/>
|
||||||
|
<property name="JDBC30DataSource" value="true"/>
|
||||||
|
</jdbc-connection-pool>
|
||||||
|
|
||||||
|
<jdbc-resource enabled="true" jndi-name="${foodmart.jndi}" object-type="user" pool-name="foodmart_pool"/>
|
||||||
|
|
||||||
|
|
||||||
|
</resources>
|
||||||
|
|
@ -0,0 +1,77 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!DOCTYPE resources PUBLIC "-//Sun Microsystems Inc.//DTD Application Server 9.0 Domain//EN" "*<install directory>/lib/dtds/sun-resources_1_3.dtd*">
|
||||||
|
|
||||||
|
|
||||||
|
<resources>
|
||||||
|
<jdbc-connection-pool
|
||||||
|
name="jasperserver_pool"
|
||||||
|
datasource-classname="${jdbcDataSourceClass}"
|
||||||
|
res-type="javax.sql.ConnectionPoolDataSource"
|
||||||
|
max-pool-size="50">
|
||||||
|
<property name="serverName" value="${dbHost}"/>
|
||||||
|
<property name="user" value="${js.dbUsername}"/>
|
||||||
|
<property name="password" value="${escapeXML:js.dbPassword}"/>
|
||||||
|
<property name="url" value="${js.jdbcUrl}"/>
|
||||||
|
<property name="${sidOrSnParam}" value="${sidOrSnValue}"/>
|
||||||
|
<property name="portNumber" value="${dbPort}"/>
|
||||||
|
<property name="JDBC30DataSource" value="true"/>
|
||||||
|
</jdbc-connection-pool>
|
||||||
|
|
||||||
|
<jdbc-resource enabled="true" jndi-name="${js.jndi}" object-type="user" pool-name="jasperserver_pool"/>
|
||||||
|
|
||||||
|
|
||||||
|
<jdbc-connection-pool
|
||||||
|
name="sugarcrm_pool"
|
||||||
|
datasource-classname="${jdbcDataSourceClass}"
|
||||||
|
res-type="javax.sql.ConnectionPoolDataSource"
|
||||||
|
max-pool-size="50">
|
||||||
|
<property name="serverName" value="${dbHost}"/>
|
||||||
|
<property name="user" value="${sugarcrm.dbUsername}"/>
|
||||||
|
<property name="password" value="${escapeXML:sugarcrm.dbPassword}"/>
|
||||||
|
<property name="url" value="${sugarcrm.jdbcUrl}"/>
|
||||||
|
<property name="${sidOrSnParam}" value="${sidOrSnValue}"/>
|
||||||
|
<property name="CatalogOptions" value="0"/>
|
||||||
|
<property name="portNumber" value="${dbPort}"/>
|
||||||
|
<property name="JDBC30DataSource" value="true"/>
|
||||||
|
</jdbc-connection-pool>
|
||||||
|
|
||||||
|
<jdbc-resource enabled="true" jndi-name="${sugarcrm.jndi}" object-type="user" pool-name="sugarcrm_pool"/>
|
||||||
|
|
||||||
|
|
||||||
|
<jdbc-connection-pool
|
||||||
|
name="foodmart_pool"
|
||||||
|
datasource-classname="${jdbcDataSourceClass}"
|
||||||
|
res-type="javax.sql.ConnectionPoolDataSource"
|
||||||
|
max-pool-size="50">
|
||||||
|
<property name="serverName" value="${dbHost}"/>
|
||||||
|
<property name="user" value="${foodmart.dbUsername}"/>
|
||||||
|
<property name="password" value="${escapeXML:foodmart.dbPassword}"/>
|
||||||
|
<property name="url" value="${foodmart.jdbcUrl}"/>
|
||||||
|
<property name="${sidOrSnParam}" value="${sidOrSnValue}"/>
|
||||||
|
<property name="portNumber" value="${dbPort}"/>
|
||||||
|
<property name="CatalogOptions" value="0"/>
|
||||||
|
<property name="JDBC30DataSource" value="true"/>
|
||||||
|
</jdbc-connection-pool>
|
||||||
|
|
||||||
|
<jdbc-resource enabled="true" jndi-name="${foodmart.jndi}" object-type="user" pool-name="foodmart_pool"/>
|
||||||
|
|
||||||
|
|
||||||
|
</resources>
|
||||||
|
|
@ -0,0 +1,57 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<datasources>
|
||||||
|
|
||||||
|
<local-tx-datasource>
|
||||||
|
<jndi-name>${js.jndi}</jndi-name>
|
||||||
|
<connection-url>${js.jdbcUrl}</connection-url>
|
||||||
|
<driver-class>${jdbcDriverClass}</driver-class>
|
||||||
|
<user-name>${js.dbUsername}</user-name>
|
||||||
|
<password>${escapeXML:js.dbPassword}</password>
|
||||||
|
<min-pool-size>5</min-pool-size>
|
||||||
|
<max-pool-size>50</max-pool-size>
|
||||||
|
<idle-timeout-minutes>30</idle-timeout-minutes>
|
||||||
|
</local-tx-datasource>
|
||||||
|
|
||||||
|
<local-tx-datasource>
|
||||||
|
<jndi-name>${sugarcrm.jndi}</jndi-name>
|
||||||
|
<connection-url>${sugarcrm.jdbcUrl}</connection-url>
|
||||||
|
<driver-class>${jdbcDriverClass}</driver-class>
|
||||||
|
<user-name>${sugarcrm.dbUsername}</user-name>
|
||||||
|
<password>${escapeXML:sugarcrm.dbPassword}</password>
|
||||||
|
<min-pool-size>5</min-pool-size>
|
||||||
|
<max-pool-size>50</max-pool-size>
|
||||||
|
<idle-timeout-minutes>30</idle-timeout-minutes>
|
||||||
|
</local-tx-datasource>
|
||||||
|
|
||||||
|
<local-tx-datasource>
|
||||||
|
<jndi-name>${foodmart.jndi}</jndi-name>
|
||||||
|
<connection-url>${foodmart.jdbcUrl}</connection-url>
|
||||||
|
<driver-class>${jdbcDriverClass}</driver-class>
|
||||||
|
<user-name>${foodmart.dbUsername}</user-name>
|
||||||
|
<password>${escapeXML:foodmart.dbPassword}</password>
|
||||||
|
<min-pool-size>5</min-pool-size>
|
||||||
|
<max-pool-size>50</max-pool-size>
|
||||||
|
<idle-timeout-minutes>30</idle-timeout-minutes>
|
||||||
|
</local-tx-datasource>
|
||||||
|
|
||||||
|
</datasources>
|
||||||
|
|
||||||
|
|
@ -0,0 +1,104 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<datasources>
|
||||||
|
<!--
|
||||||
|
http://bugzilla.jaspersoft.com/show_bug.cgi?id=24621
|
||||||
|
|
||||||
|
2013-09-25 thorick
|
||||||
|
A couple of surprising facts about JBoss EAP6/AS7 'IronJacamar'
|
||||||
|
Connection Pools:
|
||||||
|
1. no matter what you specify for <validate-in-match> it is forced to 'TRUE' at runtime
|
||||||
|
2. if you have validation on (and it's ALWAYS on by #1 above)
|
||||||
|
you MUST provide a validation mechanism,
|
||||||
|
if you DO NOT, then once the Connections are gone,
|
||||||
|
they are never coming back, even when the DBMS service is restored.
|
||||||
|
|
||||||
|
For JBoss we choose SQL Statement validation.
|
||||||
|
We set <validate-on-match> to true for clarity (setting it to 'false' will not actually set it to false).
|
||||||
|
|
||||||
|
|
||||||
|
Also: if you do not specify a max pool size, the default value is apparently 20.
|
||||||
|
|
||||||
|
-->
|
||||||
|
|
||||||
|
<datasource jta="false" jndi-name="java:/${js.jndi}" pool-name="${js.dbName}" enabled="true" use-ccm="false">
|
||||||
|
<connection-url>${js.jdbcUrl}</connection-url>
|
||||||
|
<driver>${maven.jdbc.artifactId}-${maven.jdbc.version}.jar</driver>
|
||||||
|
<security>
|
||||||
|
<user-name>${js.dbUsername}</user-name>
|
||||||
|
<password>${escapeXML:js.dbPassword}</password>
|
||||||
|
</security>
|
||||||
|
<pool>
|
||||||
|
<min-pool-size>5</min-pool-size>
|
||||||
|
<max-pool-size>50</max-pool-size>
|
||||||
|
<prefill>true</prefill>
|
||||||
|
</pool>
|
||||||
|
<validation>
|
||||||
|
<validate-on-match>false</validate-on-match>
|
||||||
|
<background-validation>false</background-validation>
|
||||||
|
<check-valid-connection-sql>${jdbcTestTableQuery}</check-valid-connection-sql>
|
||||||
|
</validation>
|
||||||
|
<statement>
|
||||||
|
<share-prepared-statements>false</share-prepared-statements>
|
||||||
|
</statement>
|
||||||
|
</datasource>
|
||||||
|
<datasource jta="false" jndi-name="java:/${foodmart.jndi}" pool-name="${foodmart.dbName}" enabled="true" use-ccm="false">
|
||||||
|
<connection-url>${foodmart.jdbcUrl}</connection-url>
|
||||||
|
<driver>${maven.jdbc.artifactId}-${maven.jdbc.version}.jar</driver>
|
||||||
|
<security>
|
||||||
|
<user-name>${foodmart.dbUsername}</user-name>
|
||||||
|
<password>${escapeXML:foodmart.dbPassword}</password>
|
||||||
|
</security>
|
||||||
|
<pool>
|
||||||
|
<min-pool-size>5</min-pool-size>
|
||||||
|
<max-pool-size>50</max-pool-size>
|
||||||
|
<prefill>true</prefill>
|
||||||
|
</pool>
|
||||||
|
<validation>
|
||||||
|
<validate-on-match>false</validate-on-match>
|
||||||
|
<background-validation>false</background-validation>
|
||||||
|
<check-valid-connection-sql>${jdbcTestTableQuery}</check-valid-connection-sql>
|
||||||
|
</validation>
|
||||||
|
<statement>
|
||||||
|
<share-prepared-statements>false</share-prepared-statements>
|
||||||
|
</statement>
|
||||||
|
</datasource>
|
||||||
|
<datasource jta="false" jndi-name="java:/${sugarcrm.jndi}" pool-name="${sugarcrm.dbName}" enabled="true" use-ccm="false">
|
||||||
|
<connection-url>${sugarcrm.jdbcUrl}</connection-url>
|
||||||
|
<driver>${maven.jdbc.artifactId}-${maven.jdbc.version}.jar</driver>
|
||||||
|
<security>
|
||||||
|
<user-name>${sugarcrm.dbUsername}</user-name>
|
||||||
|
<password>${escapeXML:sugarcrm.dbPassword}</password>
|
||||||
|
</security>
|
||||||
|
<pool>
|
||||||
|
<min-pool-size>5</min-pool-size>
|
||||||
|
<max-pool-size>50</max-pool-size>
|
||||||
|
<prefill>true</prefill>
|
||||||
|
</pool>
|
||||||
|
<validation>
|
||||||
|
<validate-on-match>false</validate-on-match>
|
||||||
|
<background-validation>false</background-validation>
|
||||||
|
<check-valid-connection-sql>${jdbcTestTableQuery}</check-valid-connection-sql>
|
||||||
|
</validation>
|
||||||
|
<statement>
|
||||||
|
<share-prepared-statements>false</share-prepared-statements>
|
||||||
|
</statement>
|
||||||
|
</datasource>
|
||||||
|
</datasources>
|
||||||
|
|
@ -0,0 +1,24 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# Usage example:
|
||||||
|
# ./js-mvn verify -o
|
||||||
|
# ./js-mvn verify -projects=:adhoc-integration-test -o
|
||||||
|
|
||||||
|
DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
|
||||||
|
|
||||||
|
export MAVEN_OPTS="-Xms128m -Xmx512m"
|
||||||
|
|
||||||
|
MVN_RUN=mvn
|
||||||
|
|
||||||
|
CMD_LINE_ARGS=$*
|
||||||
|
|
||||||
|
$MVN_RUN -s ${currentConf}/maven_settings.xml -DskipUnitTestDir $CMD_LINE_ARGS
|
||||||
|
|
||||||
|
# ant fix-webapp-name
|
||||||
|
# Coping war folder to installer location
|
||||||
|
echo "Buildomatic war folders maybe outdated"
|
||||||
|
echo " ${warDir}/${webAppNameSrcCE}"
|
||||||
|
echo " ${warDir}/${webAppNameSrcPro}"
|
||||||
|
echo "Pro tip: To deploy webapp use 'ant copy-pro-war deploy-webapp-pro'"
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,31 @@
|
||||||
|
#
|
||||||
|
# Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
# http://www.jaspersoft.com.
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
|
||||||
|
# Enable or disable creation and updates to AWS RDS and Redshift DB Security Groups.
|
||||||
|
aws.db.security.group.changes.enabled=${aws.db.security.group.changes.enabled}
|
||||||
|
|
||||||
|
# DB Security Group Name. This name will be used as the basis for the JRS server instance DB Security Group name. You must update it to be UNIQUE in the list of
|
||||||
|
# DB Security Groups, only if the JRS server instance is running outside of AWS EC2. If JRS will run on EC2, then the instance id will be added to make it unique.
|
||||||
|
aws.db.security.group.name=${aws.db.security.group.name}
|
||||||
|
aws.db.security.group.description=${aws.db.security.group.description}
|
||||||
|
|
||||||
|
# Ingress Public Ip address that will be added in the DB Security Group to grant access to target DB instance(s).
|
||||||
|
aws.db.security.group.ingressPublicIp=${aws.db.security.group.ingressPublicIp}
|
||||||
|
|
||||||
|
# Property, that control whether to suppress Warning if IAM role not properly configured in EC2 environment
|
||||||
|
aws.db.security.group.suppressEc2CredentialsWarnings=${aws.db.security.group.suppressEc2CredentialsWarnings}
|
||||||
|
|
@ -0,0 +1,68 @@
|
||||||
|
#
|
||||||
|
# Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
# http://www.jaspersoft.com.
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
|
||||||
|
# enable or disable auditing monitoring feature
|
||||||
|
feature.audit_monitoring.enabled=${jrs.config.enable.audit_monitoring}
|
||||||
|
|
||||||
|
# Enable or disable Auditing
|
||||||
|
audit.records.enabled=${jrs.config.enable.audit.records}
|
||||||
|
|
||||||
|
# Enable or disable Monitoring
|
||||||
|
monitoring.records.enabled=${jrs.config.enable.monitoring.records}
|
||||||
|
|
||||||
|
# Enable or disable HeartBeat
|
||||||
|
heartbeat.enabled=${jrs.config.enable.heartbeat}
|
||||||
|
heartbeat.askForPermission.enabled=${jrs.config.enable.heartbeat.askForPermission}
|
||||||
|
heartbeat.permissionGranted.enabled=${jrs.config.enable.heartbeat.permissionGranted}
|
||||||
|
|
||||||
|
# Max upload file size across application in bytes
|
||||||
|
# -1 - size not limited
|
||||||
|
file.upload.max.size=-1
|
||||||
|
|
||||||
|
# Control default value of javascript optimization in runtime
|
||||||
|
javascript.optimize=${optimize.javascript}
|
||||||
|
|
||||||
|
# Path to PhantomJS executable, required for dashboard export
|
||||||
|
# Example: phantomjs.binary=/usr/bin/phantomjs
|
||||||
|
phantomjs.binary=${headless.browser}
|
||||||
|
|
||||||
|
# Base url of the server, accessible by local browser
|
||||||
|
# Used for Dashboard export and Scheduling
|
||||||
|
# By default, it is determined from request, set this property in order to work with scheduled
|
||||||
|
# jobs without logging in even once or to use some custom URL
|
||||||
|
# Example: deploy.base.local.url=http://localhost:8080/jasperserver-pro
|
||||||
|
deploy.base.local.url=
|
||||||
|
|
||||||
|
# Control links in hypermedia documents
|
||||||
|
# for example: deploy.base.url=http://bi.example.com
|
||||||
|
# right now works only for home page
|
||||||
|
# if empty then use request url
|
||||||
|
deploy.base.url=
|
||||||
|
|
||||||
|
## New external auth tenant creation: user config
|
||||||
|
new.tenant.user.name.1=jasperadmin
|
||||||
|
new.tenant.user.fullname.1=jasperadmin
|
||||||
|
# To encrypt the user password, set new.tenant.user.password.1=${tenant.user.pass} here.
|
||||||
|
# Then, in master properties, uncomment encrypt=true, set tenant.user.pass=<Your Password> and
|
||||||
|
# propsToEncrypt=tenant.user.pass. Run in buildomatic folder: ant refresh-config. Find the encrypted
|
||||||
|
# password in buildomatic master.properties and in /build_conf/default/js.config.properties
|
||||||
|
new.tenant.user.password.1=jasperadmin
|
||||||
|
new.tenant.user.email.1=
|
||||||
|
|
||||||
|
# Repo FTP access
|
||||||
|
ftp.enabled=${ftp.enabled}
|
||||||
|
|
@ -0,0 +1,24 @@
|
||||||
|
#
|
||||||
|
# Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
# http://www.jaspersoft.com.
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
|
||||||
|
#Diagnostic default remote access configuration
|
||||||
|
diagnostic.usePlatformJMXServer = ${diagnostic.jmx.usePlatformServer}
|
||||||
|
diagnostic.port = ${diagnostic.jmx.port}
|
||||||
|
diagnostic.name = ${diagnostic.jmx.name}
|
||||||
|
diagnostic.rmiHost = ${diagnostic.jmx.rmiHost}
|
||||||
|
|
||||||
|
|
@ -0,0 +1,28 @@
|
||||||
|
#
|
||||||
|
# Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
# http://www.jaspersoft.com.
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
|
||||||
|
# External authentication properties that can be configured via
|
||||||
|
# the master.properties file
|
||||||
|
external.jdbc.driverClassName=${external.jdbcDriverClass}
|
||||||
|
external.jdbc.url=${external.jdbcUrl}
|
||||||
|
external.jdbc.username=${external.dbUsername}
|
||||||
|
external.jdbc.password=${external.dbPassword}
|
||||||
|
|
||||||
|
external.ldap.url=${external.ldapUrl}
|
||||||
|
external.ldap.username=${external.ldapDn}
|
||||||
|
external.ldap.password=${external.ldapPassword}
|
||||||
|
|
@ -0,0 +1,78 @@
|
||||||
|
#
|
||||||
|
# Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
# http://www.jaspersoft.com.
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
|
||||||
|
# Property that determines the Hibernate dialect
|
||||||
|
metadata.hibernate.dialect=${hibernateDialect}
|
||||||
|
|
||||||
|
# jasperserver repo db settings
|
||||||
|
metadata.jdbc.driverClassName=${jdbcDriverClass}
|
||||||
|
metadata.jdbc.url=${js.jdbcUrl}
|
||||||
|
metadata.jdbc.username=${dbUsername}
|
||||||
|
metadata.jdbc.password=${dbPassword}
|
||||||
|
metadata.jdbc.password.escapeXML=${escapeXML:dbPassword}
|
||||||
|
|
||||||
|
metadata.jndi=${js.jndi}
|
||||||
|
|
||||||
|
metadata.database.generate=true
|
||||||
|
|
||||||
|
# foodmart db settings
|
||||||
|
foodmart.jdbc.driverClassName=${jdbcDriverClass}
|
||||||
|
foodmart.jdbc.url=${foodmart.jdbcUrl}
|
||||||
|
foodmart.jdbc.username=${foodmart.dbUsername}
|
||||||
|
foodmart.jdbc.password=${foodmart.dbPassword}
|
||||||
|
foodmart.jdbc.password.escapeXML=${escapeXML:foodmart.dbPassword}
|
||||||
|
|
||||||
|
foodmart.jndi=${foodmart.jndi}
|
||||||
|
|
||||||
|
# sugarcrm db settings
|
||||||
|
sugarcrm.jdbc.driverClassName=${jdbcDriverClass}
|
||||||
|
sugarcrm.jdbc.url=${sugarcrm.jdbcUrl}
|
||||||
|
sugarcrm.jdbc.username=${sugarcrm.dbUsername}
|
||||||
|
sugarcrm.jdbc.password=${sugarcrm.dbPassword}
|
||||||
|
sugarcrm.jdbc.password.escapeXML=${escapeXML:sugarcrm.dbPassword}
|
||||||
|
|
||||||
|
sugarcrm.jndi=${sugarcrm.jndi}
|
||||||
|
|
||||||
|
# sugarcrm is also referenced as test in unit tests
|
||||||
|
test.jdbc.driverClassName=${jdbcDriverClass}
|
||||||
|
test.jdbc.url=${sugarcrm.jdbcUrl}
|
||||||
|
test.jdbc.username=${sugarcrm.dbUsername}
|
||||||
|
test.jdbc.password=${sugarcrm.dbPassword}
|
||||||
|
test.jdbc.password.escapeXML=${escapeXML:sugarcrm.dbPassword}
|
||||||
|
|
||||||
|
test.jndi=${sugarcrm.jndi}
|
||||||
|
|
||||||
|
# flag used to skip some unit tests or to use uppercase schema files
|
||||||
|
test.databaseFlavor=${dbType}
|
||||||
|
test.createMinimalData=${test.set.createMinimalData}
|
||||||
|
foodmart.upperCaseNames=${test.foodmart.upperCaseNames}
|
||||||
|
sugarcrm.upperCaseNames=${test.sugarcrm.upperCaseNames}
|
||||||
|
|
||||||
|
# used to add parms to tomcat datasource: context.xml
|
||||||
|
# todo: still used?
|
||||||
|
datasource.extra.params=
|
||||||
|
|
||||||
|
# Tomcat JNDI Resource factory attribute
|
||||||
|
tomcat.basic.datasource.factory=${tomcatBasicDatasourceFactory}
|
||||||
|
|
||||||
|
# jasperserver repo DB for Integration Testing
|
||||||
|
it.metadata.jdbc.driverClassName=${jdbcDriverClass}
|
||||||
|
it.metadata.jdbc.url=${js.it.jdbcUrl}
|
||||||
|
it.metadata.jdbc.username=${dbUsername}
|
||||||
|
it.metadata.jdbc.password=${dbPassword}
|
||||||
|
it.metadata.jdbc.password.escapeXML=${escapeXML:dbPassword}
|
||||||
|
|
@ -0,0 +1,59 @@
|
||||||
|
#
|
||||||
|
# Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
# http://www.jaspersoft.com.
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
|
||||||
|
# This file will consolidate all the configurable quartz properties
|
||||||
|
#
|
||||||
|
# Other properties which didn't need configuration are kept in js.quartz.base.properties
|
||||||
|
|
||||||
|
quartz.delegateClass=${quartz.delegateClass}
|
||||||
|
|
||||||
|
quartz.tablePrefix=${quartz.tablePrefix}
|
||||||
|
|
||||||
|
#value would be one of the following
|
||||||
|
#SMART_POLICY
|
||||||
|
#MISFIRE_INSTRUCTION_FIRE_NOW
|
||||||
|
#MISFIRE_INSTRUCTION_IGNORE_MISFIRE_POLICY
|
||||||
|
report.quartz.misfirepolicy.singlesimplejob=SMART_POLICY
|
||||||
|
|
||||||
|
#value would be one of the following
|
||||||
|
#SMART_POLICY
|
||||||
|
#MISFIRE_INSTRUCTION_FIRE_NOW
|
||||||
|
#MISFIRE_INSTRUCTION_IGNORE_MISFIRE_POLICY
|
||||||
|
#MISFIRE_INSTRUCTION_RESCHEDULE_NEXT_WITH_EXISTING_COUNT
|
||||||
|
#MISFIRE_INSTRUCTION_RESCHEDULE_NEXT_WITH_REMAINING_COUNT
|
||||||
|
#MISFIRE_INSTRUCTION_RESCHEDULE_NOW_WITH_EXISTING_REPEAT_COUNT
|
||||||
|
#MISFIRE_INSTRUCTION_RESCHEDULE_NOW_WITH_REMAINING_REPEAT_COUNT
|
||||||
|
report.quartz.misfirepolicy.repeatingsimplejob=SMART_POLICY
|
||||||
|
|
||||||
|
|
||||||
|
#value would be one of the following
|
||||||
|
#SMART_POLICY
|
||||||
|
#MISFIRE_INSTRUCTION_IGNORE_MISFIRE_POLICY
|
||||||
|
#MISFIRE_INSTRUCTION_FIRE_ONCE_NOW
|
||||||
|
#MISFIRE_INSTRUCTION_DO_NOTHING
|
||||||
|
report.quartz.misfirepolicy.calendarjob=SMART_POLICY
|
||||||
|
quartz.extraSettings=
|
||||||
|
|
||||||
|
report.scheduler.web.deployment.uri=${quartz.web.deployment.uri}
|
||||||
|
|
||||||
|
report.scheduler.mail.sender.host=${quartz.mail.sender.host}
|
||||||
|
report.scheduler.mail.sender.username=${quartz.mail.sender.username}
|
||||||
|
report.scheduler.mail.sender.password=${quartz.mail.sender.password}
|
||||||
|
report.scheduler.mail.sender.from=${quartz.mail.sender.from}
|
||||||
|
report.scheduler.mail.sender.protocol=${quartz.mail.sender.protocol}
|
||||||
|
report.scheduler.mail.sender.port=${quartz.mail.sender.port}
|
||||||
|
|
@ -0,0 +1,195 @@
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<settings>
|
||||||
|
<offline>${maven.offline}</offline>
|
||||||
|
<localRepository>${maven-localrepo-path}</localRepository>
|
||||||
|
<profiles>
|
||||||
|
<profile>
|
||||||
|
<id>JasperServerProfile</id>
|
||||||
|
<properties>
|
||||||
|
<repository.database.driver.groupId>${maven.jdbc.groupId}</repository.database.driver.groupId>
|
||||||
|
<repository.database.driver.artifactId>${maven.jdbc.artifactId}</repository.database.driver.artifactId>
|
||||||
|
<repository.database.driver.version>${maven.jdbc.version}</repository.database.driver.version>
|
||||||
|
<js.quartz.properties>${currentConf}/js.quartz.properties</js.quartz.properties>
|
||||||
|
<js.quartz.base.properties>${currentConf}/js.quartz.base.properties</js.quartz.base.properties>
|
||||||
|
<js.quartz.script>${js-base-path}/scripts/quartz/${quartz.ddlScript}</js.quartz.script>
|
||||||
|
<metadata.database.generate>false</metadata.database.generate>
|
||||||
|
<suppress.quartz.init>true</suppress.quartz.init>
|
||||||
|
<js-path>${js-path}</js-path>
|
||||||
|
<js-pro-path>${js-pro-path}</js-pro-path>
|
||||||
|
<jasperserver-repo>file:/${repo-path}</jasperserver-repo> <!-- used for jpivot bld only -->
|
||||||
|
<platform-path>${currentConf}</platform-path>
|
||||||
|
<test.hibernate.cfg>${currentConf}/hibernate.cfg.xml</test.hibernate.cfg>
|
||||||
|
<test.hibernate.jdbc.properties>${currentConf}/js.jdbc.properties</test.hibernate.jdbc.properties>
|
||||||
|
<master.properties>${masterPropsSource}</master.properties>
|
||||||
|
<!-- workaround src w/o tibco drivers -->
|
||||||
|
<tibco.driver.available>false</tibco.driver.available>
|
||||||
|
<SKIP_TEST_ARG>skipTests</SKIP_TEST_ARG>
|
||||||
|
<disable.fafj>false</disable.fafj>
|
||||||
|
</properties>
|
||||||
|
<repositories>
|
||||||
|
<repository>
|
||||||
|
<id>JBoss</id>
|
||||||
|
<url>https://repository.jboss.org/nexus/content/groups/public</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>false</enabled>
|
||||||
|
</snapshots>
|
||||||
|
<releases>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</releases>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>jaspersoft-external-addons</id>
|
||||||
|
<url>http://jaspersoft.jfrog.io/jaspersoft/jrs-ce-addons-releases</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>false</enabled>
|
||||||
|
</snapshots>
|
||||||
|
<releases>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</releases>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>jaspersoft-external-addons-snapshots</id>
|
||||||
|
<url>http://jaspersoft.jfrog.io/jaspersoft/jrs-ce-addons-snapshots</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
<updatePolicy>always</updatePolicy>
|
||||||
|
</snapshots>
|
||||||
|
<releases>
|
||||||
|
<enabled>false</enabled>
|
||||||
|
</releases>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>jaspersoft-js-modules</id>
|
||||||
|
<url>http://jaspersoft.jfrog.io/jaspersoft/jrs-ce-js-modules</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
<updatePolicy>always</updatePolicy>
|
||||||
|
</snapshots>
|
||||||
|
<releases>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</releases>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>jaspersoft-external-third-party</id>
|
||||||
|
<url>http://jaspersoft.jfrog.io/jaspersoft/third-party-ce-artifacts</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</snapshots>
|
||||||
|
<releases>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</releases>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>jasperreports-snapshots</id>
|
||||||
|
<url>http://jaspersoft.jfrog.io/jaspersoft/jr-ce-snapshots/</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
<updatePolicy>always</updatePolicy>
|
||||||
|
</snapshots>
|
||||||
|
<releases>
|
||||||
|
<enabled>false</enabled>
|
||||||
|
</releases>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>jasperreports-releases</id>
|
||||||
|
<url>http://jaspersoft.jfrog.io/jaspersoft/jr-ce-releases</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>false</enabled>
|
||||||
|
</snapshots>
|
||||||
|
<releases>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</releases>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>jboss-eap-alpha</id>
|
||||||
|
<name>JBoss EAP 6.3.0.Alpha</name>
|
||||||
|
<url>https://maven.repository.redhat.com/earlyaccess/all/</url>
|
||||||
|
<layout>default</layout>
|
||||||
|
<releases>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
<updatePolicy>never</updatePolicy>
|
||||||
|
</releases>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>false</enabled>
|
||||||
|
</snapshots>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>Repo1 Maven</id>
|
||||||
|
<url>http://repo1.maven.org/maven2/</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</snapshots>
|
||||||
|
<releases>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</releases>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>SpringSource</id>
|
||||||
|
<url>http://repo.springsource.org/release</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</snapshots>
|
||||||
|
<releases>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</releases>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>Google</id>
|
||||||
|
<url>http://z-os.googlecode.com/svn/release-repository/</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>false</enabled>
|
||||||
|
</snapshots>
|
||||||
|
<releases>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</releases>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>jaspersoft-3rd-party</id>
|
||||||
|
<url>http://jaspersoft.jfrog.io/jaspersoft/jaspersoft-3rd-party</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</snapshots>
|
||||||
|
<releases>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</releases>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>cloudera-repo-releases</id>
|
||||||
|
<url>https://repository.cloudera.com/artifactory/repo/</url>
|
||||||
|
</repository>
|
||||||
|
</repositories>
|
||||||
|
<pluginRepositories>
|
||||||
|
<pluginRepository>
|
||||||
|
<id>jaspersoft-external-third-party</id>
|
||||||
|
<url>http://jaspersoft.jfrog.io/jaspersoft/third-party-ce-artifacts</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>false</enabled>
|
||||||
|
</snapshots>
|
||||||
|
<releases>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</releases>
|
||||||
|
</pluginRepository>
|
||||||
|
</pluginRepositories>
|
||||||
|
</profile>
|
||||||
|
</profiles>
|
||||||
|
<activeProfiles>
|
||||||
|
<activeProfile>JasperServerProfile</activeProfile>
|
||||||
|
</activeProfiles>
|
||||||
|
</settings>
|
||||||
|
|
@ -0,0 +1,59 @@
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<settings>
|
||||||
|
<offline>${maven.offline}</offline>
|
||||||
|
<localRepository>${maven-localrepo-path}</localRepository>
|
||||||
|
<profiles>
|
||||||
|
<profile>
|
||||||
|
<id>JasperServerProfile</id>
|
||||||
|
<properties>
|
||||||
|
<repository.database.driver.groupId>${maven.jdbc.groupId}</repository.database.driver.groupId>
|
||||||
|
<repository.database.driver.artifactId>${maven.jdbc.artifactId}</repository.database.driver.artifactId>
|
||||||
|
<repository.database.driver.version>${maven.jdbc.version}</repository.database.driver.version>
|
||||||
|
<js.quartz.properties>${currentConf}/js.quartz.properties</js.quartz.properties>
|
||||||
|
<js.quartz.base.properties>${currentConf}/js.quartz.base.properties</js.quartz.base.properties>
|
||||||
|
<js.quartz.script>${js-base-path}/scripts/quartz/${quartz.ddlScript}</js.quartz.script>
|
||||||
|
<js.db.script.path>${currentSqlDir}</js.db.script.path>
|
||||||
|
<metadata.database.generate>false</metadata.database.generate>
|
||||||
|
<suppress.quartz.init>true</suppress.quartz.init>
|
||||||
|
<js-path>${js-path}</js-path>
|
||||||
|
<js-pro-path>${js-pro-path}</js-pro-path>
|
||||||
|
<jasperserver-repo>file:/${repo-path}</jasperserver-repo> <!-- used for jpivot bld only -->
|
||||||
|
<platform-path>${currentConf}</platform-path>
|
||||||
|
<test.hibernate.cfg>${currentConf}/hibernate.cfg.xml</test.hibernate.cfg>
|
||||||
|
<test.hibernate.jdbc.properties>${currentConf}/js.jdbc.properties</test.hibernate.jdbc.properties>
|
||||||
|
<master.properties>${masterPropsSource}</master.properties>
|
||||||
|
<!-- workaround src w/o tibco drivers -->
|
||||||
|
<tibco.driver.available>false</tibco.driver.available>
|
||||||
|
<SKIP_TEST_ARG>skipTests</SKIP_TEST_ARG>
|
||||||
|
<disable.fafj>${disable.fafj}</disable.fafj>
|
||||||
|
</properties>
|
||||||
|
<repositories>
|
||||||
|
<!-- custom repositories definition -->
|
||||||
|
</repositories>
|
||||||
|
<pluginRepositories>
|
||||||
|
<!-- custom pluginRepositories definition -->
|
||||||
|
</pluginRepositories>
|
||||||
|
</profile>
|
||||||
|
</profiles>
|
||||||
|
<activeProfiles>
|
||||||
|
<activeProfile>JasperServerProfile</activeProfile>
|
||||||
|
</activeProfiles>
|
||||||
|
<!-- custom configurations -->
|
||||||
|
</settings>
|
||||||
|
|
@ -0,0 +1,87 @@
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<settings>
|
||||||
|
<offline>${maven.offline}</offline>
|
||||||
|
<localRepository>${maven-localrepo-path}</localRepository>
|
||||||
|
<profiles>
|
||||||
|
<profile>
|
||||||
|
<id>JasperServerProfile</id>
|
||||||
|
<properties>
|
||||||
|
<repository.database.driver.groupId>${maven.jdbc.groupId}</repository.database.driver.groupId>
|
||||||
|
<repository.database.driver.artifactId>${maven.jdbc.artifactId}</repository.database.driver.artifactId>
|
||||||
|
<repository.database.driver.version>${maven.jdbc.version}</repository.database.driver.version>
|
||||||
|
<js.quartz.properties>${currentConf}/js.quartz.properties</js.quartz.properties>
|
||||||
|
<js.quartz.base.properties>${currentConf}/js.quartz.base.properties</js.quartz.base.properties>
|
||||||
|
<js.quartz.script>${js-base-path}/scripts/quartz/${quartz.ddlScript}</js.quartz.script>
|
||||||
|
<js.db.script.path>${currentSqlDir}</js.db.script.path>
|
||||||
|
<metadata.database.generate>false</metadata.database.generate>
|
||||||
|
<suppress.quartz.init>true</suppress.quartz.init>
|
||||||
|
<js-path>${js-path}</js-path>
|
||||||
|
<js-pro-path>${js-pro-path}</js-pro-path>
|
||||||
|
<platform-path>${currentConf}</platform-path>
|
||||||
|
<test.hibernate.cfg>${currentConf}/hibernate.cfg.xml</test.hibernate.cfg>
|
||||||
|
<test.hibernate.jdbc.properties>${currentConf}/js.jdbc.properties</test.hibernate.jdbc.properties>
|
||||||
|
<master.properties>${masterPropsSource}</master.properties>
|
||||||
|
<!-- workaround src w/o tibco drivers -->
|
||||||
|
<tibco.driver.available>${tibco.driver.available}</tibco.driver.available>
|
||||||
|
<SKIP_TEST_ARG>${SKIP_TEST_ARG}</SKIP_TEST_ARG>
|
||||||
|
<disable.fafj>${disable.fafj}</disable.fafj>
|
||||||
|
</properties>
|
||||||
|
</profile>
|
||||||
|
<profile>
|
||||||
|
<repositories>
|
||||||
|
<repository>
|
||||||
|
<id>jaspersoft-central</id>
|
||||||
|
<name>repo</name>
|
||||||
|
<url>${mvn-mirror}</url>
|
||||||
|
<snapshots>
|
||||||
|
<updatePolicy>always</updatePolicy>
|
||||||
|
</snapshots>
|
||||||
|
</repository>
|
||||||
|
</repositories>
|
||||||
|
<pluginRepositories>
|
||||||
|
<pluginRepository>
|
||||||
|
<id>jaspersoft-central</id>
|
||||||
|
<name>repo</name>
|
||||||
|
<url>${mvn-mirror}</url>
|
||||||
|
</pluginRepository>
|
||||||
|
</pluginRepositories>
|
||||||
|
<id>jaspersoft-central</id>
|
||||||
|
</profile>
|
||||||
|
</profiles>
|
||||||
|
<mirrors>
|
||||||
|
<mirror>
|
||||||
|
<mirrorOf>*</mirrorOf>
|
||||||
|
<name>repo</name>
|
||||||
|
<url>${mvn-mirror}</url>
|
||||||
|
<id>repo</id>
|
||||||
|
</mirror>
|
||||||
|
</mirrors>
|
||||||
|
<activeProfiles>
|
||||||
|
<activeProfile>JasperServerProfile</activeProfile>
|
||||||
|
<activeProfile>jaspersoft-central</activeProfile>
|
||||||
|
</activeProfiles>
|
||||||
|
<servers>
|
||||||
|
<server>
|
||||||
|
<id>myserver</id>
|
||||||
|
<username>tomcat</username>
|
||||||
|
<password>tomcat</password>
|
||||||
|
</server>
|
||||||
|
</servers>
|
||||||
|
</settings>
|
||||||
|
|
@ -0,0 +1,146 @@
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<settings>
|
||||||
|
<offline>${maven.offline}</offline>
|
||||||
|
<localRepository>${maven-localrepo-path}</localRepository>
|
||||||
|
<profiles>
|
||||||
|
<profile>
|
||||||
|
<id>JasperServerProfile</id>
|
||||||
|
<properties>
|
||||||
|
<repository.database.driver.groupId>${maven.jdbc.groupId}</repository.database.driver.groupId>
|
||||||
|
<repository.database.driver.artifactId>${maven.jdbc.artifactId}</repository.database.driver.artifactId>
|
||||||
|
<repository.database.driver.version>${maven.jdbc.version}</repository.database.driver.version>
|
||||||
|
<js.quartz.properties>${currentConf}/js.quartz.properties</js.quartz.properties>
|
||||||
|
<js.quartz.base.properties>${currentConf}/js.quartz.base.properties</js.quartz.base.properties>
|
||||||
|
<js.quartz.script>${js-base-path}/scripts/quartz/${quartz.ddlScript}</js.quartz.script>
|
||||||
|
<js.db.script.path>${currentSqlDir}</js.db.script.path>
|
||||||
|
<metadata.database.generate>false</metadata.database.generate>
|
||||||
|
<suppress.quartz.init>true</suppress.quartz.init>
|
||||||
|
<js-path>${js-path}</js-path>
|
||||||
|
<js-pro-path>${js-pro-path}</js-pro-path>
|
||||||
|
<jasperserver-repo>file:/${repo-path}</jasperserver-repo> <!-- used for jpivot bld only -->
|
||||||
|
<platform-path>${currentConf}</platform-path>
|
||||||
|
<test.hibernate.cfg>${currentConf}/hibernate.cfg.xml</test.hibernate.cfg>
|
||||||
|
<test.hibernate.jdbc.properties>${currentConf}/js.jdbc.properties</test.hibernate.jdbc.properties>
|
||||||
|
<master.properties>${masterPropsSource}</master.properties>
|
||||||
|
<!-- workaround src w/o tibco drivers -->
|
||||||
|
<tibco.driver.available>${deploy-tibco-drivers}</tibco.driver.available>
|
||||||
|
<SKIP_TEST_ARG>skipTests</SKIP_TEST_ARG>
|
||||||
|
<disable.fafj>false</disable.fafj>
|
||||||
|
</properties>
|
||||||
|
<repositories>
|
||||||
|
<repository>
|
||||||
|
<id>js-repo-svn</id>
|
||||||
|
<name>Repository for JasperReports Server dependencies</name>
|
||||||
|
<url>file://${repo-path}</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
<updatePolicy>always</updatePolicy>
|
||||||
|
</snapshots>
|
||||||
|
<releases>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
<updatePolicy>always</updatePolicy>
|
||||||
|
</releases>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>js-repo-tibco-drivers</id>
|
||||||
|
<name>Repository for JasperReports Server additional resources (TIBCO data connectivity drivers)</name>
|
||||||
|
<url>file://${tibco-driver-path}</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
<updatePolicy>always</updatePolicy>
|
||||||
|
</snapshots>
|
||||||
|
<releases>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
<updatePolicy>always</updatePolicy>
|
||||||
|
</releases>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>Repo1 Maven</id>
|
||||||
|
<url>http://repo1.maven.org/maven2/</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</snapshots>
|
||||||
|
<releases>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</releases>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>SpringSource</id>
|
||||||
|
<url>http://repo.springsource.org/release</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</snapshots>
|
||||||
|
<releases>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</releases>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>JBoss</id>
|
||||||
|
<url>https://repository.jboss.org/nexus/content/groups/public</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>false</enabled>
|
||||||
|
</snapshots>
|
||||||
|
<releases>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</releases>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>jboss-eap-alpha</id>
|
||||||
|
<name>JBoss EAP 6.3.0.Alpha</name>
|
||||||
|
<url>https://maven.repository.redhat.com/earlyaccess/all/</url>
|
||||||
|
<releases>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</releases>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>false</enabled>
|
||||||
|
</snapshots>
|
||||||
|
</repository>
|
||||||
|
</repositories>
|
||||||
|
<pluginRepositories>
|
||||||
|
<pluginRepository>
|
||||||
|
<id>js-repo-svn</id>
|
||||||
|
<url>file://${repo-path}</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</snapshots>
|
||||||
|
<releases>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
</releases>
|
||||||
|
</pluginRepository>
|
||||||
|
<!-- The Maven tool has a Central Repository that is utilized even if -->
|
||||||
|
<!-- not specifid in the settings.xml. listed here for reference only -->
|
||||||
|
<!-- <pluginRepository> -->
|
||||||
|
<!-- <id>central</id> -->
|
||||||
|
<!-- <url>http://repo1.maven.org/maven2/</url> -->
|
||||||
|
<!-- </pluginRepository> -->
|
||||||
|
</pluginRepositories>
|
||||||
|
</profile>
|
||||||
|
</profiles>
|
||||||
|
<activeProfiles>
|
||||||
|
<activeProfile>JasperServerProfile</activeProfile>
|
||||||
|
</activeProfiles>
|
||||||
|
<servers>
|
||||||
|
<server>
|
||||||
|
<id>myserver</id>
|
||||||
|
<username>tomcat</username>
|
||||||
|
<password>tomcat</password>
|
||||||
|
</server>
|
||||||
|
</servers>
|
||||||
|
</settings>
|
||||||
|
|
@ -0,0 +1,19 @@
|
||||||
|
#
|
||||||
|
# Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
# http://www.jaspersoft.com.
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
|
||||||
|
week.start.day=2
|
||||||
|
|
@ -0,0 +1,35 @@
|
||||||
|
#
|
||||||
|
# Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
# http://www.jaspersoft.com.
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
|
||||||
|
# Properties file with JDBC-related settings.
|
||||||
|
# Applied by PropertyPlaceholderConfigurer from "applicationContext-*.xml".
|
||||||
|
# Targeted at system administrators, to avoid touching the context XML files.
|
||||||
|
|
||||||
|
# Property that determines the Hibernate dialect
|
||||||
|
metadata.hibernate.dialect=${hibernateDialect}
|
||||||
|
|
||||||
|
metadata.hibernate.dataSource.jndiName=${js.jndi}
|
||||||
|
|
||||||
|
#
|
||||||
|
# default_schema setting will be uncommented if your database requires
|
||||||
|
# a schema to be specified (such as for DB2)
|
||||||
|
#
|
||||||
|
#metadata.hibernate.default_schema=${metadata.hibernate.default_schema}
|
||||||
|
|
||||||
|
|
||||||
|
hibernate.cache.region.factory_class=net.sf.ehcache.hibernate.SingletonEhCacheRegionFactory
|
||||||
|
|
@ -0,0 +1,77 @@
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<Context path="/jasperserver" reloadable="false">
|
||||||
|
|
||||||
|
<!-- maxActive: Maximum number of dB connections in pool. Make sure you
|
||||||
|
configure your mysqld max_connections large enough to handle
|
||||||
|
all of your db connections. Set to 0 for no limit.
|
||||||
|
-->
|
||||||
|
<!-- maxIdle: Maximum number of idle dB connections to retain in pool.
|
||||||
|
Set to -1 for no limit. See also the DBCP documentation on this
|
||||||
|
and the minEvictableIdleTimeMillis configuration parameter.
|
||||||
|
-->
|
||||||
|
<!-- maxWait: Maximum time to wait for a dB connection to become available
|
||||||
|
in ms, in this example 10 seconds. An Exception is thrown if
|
||||||
|
this timeout is exceeded. Set to -1 to wait indefinitely.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!-- Additional properties to consider. Settings for specifying a -->
|
||||||
|
<!-- validation query to help with reconnect/timeout errors. -->
|
||||||
|
<!-- Exact syntax may vary with database type (this tested on mysql. -->
|
||||||
|
<!-- -->
|
||||||
|
<!-- validationQuery="select 1" -->
|
||||||
|
<!-- testOnBorrow="true" -->
|
||||||
|
<!-- (and add this to url property): &autoReconnectForPools=true -->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<Resource name="${js.jndi}" auth="Container" type="javax.sql.DataSource"
|
||||||
|
maxActive="100" maxIdle="30" maxWait="10000"
|
||||||
|
username="${js.dbUsername}" password="${escapeXML:js.dbPassword}"
|
||||||
|
driverClassName="${jdbcDriverClass}"
|
||||||
|
accessToUnderlyingConnectionAllowed = "true"
|
||||||
|
validationQuery="${jdbcTestTableQuery}"
|
||||||
|
testOnBorrow="true"
|
||||||
|
url="${js.jdbcUrl}"
|
||||||
|
factory="${tomcatBasicDatasourceFactory}"
|
||||||
|
${js.extraParams} />
|
||||||
|
|
||||||
|
<Resource name="${sugarcrm.jndi}" auth="Container" type="javax.sql.DataSource"
|
||||||
|
maxActive="100" maxIdle="30" maxWait="10000"
|
||||||
|
username="${sugarcrm.dbUsername}" password="${escapeXML:sugarcrm.dbPassword}"
|
||||||
|
driverClassName="${jdbcDriverClass}"
|
||||||
|
accessToUnderlyingConnectionAllowed = "true"
|
||||||
|
validationQuery="${jdbcTestTableQuery}"
|
||||||
|
testOnBorrow="true"
|
||||||
|
url="${sugarcrm.jdbcUrl}"
|
||||||
|
factory="${tomcatBasicDatasourceFactory}"/>
|
||||||
|
|
||||||
|
<Resource name="${foodmart.jndi}" auth="Container" type="javax.sql.DataSource"
|
||||||
|
maxActive="100" maxIdle="30" maxWait="10000"
|
||||||
|
username="${foodmart.dbUsername}" password="${escapeXML:foodmart.dbPassword}"
|
||||||
|
driverClassName="${jdbcDriverClass}"
|
||||||
|
accessToUnderlyingConnectionAllowed = "true"
|
||||||
|
validationQuery="${jdbcTestTableQuery}"
|
||||||
|
testOnBorrow="true"
|
||||||
|
url="${foodmart.jdbcUrl}"
|
||||||
|
factory="${tomcatBasicDatasourceFactory}"/>
|
||||||
|
|
||||||
|
<!-- Comment this line to enable session persistence across Tomcat restarts -->
|
||||||
|
<Manager pathname="" />
|
||||||
|
</Context>
|
||||||
|
|
@ -0,0 +1,35 @@
|
||||||
|
#
|
||||||
|
# Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
# http://www.jaspersoft.com.
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
|
||||||
|
# Properties file with JDBC-related settings.
|
||||||
|
# Applied by PropertyPlaceholderConfigurer from "applicationContext-*.xml".
|
||||||
|
# Targeted at system administrators, to avoid touching the context XML files.
|
||||||
|
|
||||||
|
# Property that determines the Hibernate dialect
|
||||||
|
metadata.hibernate.dialect=${hibernateDialect}
|
||||||
|
|
||||||
|
metadata.hibernate.dataSource.jndiName=${js.jndi}
|
||||||
|
|
||||||
|
#
|
||||||
|
# default_schema setting will be uncommented if your database requires
|
||||||
|
# a schema to be specified (such as for DB2)
|
||||||
|
#
|
||||||
|
#metadata.hibernate.default_schema=${metadata.hibernate.default_schema}
|
||||||
|
|
||||||
|
|
||||||
|
hibernate.cache.region.factory_class=net.sf.ehcache.hibernate.EhCacheRegionFactory
|
||||||
|
|
@ -0,0 +1,41 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<jboss-web>
|
||||||
|
|
||||||
|
<resource-ref>
|
||||||
|
<res-ref-name>${js.jndi}</res-ref-name>
|
||||||
|
<res-type>javax.sql.DataSource</res-type>
|
||||||
|
<jndi-name>java:/${js.jndi}</jndi-name>
|
||||||
|
</resource-ref>
|
||||||
|
|
||||||
|
<resource-ref>
|
||||||
|
<res-ref-name>${sugarcrm.jndi}</res-ref-name>
|
||||||
|
<res-type>javax.sql.DataSource</res-type>
|
||||||
|
<jndi-name>java:/${sugarcrm.jndi}</jndi-name>
|
||||||
|
</resource-ref>
|
||||||
|
|
||||||
|
<resource-ref>
|
||||||
|
<res-ref-name>${foodmart.jndi}</res-ref-name>
|
||||||
|
<res-type>javax.sql.DataSource</res-type>
|
||||||
|
<jndi-name>java:/${foodmart.jndi}</jndi-name>
|
||||||
|
</resource-ref>
|
||||||
|
|
||||||
|
</jboss-web>
|
||||||
|
|
@ -0,0 +1,86 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!DOCTYPE weblogic-web-app
|
||||||
|
PUBLIC "-//BEA Systems, Inc.//DTD Web Application 8.1//EN"
|
||||||
|
"http://www.bea.com/servers/wls810/dtd/weblogic810-web-jar.dtd" >
|
||||||
|
|
||||||
|
<weblogic-web-app>
|
||||||
|
|
||||||
|
<!--security-role-assignment>
|
||||||
|
<role-name>tomcat</role-name>
|
||||||
|
<principal-name>tomcat</principal-name>
|
||||||
|
</security-role-assignment-->
|
||||||
|
<!--<context-root>/jasperserver-pro</context-root>-->
|
||||||
|
|
||||||
|
<jsp-descriptor>
|
||||||
|
<jsp-param>
|
||||||
|
<param-name>compilerSupportsEncoding</param-name>
|
||||||
|
<param-value>true</param-value>
|
||||||
|
</jsp-param>
|
||||||
|
<jsp-param>
|
||||||
|
<param-name>precompile</param-name>
|
||||||
|
<param-value>false</param-value>
|
||||||
|
</jsp-param>
|
||||||
|
<jsp-param>
|
||||||
|
<param-name>pageCheckSeconds</param-name>
|
||||||
|
<param-value>-1</param-value>
|
||||||
|
</jsp-param>
|
||||||
|
<jsp-param>
|
||||||
|
<param-name>keepgenerated</param-name>
|
||||||
|
<param-value>true</param-value>
|
||||||
|
</jsp-param>
|
||||||
|
<jsp-param>
|
||||||
|
<param-name>noTryBlocks</param-name>
|
||||||
|
<param-value>true</param-value>
|
||||||
|
</jsp-param>
|
||||||
|
<jsp-param>
|
||||||
|
<param-name>printNulls</param-name>
|
||||||
|
<param-value>true</param-value>
|
||||||
|
</jsp-param>
|
||||||
|
<jsp-param>
|
||||||
|
<param-name>encoding</param-name>
|
||||||
|
<param-value>UTF-8</param-value>
|
||||||
|
</jsp-param>
|
||||||
|
</jsp-descriptor>
|
||||||
|
|
||||||
|
<reference-descriptor>
|
||||||
|
<resource-description>
|
||||||
|
<res-ref-name>jdbc/jasperserver</res-ref-name>
|
||||||
|
<jndi-name>JasperServerDataBase</jndi-name>
|
||||||
|
</resource-description>
|
||||||
|
<resource-description>
|
||||||
|
<res-ref-name>jdbc/sugarcrm</res-ref-name>
|
||||||
|
<jndi-name>SugarcrmDataBase</jndi-name>
|
||||||
|
</resource-description>
|
||||||
|
<resource-description>
|
||||||
|
<res-ref-name>jdbc/foodmart</res-ref-name>
|
||||||
|
<jndi-name>FoodmartDataBase</jndi-name>
|
||||||
|
</resource-description>
|
||||||
|
</reference-descriptor>
|
||||||
|
|
||||||
|
<container-descriptor>
|
||||||
|
<prefer-web-inf-classes>true</prefer-web-inf-classes>
|
||||||
|
</container-descriptor>
|
||||||
|
|
||||||
|
<session-descriptor>
|
||||||
|
<cookie-http-only>false</cookie-http-only>
|
||||||
|
</session-descriptor>
|
||||||
|
</weblogic-web-app>
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -0,0 +1,8 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
#
|
||||||
|
# chmod can run very long when run with the ant chmod task
|
||||||
|
# run chmod via native linux chmod
|
||||||
|
#
|
||||||
|
|
||||||
|
chmod -R 755 *
|
||||||
|
|
@ -0,0 +1,14 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
#
|
||||||
|
# The Ant zip task is not capable of preserving file permissions. File
|
||||||
|
# permissions in the War File Distribution need to be correct so that
|
||||||
|
# linux users will not get permission errors when executing scripts.
|
||||||
|
#
|
||||||
|
# This script will use the zip utility native to the linux
|
||||||
|
# (presumably) operating system.
|
||||||
|
#
|
||||||
|
|
||||||
|
echo "command to execute: zip -r $1 $2 "
|
||||||
|
|
||||||
|
zip -r $1 $2
|
||||||
|
|
@ -0,0 +1,15 @@
|
||||||
|
buildomatic-additional/install_resources/extra-files/readme.txt
|
||||||
|
---------------------------------------------------------------
|
||||||
|
|
||||||
|
License source will be getting moved to a separate svn project.
|
||||||
|
Until then build the Pro source by including the js-license-<ver>.jar
|
||||||
|
as a 3rd party dependency.
|
||||||
|
|
||||||
|
In this folder is a special version of the root pom.xml file
|
||||||
|
that has been modified to specify this dependency. This
|
||||||
|
temp-root-pom.xml file is copied on top of existing root pom.xml.
|
||||||
|
|
||||||
|
ji-license-<ver>.jar should be found in the jasperserver-repo
|
||||||
|
maven style source path location.
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,694 @@
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<project xmlns="http://maven.apache.org/POM/4.0.0">
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>jaspersoft.ji-pro</artifactId>
|
||||||
|
<packaging>pom</packaging>
|
||||||
|
<version>4.0.0</version>
|
||||||
|
<name>JasperServer and JasperAnalysis Pro</name>
|
||||||
|
<description>JasperServer Pro - including JasperAnalysis Pro</description>
|
||||||
|
<url>http://www.jaspersoft.com</url>
|
||||||
|
<modules>
|
||||||
|
<module>common</module>
|
||||||
|
<module>common-export</module>
|
||||||
|
<module>mondrian-aop-woven</module>
|
||||||
|
<module>jpivot-aop-woven</module>
|
||||||
|
<!-- for 4.0 src building comment out license module -->
|
||||||
|
<!-- <module>license</module> -->
|
||||||
|
<module>datarator</module>
|
||||||
|
<module>datarator-el</module>
|
||||||
|
<module>semantic-layer</module>
|
||||||
|
<module>multi-tenancy</module>
|
||||||
|
<module>analysis</module>
|
||||||
|
<module>analysis-export</module>
|
||||||
|
<module>gyroscope</module>
|
||||||
|
<module>gyroscope-export</module>
|
||||||
|
<module>report-options</module>
|
||||||
|
<module>jasperserver-war-jar</module>
|
||||||
|
<module>gyroscope-ireport-plugin</module>
|
||||||
|
<module>repository-hibernate</module>
|
||||||
|
<module>jasperserver-common-ws</module>
|
||||||
|
<module>search</module>
|
||||||
|
<module>jasperserver-war</module>
|
||||||
|
<module>export-tool</module>
|
||||||
|
<module>unit-tests</module>
|
||||||
|
</modules>
|
||||||
|
<build>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-javadoc-plugin</artifactId>
|
||||||
|
<version>2.4</version>
|
||||||
|
<configuration>
|
||||||
|
<aggregate>true</aggregate>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-compiler-plugin</artifactId>
|
||||||
|
<version>2.0.2</version>
|
||||||
|
<configuration>
|
||||||
|
<source>1.5</source>
|
||||||
|
<target>1.5</target>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.codehaus.mojo</groupId>
|
||||||
|
<artifactId>cobertura-maven-plugin</artifactId>
|
||||||
|
<version>2.5-Jaspersoft</version>
|
||||||
|
<configuration>
|
||||||
|
<useConsolidated>true</useConsolidated>
|
||||||
|
<instrumentation>
|
||||||
|
<includesGroupId>
|
||||||
|
<includeGroupId>^jaspersoft.*</includeGroupId>
|
||||||
|
</includesGroupId>
|
||||||
|
<excludesArtifactId>
|
||||||
|
<excludeArtifactId>^jdbc-dep$</excludeArtifactId>
|
||||||
|
</excludesArtifactId>
|
||||||
|
<excludes>
|
||||||
|
<exclude>
|
||||||
|
com/jaspersoft/ji/ireport/**/*.class</exclude>
|
||||||
|
<exclude>mondrian/**/*.class</exclude>
|
||||||
|
<exclude>com/tonbeller/**/*.class</exclude>
|
||||||
|
</excludes>
|
||||||
|
</instrumentation>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-surefire-plugin</artifactId>
|
||||||
|
<version>2.4.2</version>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>junit</groupId>
|
||||||
|
<artifactId>junit</artifactId>
|
||||||
|
<version>3.8.1</version>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>commons-logging</groupId>
|
||||||
|
<artifactId>commons-logging</artifactId>
|
||||||
|
<version>1.0.4</version>
|
||||||
|
</dependency>
|
||||||
|
<!-- for 4.0 src building add this dependency -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>ji-license</artifactId>
|
||||||
|
<version>4.0.0</version>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
<dependencyManagement>
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.jaspersoft.jasperserver.api.common.impl</groupId>
|
||||||
|
<artifactId>jasperserver-api-common-impl</artifactId>
|
||||||
|
<version>${ji-os-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.jaspersoft.jasperserver.api.common</groupId>
|
||||||
|
<artifactId>jasperserver-api-common</artifactId>
|
||||||
|
<version>${ji-os-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.jaspersoft.jasperserver.api.engine</groupId>
|
||||||
|
<artifactId>jasperserver-api-engine</artifactId>
|
||||||
|
<version>${ji-os-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.jaspersoft.jasperserver.api.engine.impl</groupId>
|
||||||
|
<artifactId>jasperserver-api-engine-impl</artifactId>
|
||||||
|
<version>${ji-os-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.jaspersoft.jasperserver.api.metadata.impl</groupId>
|
||||||
|
<artifactId>jasperserver-api-metadata-impl</artifactId>
|
||||||
|
<version>${ji-os-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.jaspersoft.jasperserver.api.metadata.impl</groupId>
|
||||||
|
<artifactId>jasperserver-repository-hibernate</artifactId>
|
||||||
|
<version>${ji-os-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.jaspersoft.jasperserver.api.metadata</groupId>
|
||||||
|
<artifactId>jasperserver-api-metadata</artifactId>
|
||||||
|
<version>${ji-os-version}</version>
|
||||||
|
<exclusions>
|
||||||
|
<exclusion>
|
||||||
|
<!--Not the Mondrian JAR as we are overriding it with an AOP version.
|
||||||
|
The JARs Mondrian depends on are in the OS WAR, so we get them
|
||||||
|
when we include that WAR-->
|
||||||
|
<groupId>mondrian</groupId>
|
||||||
|
<artifactId>mondrian</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
|
||||||
|
<!--Not the Jpivot JAR as we are overriding it with an AOP version.-->
|
||||||
|
<groupId>${jpivot-groupId}</groupId>
|
||||||
|
<artifactId>${jpivot-artifactId}</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
</exclusions>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.jaspersoft.jasperserver.core.util</groupId>
|
||||||
|
<artifactId>jasperserver-core-util</artifactId>
|
||||||
|
<version>${ji-os-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.jaspersoft.jasperserver.api.unitTest</groupId>
|
||||||
|
<artifactId>jasperserver-api-unit-test</artifactId>
|
||||||
|
<version>${ji-os-version}</version>
|
||||||
|
<type>test-jar</type>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.jaspersoft.jasperserver</groupId>
|
||||||
|
<artifactId>jasperserver-export-tool</artifactId>
|
||||||
|
<version>${ji-os-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.jaspersoft.jasperserver</groupId>
|
||||||
|
<artifactId>jasperserver-search</artifactId>
|
||||||
|
<version>${ji-os-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.jaspersoft.jasperserver</groupId>
|
||||||
|
<artifactId>jasperserver-war-jar</artifactId>
|
||||||
|
<version>${ji-os-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.jaspersoft.jasperserver</groupId>
|
||||||
|
<artifactId>jasperserver-common-ws</artifactId>
|
||||||
|
<version>${ji-os-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.jaspersoft.jasperserver</groupId>
|
||||||
|
<artifactId>jasperserver-ireport-plugin</artifactId>
|
||||||
|
<version>${ji-os-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>ji-analysis</artifactId>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>mondrian-aop-woven</artifactId>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>ji-common</artifactId>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>ji-common-export</artifactId>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>ji-common-ws-server</artifactId>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>ji-datarator</artifactId>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>ji-datarator-el</artifactId>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>ji-semantic-layer</artifactId>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>ji-multi-tenancy</artifactId>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>ji-export-tool</artifactId>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>ji-gyroscope</artifactId>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>ji-gyroscope-export</artifactId>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>ji-license</artifactId>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>ji-repository</artifactId>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>ji-report-options-api</artifactId>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>ji-report-options-export</artifactId>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>ji-multi-tenancy</artifactId>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>ji-report-options-web</artifactId>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>ji-ws-server</artifactId>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>ji-search</artifactId>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji-pro</groupId>
|
||||||
|
<artifactId>ji-war-jar</artifactId>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaspersoft.ji.test</groupId>
|
||||||
|
<artifactId>ji-unit-tests</artifactId>
|
||||||
|
<type>test-jar</type>
|
||||||
|
<version>${ji-pro-version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>${jpivot-groupId}</groupId>
|
||||||
|
<artifactId>${jpivot-artifactId}</artifactId>
|
||||||
|
<version>${jpivot-version}</version>
|
||||||
|
<exclusions>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>axis.axis-saaj</groupId>
|
||||||
|
<artifactId>saaj-ri</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>mondrian</groupId>
|
||||||
|
<artifactId>mondrian</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xom</groupId>
|
||||||
|
<artifactId>xom</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xpp3</groupId>
|
||||||
|
<artifactId>xpp3</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>stax</groupId>
|
||||||
|
<artifactId>stax-api</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
</exclusions>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.jaspersoft.jasperserver</groupId>
|
||||||
|
<artifactId>jdbc-dep</artifactId>
|
||||||
|
<type>pom</type>
|
||||||
|
<version>1.0</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jaxen</groupId>
|
||||||
|
<artifactId>jaxen</artifactId>
|
||||||
|
<version>1.1-beta-8</version>
|
||||||
|
<exclusions>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>pull-parser</groupId>
|
||||||
|
<artifactId>pull-parser</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xerces</groupId>
|
||||||
|
<artifactId>xmlParserAPIs</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xerces</groupId>
|
||||||
|
<artifactId>xercesImpl</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xom</groupId>
|
||||||
|
<artifactId>xom</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
</exclusions>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>xalan</groupId>
|
||||||
|
<artifactId>xalan</artifactId>
|
||||||
|
<version>2.7.1</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jproductivity</groupId>
|
||||||
|
<artifactId>protection</artifactId>
|
||||||
|
<version>4.5</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>dom4j</groupId>
|
||||||
|
<artifactId>dom4j</artifactId>
|
||||||
|
<version>1.6.1</version>
|
||||||
|
<exclusions>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xalan</groupId>
|
||||||
|
<artifactId>xalan</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xml-apis</groupId>
|
||||||
|
<artifactId>xml-apis</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xerces</groupId>
|
||||||
|
<artifactId>xmlParserAPIs</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xerces</groupId>
|
||||||
|
<artifactId>xercesImpl</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xom</groupId>
|
||||||
|
<artifactId>xom</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xpp3</groupId>
|
||||||
|
<artifactId>xpp3</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>stax</groupId>
|
||||||
|
<artifactId>stax-api</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
</exclusions>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>jdom</groupId>
|
||||||
|
<artifactId>jdom</artifactId>
|
||||||
|
<version>1.1</version>
|
||||||
|
<exclusions>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xalan</groupId>
|
||||||
|
<artifactId>xalan</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xml-apis</groupId>
|
||||||
|
<artifactId>xml-apis</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xerces</groupId>
|
||||||
|
<artifactId>xmlParserAPIs</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xerces</groupId>
|
||||||
|
<artifactId>xercesImpl</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xom</groupId>
|
||||||
|
<artifactId>xom</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xpp3</groupId>
|
||||||
|
<artifactId>xpp3</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>stax</groupId>
|
||||||
|
<artifactId>stax-api</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
</exclusions>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>commons-dbcp</groupId>
|
||||||
|
<artifactId>commons-dbcp</artifactId>
|
||||||
|
<version>1.2.1</version>
|
||||||
|
<exclusions>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xml-apis</groupId>
|
||||||
|
<artifactId>xml-apis</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xerces</groupId>
|
||||||
|
<artifactId>xerces</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
</exclusions>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>commons-pool</groupId>
|
||||||
|
<artifactId>commons-pool</artifactId>
|
||||||
|
<version>1.2</version>
|
||||||
|
<exclusions>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xml-apis</groupId>
|
||||||
|
<artifactId>xml-apis</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xerces</groupId>
|
||||||
|
<artifactId>xerces</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
</exclusions>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>commons-digester</groupId>
|
||||||
|
<artifactId>commons-digester</artifactId>
|
||||||
|
<version>1.7</version>
|
||||||
|
<exclusions>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xml-apis</groupId>
|
||||||
|
<artifactId>xml-apis</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
</exclusions>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>net.sf.jasperreports</groupId>
|
||||||
|
<artifactId>jasperreports</artifactId>
|
||||||
|
<version>4.0.0</version>
|
||||||
|
<exclusions>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xml-apis</groupId>
|
||||||
|
<artifactId>xml-apis</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
</exclusions>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>commons-discovery</groupId>
|
||||||
|
<artifactId>commons-discovery</artifactId>
|
||||||
|
<version>0.4</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.jaspersoft.jasperreports</groupId>
|
||||||
|
<artifactId>jasperreports-pro</artifactId>
|
||||||
|
<version>4.0.0</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.jaspersoft.jasperreports</groupId>
|
||||||
|
<artifactId>jasperreports-fusion</artifactId>
|
||||||
|
<version>4.0.0</version>
|
||||||
|
<exclusions>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>org.springframework</groupId>
|
||||||
|
<artifactId>spring-core</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>org.springframework</groupId>
|
||||||
|
<artifactId>spring-beans</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
</exclusions>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.springframework.security</groupId>
|
||||||
|
<artifactId>spring-security-core</artifactId>
|
||||||
|
<version>3.2.5.RELEASE</version>
|
||||||
|
<!--<type>test-jar</type>-->
|
||||||
|
<scope>test</scope>
|
||||||
|
<exclusions>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>org.springframework</groupId>
|
||||||
|
<artifactId>spring-remoting</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>org.springframework</groupId>
|
||||||
|
<artifactId>spring-web</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>org.springframework</groupId>
|
||||||
|
<artifactId>spring-webmvc</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>org.springframework</groupId>
|
||||||
|
<artifactId>spring-jdbc</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>org.springframework</groupId>
|
||||||
|
<artifactId>spring-core</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>org.springframework</groupId>
|
||||||
|
<artifactId>spring-context</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>org.springframework</groupId>
|
||||||
|
<artifactId>spring-aop</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>org.springframework</groupId>
|
||||||
|
<artifactId>spring-context-support</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>org.springframework</groupId>
|
||||||
|
<artifactId>spring-support</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>org.springframework</groupId>
|
||||||
|
<artifactId>spring-beans</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
</exclusions>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
</dependencyManagement>
|
||||||
|
<distributionManagement>
|
||||||
|
<repository>
|
||||||
|
<id>internalDeployed</id>
|
||||||
|
<name>Internal artifacts</name>
|
||||||
|
<url>${ji-repo-releases}</url>
|
||||||
|
</repository>
|
||||||
|
<snapshotRepository>
|
||||||
|
<id>internalDeployed</id>
|
||||||
|
<name>Internal artifacts</name>
|
||||||
|
<url>${ji-repo-snapshots}</url>
|
||||||
|
</snapshotRepository>
|
||||||
|
</distributionManagement>
|
||||||
|
<properties>
|
||||||
|
<ji-pro-version>4.0.0</ji-pro-version>
|
||||||
|
<ji-os-version>4.0.0</ji-os-version>
|
||||||
|
<jpivot-groupId>jaspersoft.ji-pro.ji-jpivot-ui</jpivot-groupId>
|
||||||
|
<jpivot-artifactId>ji-jpivot</jpivot-artifactId>
|
||||||
|
<jpivot-version>4.0.0</jpivot-version>
|
||||||
|
<mondrian-version>3.2.0-13661</mondrian-version>
|
||||||
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
|
</properties>
|
||||||
|
|
||||||
|
<!-- Profiles for two types of javadoc to run -->
|
||||||
|
<profiles>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- Profile for JasperServer API javadoc, which creates JavaDoc for classes annotated with -->
|
||||||
|
|
||||||
|
<!-- annotated with @JasperServerAPI using DocFlex doclet -->
|
||||||
|
<profile>
|
||||||
|
<id>docflex-javadoc</id>
|
||||||
|
<build>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-javadoc-plugin</artifactId>
|
||||||
|
<version>2.4</version>
|
||||||
|
|
||||||
|
<configuration>
|
||||||
|
|
||||||
|
<!-- The maximum heap size available to JVM when running Javadoc -->
|
||||||
|
<maxmemory>512m</maxmemory>
|
||||||
|
<!-- Using DocFlex Doclet -->
|
||||||
|
<doclet>com.docflex.javadoc.Doclet</doclet>
|
||||||
|
<docletArtifact>
|
||||||
|
<groupId>docflex</groupId>
|
||||||
|
<artifactId>docflex-doclet</artifactId>
|
||||||
|
<version>${docFlex-version}</version>
|
||||||
|
</docletArtifact>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- Specify command-line parameters for DocFlex Doclet -->
|
||||||
|
<additionalparam>
|
||||||
|
<!-- license file -->
|
||||||
|
-license ${docflex-home}/docflex-javadoc-full.license
|
||||||
|
|
||||||
|
<!-- The main template -->
|
||||||
|
-template ${docflex-home}/templates/javadocPro/FramedDoc.tpl
|
||||||
|
|
||||||
|
<!-- template params start with "p:" -->
|
||||||
|
|
||||||
|
<!-- set titles -->
|
||||||
|
-p:windowTitle "JasperServer API ${project.version}"
|
||||||
|
-p:docTitle "JasperServer API ${project.version}"
|
||||||
|
|
||||||
|
<!--generate deprecated-list.html-->
|
||||||
|
-p:gen.deprecatedList true
|
||||||
|
|
||||||
|
<!-- Only include classes annotated as api's -->
|
||||||
|
-p:filter.byAnns.include.classes com.jaspersoft.jasperserver.api.JasperServerAPI
|
||||||
|
<!---p:include.byAnns.classes com.jaspersoft.jasperserver.api.JasperServerAPI-->
|
||||||
|
|
||||||
|
<!-- leave out empty packages -->
|
||||||
|
-p:include.emptyPackages false
|
||||||
|
<!---p:exclude.package.empty true-->
|
||||||
|
|
||||||
|
<!-- Omit members inherited from java.lang classes -->
|
||||||
|
-p:omit.inheritedMemberLists.for java.lang.
|
||||||
|
|
||||||
|
<!-- Set the output format -->
|
||||||
|
-format HTML
|
||||||
|
|
||||||
|
<!-- Supress showing up the doclet GUI -->
|
||||||
|
-nodialog
|
||||||
|
|
||||||
|
<!-- Do not launch documentation viewer -->
|
||||||
|
-launchviewer=false
|
||||||
|
|
||||||
|
<!-- Tell DocFlex the output directory -->
|
||||||
|
-d ${project.build.directory}/site/public-api
|
||||||
|
</additionalparam>
|
||||||
|
<!-- Tell Maven the output directory -->
|
||||||
|
<destDir>site/public-api</destDir>
|
||||||
|
|
||||||
|
<!-- For the project-reports page -->
|
||||||
|
<name>JasperServer Public API</name>
|
||||||
|
|
||||||
|
<!-- combine all the javadoc from the subprojects -->
|
||||||
|
<aggregate>true</aggregate>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
<activation>
|
||||||
|
<property>
|
||||||
|
<name>javadoc-type</name>
|
||||||
|
<value>public-api</value>
|
||||||
|
</property>
|
||||||
|
</activation>
|
||||||
|
</profile>
|
||||||
|
</profiles>
|
||||||
|
</project>
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -0,0 +1,4 @@
|
||||||
|
Manifest-Version: 1.0
|
||||||
|
Ant-Version: Apache Ant 1.8.2
|
||||||
|
Created-By: 1.6.0_18-b07 (Sun Microsystems Inc.)
|
||||||
|
|
||||||
|
|
@ -0,0 +1,52 @@
|
||||||
|
<!--
|
||||||
|
~ Copyright © 2005 - 2018 TIBCO Software Inc.
|
||||||
|
~ http://www.jaspersoft.com.
|
||||||
|
~
|
||||||
|
~ This program is free software: you can redistribute it and/or modify
|
||||||
|
~ it under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or
|
||||||
|
~ (at your option) any later version.
|
||||||
|
~
|
||||||
|
~ This program is distributed in the hope that it will be useful,
|
||||||
|
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
~ GNU Affero General Public License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<jboss-deployment-structure>
|
||||||
|
<!-- This corresponds to the top level deployment. For a war this is the war's module, for an ear -->
|
||||||
|
<!-- This is the top level ear module, which contains all the classes in the EAR's lib folder -->
|
||||||
|
<deployment>
|
||||||
|
|
||||||
|
<exclusions>
|
||||||
|
</exclusions>
|
||||||
|
|
||||||
|
<dependencies>
|
||||||
|
<module name="jaspersoft.tibcosoftware"/>
|
||||||
|
<system>
|
||||||
|
<paths>
|
||||||
|
<path name="com/sun/management"/>
|
||||||
|
</paths>
|
||||||
|
</system>
|
||||||
|
</dependencies>
|
||||||
|
|
||||||
|
<!-- Add additional classes to the deployment module. In this case, it is the same as including the jar in the EAR's lib directory
|
||||||
|
[dlitvak] Jboss7 seems to read jars from vfs (virtual) directory: a security mechanism?
|
||||||
|
Jboss's classloader assigns vfs location to CodeSource object of the loaded jar classes.
|
||||||
|
In order to assign the class object physical deployment module location, wwe found it necessary to introduce this file with
|
||||||
|
additional resource roots marked with use-physical-code-source="true" (issue 26780)
|
||||||
|
|
||||||
|
References: https://community.jboss.org/thread/170527
|
||||||
|
https://issues.jboss.org/browse/AS7-308
|
||||||
|
https://docs.jboss.org/author/display/AS7/Class+Loading+in+AS7?_sscc=t
|
||||||
|
|
||||||
|
-->
|
||||||
|
<resources>
|
||||||
|
</resources>
|
||||||
|
</deployment>
|
||||||
|
|
||||||
|
|
||||||
|
</jboss-deployment-structure>
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue