|
| 1 | +------------------------------------------------------------------------------ |
| 2 | +README file for OpenAM |
| 3 | +------------------------------------------------------------------------------ |
| 4 | + DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. |
| 5 | + |
| 6 | +Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved |
| 7 | + |
| 8 | +The contents of this file are subject to the terms |
| 9 | +of the Common Development and Distribution License |
| 10 | +(the License). You may not use this file except in |
| 11 | +compliance with the License. |
| 12 | + |
| 13 | +You can obtain a copy of the License at |
| 14 | +https://opensso.dev.java.net/public/CDDLv1.0.html or |
| 15 | +opensso/legal/CDDLv1.0.txt |
| 16 | +See the License for the specific language governing |
| 17 | +permission and limitations under the License. |
| 18 | + |
| 19 | +When distributing Covered Code, include this CDDL |
| 20 | +Header Notice in each file and include the License file |
| 21 | +at opensso/legal/CDDLv1.0.txt. |
| 22 | +If applicable, add the following below the CDDL Header, |
| 23 | +with the fields enclosed by brackets [] replaced by |
| 24 | +your own identifying information: |
| 25 | +"Portions Copyrighted [year] [name of copyright owner]" |
| 26 | + |
| 27 | +$Id: README,v 1.31 2009/11/23 21:37:02 huacui Exp $ |
| 28 | + |
| 29 | +------------------------------------------------------------------------------ |
| 30 | +Portions Copyrighted 2010-2011 ForgeRock AS |
| 31 | +------------------------------------------------------------------------------ |
| 32 | + |
| 33 | +%% Contents: |
| 34 | + |
| 35 | + %% 1. Build requirements |
| 36 | + |
| 37 | + %% 2. Library dependencies |
| 38 | + %% 2.1 Obtaining j2ee.jar and mail.jar |
| 39 | + %% 2.2 Obtaining shared library jars: jaxb-api.jar, jaxb-impl.jar, |
| 40 | + jaxb-libs.jar, jaxb-xjc.jar, jaxrpc-impl.jar, jaxrpc-spi.jar, |
| 41 | + jaxrpc-api.jar, saaj-api.jar, saaj-impl.jar, |
| 42 | + relaxngDatatype.jar, xmlsec.jar, xalan.jar, xsdlib.jar, |
| 43 | + FastInfoset.jar, jsr173_api.jar, webservices-api.jar, |
| 44 | + webservices-rt.jar, webservices-tools.jar, |
| 45 | + webservices-extra.jar, webservices-extra-api.jar, OpenDJ.jar, |
| 46 | + je.jar, xercesImpl.jar, jss4.jar, |
| 47 | + esapiport.jar, json.jar, asm-3.1.jar, |
| 48 | + commons-logging-api-1.1.jar, rome-1.0.jar,jdom.jar, |
| 49 | + commons-collections-3.2.1.jar, commons-fileupload-1.2.1.jar, |
| 50 | + commons-beanutils-1.6.jar, backport-util-concurrent-2.2.jar, |
| 51 | + icefaces.jar, icefaces-comps.jar, commons-logging-1.1.1.jar, |
| 52 | + commons-digester-1.8.jar, icefaces-facelets.jar, |
| 53 | + jersey-bundle-1.1.1-ea-SNAPSHOT.jar, |
| 54 | + oauth-signature-1.1.5-ea-SNAPSHOT.jar, |
| 55 | + oauth-server-1.1.5-ea-SNAPSHOT.jar, |
| 56 | + oauth-client-1.1.5-ea-SNAPSHOT.jar |
| 57 | + %% 2.3 Obtaining testng-5.9-jdk15.jar |
| 58 | + %% 2.4 Obtaining fmsae.dll, fmsae64.dll and agent-csdk |
| 59 | + %% 2.5 Obtaining Open Message Queue binaries, imq.jar and jms.jar |
| 60 | + %% 2.6 Obtaining click-nodeps-2.3.0.jar.jar and click-extras-2.3.0.jar |
| 61 | + %% 2.7 Obtaining ant-contrib-1.0b3.jar |
| 62 | + %% 2.8 Obtaining commons-codec-1.4.jar |
| 63 | + %% 2.9 Obtaining jsr311-api-1.1.jar |
| 64 | + %% 2.10 Obtaining jstl.jar |
| 65 | + %% 2.11 Obtaining jsf.jar, jsf-impl.jar |
| 66 | + %% 2.12 Obtaining opendj.zip |
| 67 | + %% 2.13 Obtaining log4j-1.2.8.jar |
| 68 | + %% 2.14 Obtaining velocity-1.7.jar |
| 69 | + %% 2.15 Obtaining commons-io 2.0.1 |
| 70 | + %% 2.16 Obtaining commons-lang 2.5 |
| 71 | + %% 2.17 Obtaining ognl 2.6.9 |
| 72 | + %% 2.18 Obtaining OpenDMK |
| 73 | + |
| 74 | + %% 3. Building the workspace |
| 75 | + %% 3.1 clean target |
| 76 | + %% 3.2 cvsdiff target |
| 77 | + %% 3.3 nightly target |
| 78 | + %% 3.4 server-war target |
| 79 | + %% 3.5 server-tools target |
| 80 | + %% 3.6 server-nightly target |
| 81 | + %% 3.7 agents-nightly target |
| 82 | + %% 3.8 usage target |
| 83 | + |
| 84 | +%% 1. Build requirements |
| 85 | + |
| 86 | +The OpenSSO workspace uses Apache Ant as the build tool. The build scripts |
| 87 | +in this workspace use features not present in releases of Ant prior to 1.6. |
| 88 | +Thus, in order to build this workspace you must have Ant version 1.6.5 or above |
| 89 | +installed and available in your system path. |
| 90 | + |
| 91 | +The sources in this workspace should be compiled using JDK 6.0. In order to allow |
| 92 | +this, you must ensure that JDK 6.0 is present in your system path and the |
| 93 | +JAVA_HOME environment variable is setup correctly pointing to its location. The |
| 94 | +target JDK is set to 1.5. |
| 95 | + |
| 96 | +Please see this URL for the latest instructions on how to compile OpenSSO: |
| 97 | +https://wikis.forgerock.org/confluence/display/openam/Build+OpenAM+from+Source |
| 98 | +The above URL provides a convenient ZIP file of all the needed dependencies below. |
| 99 | + |
| 100 | +%% 2. Library dependencies |
| 101 | + |
| 102 | +The OpenSSO sources depend upon a few third-party libraries that are not |
| 103 | +included as a part of the workspace and must be obtained directly from |
| 104 | +the library vendor or distributor. Some of these libraries are available in |
| 105 | +source distribution form and must be built locally before they can be used. |
| 106 | +The libraries needed for compiling OpenSSO sources are: |
| 107 | + |
| 108 | + - Java EE 5 SDK: j2ee.jar, mail.jar |
| 109 | + - SUN shared library jars: jaxb-api.jar, jaxb-impl.jar, |
| 110 | + jaxb-libs.jar, jaxb-xjc.jar, jaxrpc-impl.jar, jaxrpc-spi.jar, |
| 111 | + jaxrpc-api.jar, saaj-api.jar, saaj-impl.jar, |
| 112 | + relaxngDatatype.jar, xmlsec.jar, xalan.jar, xsdlib.jar, |
| 113 | + FastInfoset.jar, jsr173_api.jar, webservices-api.jar, |
| 114 | + webservices-rt.jar, webservices-tools.jar, webservices-extra.jar, |
| 115 | + webservices-extra-api.jar, OpenDJ.jar, je.jar, |
| 116 | + xercesImpl.jar, jss4.jar |
| 117 | + - TestNG version 5.9 : testng-5.9-jdk15.jar |
| 118 | + - Secure Attribute Exchange API: fmsae.dll and fmsae64.dll |
| 119 | + - Open Message Queue: mq4_4-v2-AIX.zip,mq4_4-v2-Linux_X86.zip, |
| 120 | + mq4_4-v2-SunOS_X86.zip,mq4_4-v2-SunOS.zip, |
| 121 | + mq4_4-v2-WINNT.zip,imq.jar and jms.jar |
| 122 | + - Apache Commons Codec: commons-codec-1.4.jar |
| 123 | + - OpenDS 2.3.x distribution ZIP file |
| 124 | + |
| 125 | +Once these libraries are available, they should be placed under the |
| 126 | +"opensso/products/extlib" directory of your workspace. Any library placed |
| 127 | +in this directory is automatically included in the classpath during the |
| 128 | +compilation phase of the build process. |
| 129 | + |
| 130 | +The following subsections briefly describe how these libraries may be |
| 131 | +obtained. (Please note as mentioned earlier all needed libraries are available |
| 132 | +in a single download by visiting this page: |
| 133 | +https://wikis.forgerock.org/confluence/display/openam/Build+OpenAM+from+Source). |
| 134 | +These instructions are provided for your convenience only and |
| 135 | +are not intended to replace or invalidate the procedures/guidelines set |
| 136 | +by the library vendor or distributor for obtaining those libraries. Before |
| 137 | +you follow these instructions, you must agree to abide by any terms and |
| 138 | +conditions set forth by the library vendor or distributor. In case any of |
| 139 | +these instructions are in contradiction to such terms or conditions, you |
| 140 | +must disregard those instructions and instead follow the ones provided by |
| 141 | +the library vendor or distributor in accordance with their terms and |
| 142 | +conditions. |
| 143 | + |
| 144 | +%% 2.1 Obtaining j2ee.jar and mail.jar |
| 145 | + |
| 146 | +The j2ee.jar and mail.jar library can be obtained from Java EE 5 SDK. |
| 147 | +Follow these steps to obtain the J2EE SDK: |
| 148 | + |
| 149 | +2.1.1 Open the web page: http://java.sun.com/javaee/downloads/index.jsp |
| 150 | +2.1.2 Depending on your choice of platform, you may choose to download any |
| 151 | + one of the three distribution types available under Java EE 5 SDK |
| 152 | + Update 1. |
| 153 | +2.1.3 Extract or extract and install the downloaded file as necessary to |
| 154 | + have the SDK available on your system. |
| 155 | + |
| 156 | +Once the J2EE SDK is installed, you can get the javaee.jar and mail.jar from |
| 157 | +the lib directory of this SDK. You must rename javaee.jar to j2ee.jar when |
| 158 | +copying it to the "opensso/products/extlib" directory of your workspace. |
| 159 | + |
| 160 | + |
| 161 | +%% 2.2 Obtaining SUN shared library jars |
| 162 | +Those libraries can be obtained by downloading opensso-sun-extlib.zip from |
| 163 | +http://download.java.net/general/opensso/extlib/latest/opensso-sun-extlib.zip |
| 164 | + |
| 165 | +Extract the zip, you can get all those shared library jars. |
| 166 | + |
| 167 | + |
| 168 | +%% 2.3 Obtaining testng-5.9-jdk15.jar |
| 169 | + |
| 170 | +Download testng-5.9.zip from http://testng.org/testng-5.9.zip; unzip it and |
| 171 | +testng-5.9-jdk15.jar in the base directory. |
| 172 | + |
| 173 | +%% 2.4 Obtaining fmsae.dll, fmsae64.dll and agent-cdsk |
| 174 | + |
| 175 | +Download opensso.zip from |
| 176 | +http://download.java.net/general/opensso/nightly/latest/opensso/opensso.zip |
| 177 | +Save the zip file locally, unzip it, then get fmsae.dll and fmsae64.dll from |
| 178 | +libraries/native/dll and copy it into the opensso/products/extlib directory |
| 179 | +in your workspace. Copy the agent-csdk subdirectory, and contents from |
| 180 | +libraries/native to opensso/products/extlib. |
| 181 | + |
| 182 | +%% 2.5 Obtaining Open Message Queue binaries, imq.jar and jms.jar |
| 183 | + |
| 184 | +2.5.1 Open the web page: https://mq.dev.java.net/downloads.html |
| 185 | +2.5.2 Depending on your choice of platform, you may choose to download any |
| 186 | + one of the available distribution types available under Open MQ 4.4 |
| 187 | + Binary Downloads. |
| 188 | + |----mq4_4-v2-Linux_X86.zip |
| 189 | + | (Open Message Queue binaries for x86 linux) |
| 190 | + | |
| 191 | + |----mq4_4-v2-SunOS_X86.zip |
| 192 | + | (Open Message Queue binaries for x86 Solaris) |
| 193 | + | |
| 194 | + |----mq4_4-v2-SunOS.zip |
| 195 | + | (Open Message Queue binaries for sparc Solaris) |
| 196 | + | |
| 197 | + |----mq4_4-v2-WINNT.zip |
| 198 | + | (Open Message Queue binaries for Windows) |
| 199 | + | |
| 200 | + |----mq4_4-v2-AIX.zip |
| 201 | + | (Open Message Queue binaries for AIX) |
| 202 | + |
| 203 | +2.5.3 Extract the downloaded file as necessary to get the |
| 204 | + imq.jar and jms.jar under /imq/lib directory |
| 205 | + |
| 206 | +%% 2.6 Obtaining click-nodeps-2.3.0.jar.jar and click-extras-2.3.0.jar |
| 207 | +2.6.1 Visit http://click.apache.org/, navigate to the maven repository |
| 208 | + http://repo1.maven.org/maven2/org/apache/click/ |
| 209 | +2.6.2 Download click-nodeps-2.3.0.jar from click-nodeps/2.3.0/ |
| 210 | +2.6.3 Download click-extras-2.3.0.jar from click-extras/2.3.0/ |
| 211 | +2.6.4 copy click-nodeps-2.3.0.jar to |
| 212 | + <your workspace>/opensso/products/extlib/ |
| 213 | +2.6.5 copy click-extras-2.3.0.jar to |
| 214 | + <your workspace>/opensso/products/extlib/ |
| 215 | + |
| 216 | +%% 2.7 Obtaining ant-contrib-1.0b3.jar |
| 217 | +2.7.1 Visit http://sourceforge.net/project/showfiles.php?group_id=36177 |
| 218 | +2.7.2 Under "Latest File Releases" , click on the link "Download". |
| 219 | + You wil be brought to a page with list of ant-contrib binaries. |
| 220 | +2.7.3 Download ant-contrib-1.0b3-bin.zip |
| 221 | +2.7.4 Unzip this zip file in a temporary directory. |
| 222 | +2.7.5 copy <temporary directory>/ant-contrib/ant-contrib-1.0b3.jar to |
| 223 | + <your workspace>/opensso/products/extlib/ant-contrib-1.0b3.jar |
| 224 | + |
| 225 | +%% 2.8 Obtaining commons-codec-1.4.jar |
| 226 | +2.8.1 Visit http://commons.apache.org/downloads/download_codec.cgi |
| 227 | +2.8.2 Download one of the Binary selections (e.g., 1.4.tar.gz) |
| 228 | +2.8.3 Uncompress (and un-tar, in the case of 1.4.tar.gz) the file in |
| 229 | + a temporary directory. |
| 230 | +2.8.4 Find the commons-codec-1.4.jar file and copy it to |
| 231 | + <your workspace>/opensso/products/extlib/commons-codec-1.4.jar |
| 232 | + |
| 233 | +%% 2.9 Obtaining jsr311-api-1.1.jar |
| 234 | +2.9.1 Download from |
| 235 | + http://download.java.net/maven/2/javax/ws/rs/jsr311-api/1.1/jsr311-api-1.1.jar |
| 236 | + |
| 237 | +%% 2.10 Obtaining jstl.jar |
| 238 | +2.10.1 Download from |
| 239 | + http://mirrors.ibiblio.org/pub/mirrors/maven2/jstl/jstl/1.1.2/jstl-1.1.2.jar |
| 240 | + |
| 241 | +%% 2.11 Obtaining jsf.jar, jsf-impl.jar |
| 242 | +2.11.1 Download |
| 243 | + https://javaserverfaces.dev.java.net/files/documents/1866/138058/mojarra-1.2_13-binary.zip |
| 244 | +2.11.2 Unzip it and the jars are in lib directory. |
| 245 | + |
| 246 | +%% 2.12 Obtaining opendj.zip |
| 247 | +2.12.1 Download the latest OpenDJ 2.4.x from |
| 248 | + http://opendj.forgerock.org/ |
| 249 | +2.12.2 Change to the opensso/products/opends directory |
| 250 | +2.12.3 Unzip the OpenDJ zip file |
| 251 | +2.12.4 Copy the OpenDJ.zip and je.jar files from the OpenDJ-2.4.x/lib directory into |
| 252 | + products/extlib |
| 253 | +2.12.5 Run the create_opendj_zip.sh script (ensure the script has the execute permission set) |
| 254 | + ./create_opendj_zip.sh OpenDJ-2.4.x |
| 255 | +2.12.6 Copy the opendj.zip into the products/extlib directory |
| 256 | + |
| 257 | +%% 2.13 Obtaining log4j-1.2.8.jar |
| 258 | +2.13.1 Download from |
| 259 | + http://search.maven.org/remotecontent?filepath=log4j/log4j/1.2.8/log4j-1.2.8.jar |
| 260 | + |
| 261 | +%% 2.14 Obtaining velocity-1.7.jar |
| 262 | +2.14.1 Download from |
| 263 | + http://velocity.apache.org/download.cgi |
| 264 | + |
| 265 | +%% 2.15 Obtaining commons-io 2.0.1 |
| 266 | +2.15.1 Download from |
| 267 | + http://commons.apache.org/io/download_io.cgi |
| 268 | + |
| 269 | +%% 2.16 Obtaining commons-lang 2.5 |
| 270 | +2.16.1 Download from |
| 271 | + http://commons.apache.org/lang/download_lang.cgi |
| 272 | + |
| 273 | +%% 2.17 Obtaining ognl 2.6.9 |
| 274 | +2.17.1 Download from |
| 275 | + http://repo.fusesource.com/nexus/content/groups/public/ognl/ognl/2.6.9/ |
| 276 | + |
| 277 | +%% 2.18 Obtaining OpenDMK |
| 278 | +2.18.1 Download OpenDMK 1.0-b02 Full binary bundle from |
| 279 | + http://opendmk.java.net/download/index.html |
| 280 | +2.18.2 Install OpenDMK by issuing the following command |
| 281 | + java -jar opendmk-1.0-b02-bin-dual-01-Oct-2007_19-17-46.jar |
| 282 | +2.18.3 Copy jdmkrt.jar and jdmktk.jar from <install dir>/lib dierctory |
| 283 | + to <workspace>/opensso/products/extlib |
| 284 | + |
| 285 | +%% 3. Building the workspace |
| 286 | + |
| 287 | +The workspace build system offers many build targets. You can view the |
| 288 | +available targets by issuing the ant command from the root of the |
| 289 | +workspace. The default target that is executed is the usage target which |
| 290 | +displays a brief description about the other targets. Currently the main |
| 291 | +targets available in the workspace are: |
| 292 | + |
| 293 | + - clean : deletes the generated files |
| 294 | + - cvsdiff : generates diffs under diffs subdirectory |
| 295 | + - nightly : performs nightly builds for all products |
| 296 | + - server-war : builds the OpenAM WAR file |
| 297 | + - server-tools : builds the OpenAM admin tools |
| 298 | + - server-nightly : performs nightly builds for server products |
| 299 | + - agents-nightly : performs nightly builds for agents products |
| 300 | + - usage : displays this usage message |
| 301 | + |
| 302 | +%% 3.1 clean target |
| 303 | + |
| 304 | +Removes build output directories and generated files. |
| 305 | + |
| 306 | +%% 3.2 cvsdiff target |
| 307 | + |
| 308 | +Generates diffs using the cvs command, which are suitable for creating a patch. |
| 309 | +Note that OpenAM uses Subversion, not CVS, for the source repository. |
| 310 | + |
| 311 | +%% 3.3 nightly target |
| 312 | + |
| 313 | +Runs server-nightly and agents-nightly targets. |
| 314 | + |
| 315 | +%% 3.4 server-war target |
| 316 | + |
| 317 | +Builds OpenAM, leaving the war files in amserver/built/dist/. |
| 318 | + |
| 319 | +%% 3.5 server-tools target |
| 320 | + |
| 321 | +Builds the OpenAM tools, leaving the zip files in amserver/built/dist/. |
| 322 | + |
| 323 | +%% 3.6 server-nightly target |
| 324 | + |
| 325 | +Builds and packages servers, tools, docs, and samples in built/dist/. |
| 326 | + |
| 327 | +%% 3.7 agents-nightly target |
| 328 | + |
| 329 | +Builds and packages Java EE policy agents in built/dist/. |
| 330 | + |
| 331 | +%% 3.8 usage target |
| 332 | + |
| 333 | +Displays the list of targets. |
| 334 | + |
0 commit comments