Skip to content
This repository has been archived by the owner on Aug 15, 2023. It is now read-only.

Creating a New OC Project

ZachGerth edited this page Oct 25, 2017 · 13 revisions

To create a new OC project, simply copy the most similar project any make a few tweaks. This guide will walk you through what tweaks to make.

Copy a Project Folder

While it's possible to copy an existing client project folder, it's recommended to copy the tsg/templateProject. This way, you're sure to start off with a clean project. Either way, be sure to put the project folder in either 'clients' or 'tsg' appropriately.

Note - please be sure to give the project a good name, especially for client projects. When naming a client project, do not simply use the client name. A good name for a client project folder follows the formate: -. For example: AcmeCorp-TheProject. Naming a project with only the client name gets very confusing when a client has more than one project (now or in the future).

Tweak Settings

Tweak the following settings to setup your project:

build.gradle

  • If you're using 2.dctm, set the project.ext.dfcVersion to the DFC version you would like to use. The default value is in build-defaults.properties.
  • Configure the modules to include in the war file by setting the project.ext.childProjectsToIncludeWar array

settings.gradle

Set the root project name by changing the rootProject.name setting. This will change the names of the generated jar files as well as the project name in your IDE.

classes/project-bean-config.xml

Update this file to pull in the spring bean configs for the modules you are using in OpenContent. See similar projects for more detail. Also be sure to TAKE OUT beans for features that are not included for your project (Ex. Workshare Compare, HotDocs, etc).

Repository-specific actions

Alfresco

If you choose to copy the "hpi-demo-alf" project or an existing project, there are a few things you should be sure you visit before just copying it over blindly:

  1. \classes\alfresco\module\com.tsgrp.opencontent\module-context.xml - You should visit this file and remove any beans, configurations, behaviours below that you aren't using:

    1. engineeringProjectFolderBehavior
    2. awPsiPolicy
    3. securityPolicy
    4. com.tsgrp.wizard.workflowBootstrap
  2. \classes\alfresco\module\com.tsgrp.opencontent\alfresco-global.properties

    1. Auditing
    2. Etc
  3. \classes\alfresco\module\com.tsgrp.opencontent\ocDictionaryBootstrap.xml - take out the models you aren't using and delete them from \classes\alfresco\extension\model as well

If you are not planning to use Chain Versionable, also take the following steps:

  1. alfresco.chained.version.enabled needs to be set to false.
  2. Remove com.tsgrp.alfresco.chained.versionable from the ocDictionaryBootstrap.
  3. Remove the tsgControlledDocBehaviours, tsgQualityDocBehaviours, tsgControlledDocVersionPolicies, and registerContentWithVersionService beans - the new Controlled Document solution uses Chain Versionable.
  4. If you intend to use older Wizard models, so want to leave awModel.xml, remove the references to the cvn namespace in that XML.

Documentum

Before running OC against Documentum, place the correct dfc.properties in the classes folder of your project.

svn:ignore

After building your project and importing it to eclipse, ensure that the following directories and files are ignored by SVN. We do not want these paths in our source control:

  • /.gradle
  • /.settings
  • /bin
  • /build
  • .classpath
  • .project

If one of the above paths/files are accidentally committed to SVN, please delete and add it to the ignore list.

What's Next?

Now that you've created your project, check out how you can get started Building OpenContent.

Clone this wiki locally