SourceForge.net Logo

openCRX QuickStart

Version 1.10.0

logo_openCRX

www.opencrx.org





List of Figures

Figure 1: openCRX Login page 9

Figure 2: First login with admin-Root / rootSecret 10

Figure 3: Start screen of admin-Root 13

Figure 4: Create a new segment named Standard 14

Figure 5: Result of operation Create Administrator 15

Figure 6: Load Code Tables and Data – Step 1 16

Figure 7: Load Code Tables and Data – Step 2 16

Figure 8: Execute Operation Set Access Level 17

Figure 9: Parameters of Operation Set Access Level 17

Figure 10: Result of the Operation Set Access Level 17

Figure 11: Create a new Subject 19

Figure 12: Change the Subject's Qualifier to guest 20

Figure 13: Grid Subjects with admin-Root, admin-Standard, and guest 21

Figure 14: Click on bread crum entry Security Realms 22

Figure 15: Realm Default 23

Figure 16: Create a new Principal 24

Figure 17: Select Subject guest from the drop down menu 25

Figure 18: Change the Principal's Qualifier to guest 26

Figure 19: Grid Principals with newly created Principal guest 27

Figure 20: Add Principal guest to Principal Group Users – Step 1 28

Figure 21: Add Principal guest to Principal Group Users – Step 2 29

Figure 22: Add Principal guest to Principal Group Users – Step 3 30

Figure 23: First login with admin-Standard / adminSecret 31

Figure 24: View > Recalculate and Refresh activates/updates charts 32

Figure 25: Create new Contact – Step 1 32

Figure 26: Create new Contact – Step 2 33

Figure 27: Create new User 34

Figure 28: Result of operation Create User 35



List of Listings

Listing 1: Console Output – JBoss startup 7

Listing 2: File users.properties with syntax user=password 8

Listing 3: File roles.properties with syntax user.Roles=role1,role2,... 8

Listing 4: Console Output – Initialization of the openCRX servlet 11

Listing 5: Console Output – Importing Codes and Data 16



1 About this Book

This book describes what you need to get started with openCRX and how to configure openCRX. Please note that this is a guide to set up a runtime environment. Information on how to set up a development environment is available in the file /core/README.

openCRX is the leading enterprise-class open source CRM suite. openCRX is based on openMDX, an open source MDA framework based on the OMG's model driven architecture (MDA) standards. This guarantees total openness, standards compliance, a state-of-the-art component-based architecture, and virtually unlimited scalability.

1.1 Who this book is for

The intended audience are openCRX administrators and advanced users.

1.2 What do you need to understand this book

This book describes how to install openCRX and how to configure openCRX. Even though it is possible to install openCRX without a deeper understanding of J2EE applications, application servers, and database management systems, it is still a plus if you are comfortable with these topics.

openCRX is an enterprise-class J2EE application. Installation, administration, and maintenance of such applications is somewhat more involved than running a simple setup.exe (or make install, for that matter). So please do not expect that you will manage to install openCRX in 10 minutes as even experienced administrators can easily spend an hour or more on their first install.

1.3 Tips, Warnings, etc.

We make use the following pictograms:

Information provided as a “Tip” might be helpful for various reasons: time savings, risk reduction, etc. - it goes without saying that we advise to follow our guides meticulously

meticulous \muh-TIK-yuh-luhs\, adjective:
Extremely or excessively careful about details.

You should carefully read information marked with “Important”. Ignoring such information is typically not a good idea.

Warnings should not be ignored (risk of data loss, etc.)


2 Prerequisites

Installing openCRX is a somewhat involved process as you are required to install/configure various other components as well. In a first step, however, you need to choose an appropriate selection of software packages, namely an application server (click here for list J2EE-compliant application servers supported by openCRX), a database management system (click here for list of database management systems supported by openCRX), and a JDK.

Before you get started with the selection process, however, it is a good idea to spend some time browsing the various pages containing information about the products and reviewing the openCRX version compatibility information provided at http://www.opencrx.org/faq.htm#versioncompatibility.

2.1 Selection of Software Packages / Versions

In the end, you will have installed several software packages and it makes sense to write down the names and version numbers of these software packages – this information might be helpful in the future in case you require support or want to file a bug report:


Required Software Packages

Information

Name

Version

openCRX CRM Suite

www.opencrx.org

openCRX


openMDX MDA Platform

www.openmdx.org

openMDX


Java 2 Platform
Standard Edition

BEA website
IBM website
java.sun.com

[ ] BEA JRockit JDK

[ ] IBM JDK

[ ] Sun J2SE JDK

...


Java Build Tool

ant.apache.org

Ant

[ ] 1.6.5
[ ] 1.7.0

Application Server



see here for information about deploying openCRX on Tomcat

openCRX FAQ

[ ] Bea Weblogic

[ ] IBM WebSphere

[ ] JBoss

...


Database Management System

openCRX FAQ

[ ] Oracle

[ ] DB/2

[ ] MS SQL

[ ] PostgreSQL

[ ] MySQL

...





2.2 Installing JDK

Install the JDK.

Don't forget to set environment variables JAVA_HOME and JRE_15 (or JRE_14, depending on the JDK version).

2.3 Installing Ant

Install Ant. Ant is required to build the openCRX runtime binaries.

Don't forget to set environment variables ANT_HOME and ANT_OPTS.

2.4 Build the Runtime Binaries

Read the file /core/README included in the openCRX distribution. This README contains important information, including how you can build the Runtime Binaries from the distribution. The following is a short summary of the relevant steps:

  1. Expand opencrx-1.10.0-core.jre-1.4.zip to any directory

  2. Create directory opt in the expanded directory

  3. Expand openmdx-1.16.4-core.jre-1.4.zip to opt

  4. Expand openmdx-1.16.4-portal.jre-1.4.zip to opt

  5. Expand openmdx-1.16.4-security.jre-1.4.zip to opt

  6. Expand openmdx-1.16.4-websphere.websphere-6.zip to opt

  7. Open shell and cd to directory ./opencrx-1.10.0/core

  8. ant install-src

  9. ant assemble

  10. EARs are created in directory
    ./opencrx-1.10.0/jre-1.4/core/deployment-unit

2.5 Installing / Configuring Database

As far as the database is concerned, the openCRX FAQ might give you some guidance in making your choice (please note that the openCRX distribution includes all the required configuration and deployment files for PostgreSQL, MySQL, MS SQL, IBM DB/2 and Oracle). Various openCRX installation guides for database management systems are available from http://www.opencrx.org/documents.htm.

The remainder of this document assumes that you decided for MySQL and hence – after following the openCRX Installation Guide for MySQL – you should have a working installation of the MySQL database before you continue with this guide.

2.6 Installing / Configuring Application Server

As far as the application server is concerned, your best bet is probably the one you know best as long as it is J2EE-compliant (additional information regarding the choice of an application server is available in the openCRX FAQ). The openCRX distribution includes the required configuration and deployment files for JBoss (which is also Open Source and free), Sun AS, BEA Weblogic, and IBM WebSphere. Installation guides are available from http://www.opencrx.org/documents.htm.

The remainder of this document assumes that you decided for JBoss and hence – after following the openCRX Installation Guide for JBoss – you should have a working installation of the JBoss application server before you continue with this guide. If you follow our application server installation guides you will also install openMDX, the leading Open Source MDA platform.

Obviously, if you ended up making different choices, you can still follow this guide. You might have to make some minor adjustments to the instructions given here and some of our screen shots might look somewhat different from what you will see on your screen.

Assuming you have JBoss up and running, the last few lines of your console output should look similar to the following ones:

Listing 1: Console Output – JBoss startup

...
17:23:05,650 INFO [EARDeployer] Started J2EE application: file:/D:/jboss-4.0.5.GA/server/default/deploy/opencrx-core-CRX-Web.ear/
17:23:05,728 INFO [Http11AprProtocol] Starting Coyote HTTP/1.1 on http-0.0.0.0-8080
17:23:05,759 INFO [Server] JBoss (MX MicroKernel) [4.0.5.GA (build: CVSTag=Branch_4_0 date=200610162339)] Started in 32s:141ms



Now you are ready to continue.



3 openCRX Setup and Configuration

Once the database is ready and openCRX properly deploys on your application server there are still a few tasks left to set up and configure openCRX. This chapter guides you through these tasks on a step-by-step basis.

3.1 Overview

Let us give you a brief overview of the tasks ahead before we get started:

  • Verify/Create Application Server Logins {openCRX/AppServer Admin}

  • First Login / Initial Setup as admin-Root {openCRX Admin}

    • Create Data Segment “Standard” {openCRX Admin}

    • Import Codes and Data {openCRX Admin}

    • Set Access Levels of Codes {openCRX Admin}

  • Create a new User guest {openCRX Admin / Segment Admin}

    • Create a new Subject guest {openCRX Admin}

    • Create a new Principal guest in realm Default {openCRX Admin}

    • Make new Principal guest member of group Users {openCRX Admin}

    • Segment Administrator creates new Contact {Segment Admin}

    • Segment Administrator creates new User {Segment Admin}

All right, let's get started.

3.2 Verify/Create Application Server Logins

For the following steps we assume that the openCRX administrator has configured the users admin-Root, admin-Standard and guest with the appropriate roles on the application server. In the case of JBoss this requires creating/editing the files users.properties and roles.properties as follows:

Listing 2: File users.properties with syntax user=password

admin-Root=rootSecret
admin-Standard=adminSecret
guest=guest

Listing 3: File roles.properties with syntax user.Roles=role1,role2,...

admin-Root.Roles=OpenCrxRoot
admin-Standard.Roles=OpenCrxAdministrator
guest.Roles=OpenCrxUser



It is strongly recommended that you stay with the file-based UsersRolesLoginModule for the user admin-Root. This simplifies the openCRX bootstrapping.



3.3 First Login / Initial Setup as admin-Root

Connect to the login page of openCRX. The exact URL depends on your deployment details. For a standard openCRX deployment to JBoss running on your local machine and listening at port 8080 the URL is

http://localhost:8080/opencrx-core-CRX/Login

You should see the openCRX Login page as follows:

Figure 1: openCRX Login page







3.3.1 Login as admin-Root

Enter admin-Root into the field Username and then enter rootSecret into the field Password (you may have chosen a different password, i.e. enter the password you chose during installation/configuration of the application server):

Figure 2: First login with admin-Root / rootSecret

Click the button to start the initialization process.

If you can't get past the login screen (with the correct Username and Password, of course) and the Warning “Browser must accept cookies” keeps showing up need to verify your browser settings related to cookies. If you have installed a personal firewall (e.g. ZoneAlarm) you also need to verify those cookie settings. The application server must be able to create/set a session cookie.

The openCRX servlet is initialized during this first login, i.e. don't kill the browser if it takes a while. The application console output will look similar to the following listing:

Listing 4: Console Output – Initialization of the openCRX servlet

10:09:48,756 INFO [STDOUT] Wed Dec 13 10:09:48 CET 2006: Login: requestURL=http://localhost:8080/opencrx-core-CRX/Login.jsp; isRequestedSessionIdFromCookie=true
10:09:48,772 INFO [STDOUT] Wed Dec 13 10:09:48 CET 2006: Login: locale=null
10:09:54,788 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/en_US
10:09:54,929 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/de_CH
10:09:55,038 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/es_MX
10:09:55,163 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/zh_CN
10:09:55,257 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/sv_SE
10:09:55,351 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/tr_TR
10:09:55,460 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/fa_IR
10:09:55,523 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/fr_FR
10:09:55,695 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/it_IT
10:09:55,804 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/ru_RU
10:09:55,913 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/pl_PL
10:09:56,023 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/pt_BR
10:09:56,148 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/cs_CZ
10:09:56,257 INFO [STDOUT] Loading 68 ui files for locale en_US
10:09:56,632 INFO [STDOUT] Loading 67 ui files for locale de_CH
10:09:57,289 INFO [STDOUT] Loading 67 ui files for locale es_MX
10:09:57,711 INFO [STDOUT] Loading 67 ui files for locale zh_CN
10:09:58,117 INFO [STDOUT] Loading 67 ui files for locale sv_SE
10:09:58,508 INFO [STDOUT] Loading 67 ui files for locale tr_TR
10:09:59,164 INFO [STDOUT] Loading 67 ui files for locale fa_IR
10:09:59,523 INFO [STDOUT] Loading 67 ui files for locale fr_FR
10:09:59,914 INFO [STDOUT] Loading 67 ui files for locale it_IT
10:10:00,305 INFO [STDOUT] Loading 0 ui files for locale null
10:10:00,305 INFO [STDOUT] Loading 0 ui files for locale null
10:10:00,305 INFO [STDOUT] Loading 67 ui files for locale ru_RU
10:10:00,727 INFO [STDOUT] Loading 67 ui files for locale pl_PL
10:10:01,117 INFO [STDOUT] Loading 0 ui files for locale null
10:10:01,117 INFO [STDOUT] Loading 67 ui files for locale pt_BR
10:10:01,539 INFO [STDOUT] Loading 67 ui files for locale cs_CZ
10:10:06,118 INFO [STDOUT] Storing 2708 ui elements
10:10:07,290 INFO [STDOUT] Loading texts
10:10:07,306 INFO [STDOUT] Loading /WEB-INF/config/texts/en_US/texts.properties
10:10:07,306 INFO [STDOUT] Loading /WEB-INF/config/texts/en_US/opencrx.texts.properties
10:10:07,306 INFO [STDOUT] Loading /WEB-INF/config/texts/de_CH/opencrx.texts.properties
10:10:07,306 INFO [STDOUT] Loading /WEB-INF/config/texts/de_CH/texts.properties
10:10:07,306 INFO [STDOUT] Loading /WEB-INF/config/texts/es_MX/opencrx.texts.properties
10:10:07,306 INFO [STDOUT] Loading /WEB-INF/config/texts/es_MX/texts.properties
10:10:07,306 INFO [STDOUT] Loading /WEB-INF/config/texts/zh_CN/opencrx.texts.properties
10:10:07,306 INFO [STDOUT] Loading /WEB-INF/config/texts/zh_CN/texts.properties
10:10:07,306 INFO [STDOUT] Loading /WEB-INF/config/texts/sv_SE/opencrx.texts.properties
10:10:07,306 INFO [STDOUT] Loading /WEB-INF/config/texts/sv_SE/texts.properties
10:10:07,306 INFO [STDOUT] Loading /WEB-INF/config/texts/tr_TR/opencrx.texts.properties
10:10:07,321 INFO [STDOUT] Loading /WEB-INF/config/texts/tr_TR/texts.properties
10:10:07,321 INFO [STDOUT] Loading /WEB-INF/config/texts/fa_IR/opencrx.texts.properties
10:10:07,321 INFO [STDOUT] Loading /WEB-INF/config/texts/fa_IR/texts.properties
10:10:07,321 INFO [STDOUT] Loading /WEB-INF/config/texts/fr_FR/opencrx.texts.properties
10:10:07,321 INFO [STDOUT] Loading /WEB-INF/config/texts/fr_FR/texts.properties
10:10:07,321 INFO [STDOUT] Loading /WEB-INF/config/texts/it_IT/opencrx.texts.properties
10:10:07,321 INFO [STDOUT] Loading /WEB-INF/config/texts/it_IT/texts.properties
10:10:07,321 INFO [STDOUT] Loading /WEB-INF/config/texts/ru_RU/texts.properties
10:10:07,321 INFO [STDOUT] Loading /WEB-INF/config/texts/ru_RU/opencrx.texts.properties
10:10:07,321 INFO [STDOUT] Loading /WEB-INF/config/texts/pl_PL/opencrx.texts.properties
10:10:07,337 INFO [STDOUT] Loading /WEB-INF/config/texts/pl_PL/texts.properties
10:10:07,337 INFO [STDOUT] Loading /WEB-INF/config/texts/pt_BR/opencrx.texts.properties
10:10:07,337 INFO [STDOUT] Loading /WEB-INF/config/texts/pt_BR/texts.properties
10:10:07,337 INFO [STDOUT] Loading /WEB-INF/config/texts/cs_CZ/opencrx.texts.properties
10:10:07,337 INFO [STDOUT] Loading /WEB-INF/config/texts/cs_CZ/texts.properties
10:10:07,352 INFO [STDOUT] Loading layouts
10:10:07,352 INFO [STDOUT] Loading /WEB-INF/config/layout/en_US/show-Default.jsp
10:10:07,352 INFO [STDOUT] Loading /WEB-INF/config/layout/en_US/edit-Default.jsp
10:10:07,352 INFO [STDOUT] Loading /WEB-INF/config/report/en_US/org.opencrx.kernel.account1.Segment-Contacts.jsp
//...//
10:10:07,946 INFO [STDOUT] Loading data
10:10:07,946 INFO [STDOUT] Loading /WEB-INF/config/bootstrap/Root/100_security_policy.xml
10:10:07,962 INFO [STDOUT] Storing 5 objects
10:10:10,400 INFO [STDOUT] Creating org::openmdx::security::authorization1/provider/CRX/segment/Root
10:10:10,431 INFO [STDOUT] Creating
org::openmdx::security::authorization1/provider/CRX/segment/Root/policy/Default
10:10:10,447 INFO [STDOUT] Creating
org::openmdx::security::authorization1/provider/CRX/segment/Root/policy/Default/role/OpenCrxAdministrator
10:10:10,462 INFO [STDOUT] Creating
org::openmdx::security::authorization1/provider/CRX/segment/Root/policy/Default/role/OpenCrxUser
10:10:10,478 INFO [STDOUT] Creating
org::openmdx::security::authorization1/provider/CRX/segment/Root/policy/Default/role/OpenCrxRoot
10:10:10,478 INFO [STDOUT] Loading /WEB-INF/config/bootstrap/Root/101_security_subjects.xml
10:10:12,119 INFO [STDOUT] Storing 2 objects
10:10:12,119 INFO [STDOUT] Creating org::opencrx::security::identity1/provider/CRX/segment/Root
10:10:12,134 INFO [STDOUT] Creating
org::opencrx::security::identity1/provider/CRX/segment/Root/subject/admin-Root
10:10:12,134 INFO [STDOUT] Loading /WEB-INF/config/bootstrap/Root/102_security_realms.xml
10:10:12,150 INFO [STDOUT] Storing 10 objects
10:10:12,166 INFO [STDOUT] Creating org::openmdx::security::realm1/provider/CRX/segment/Root
10:10:12,166 INFO [STDOUT] Creating org::openmdx::security::realm1/provider/CRX/segment/Root/realm/Default
10:10:12,181 INFO [STDOUT] Creating
org::openmdx::security::realm1/provider/CRX/segment/Root/realm/Default/principal/admin-Root
10:10:12,244 INFO [STDOUT] Creating
org::openmdx::security::realm1/provider/CRX/segment/Root/realm/Default/principal/Administrators
10:10:12,259 INFO [STDOUT] Creating
org::openmdx::security::realm1/provider/CRX/segment/Root/realm/Default/principal/Users
10:10:12,275 INFO [STDOUT] Creating org::openmdx::security::realm1/provider/CRX/segment/Root/realm/Root
10:10:12,291 INFO [STDOUT] Creating
org::openmdx::security::realm1/provider/CRX/segment/Root/realm/Root/principal/Administrators
10:10:12,306 INFO [STDOUT] Creating
org::openmdx::security::realm1/provider/CRX/segment/Root/realm/Root/principal/Users
10:10:12,322 INFO [STDOUT] Creating
org::openmdx::security::realm1/provider/CRX/segment/Root/realm/Root/principal/admin-Root.User
10:10:12,416 INFO [STDOUT] Creating
org::openmdx::security::realm1/provider/CRX/segment/Root/realm/Root/principal/admin-Root
10:10:12,431 INFO [STDOUT] Loading /WEB-INF/config/bootstrap/Root/200_code_segment.xml
10:10:13,885 INFO [STDOUT] Storing 1 objects
10:10:15,135 INFO [STDOUT] Creating org::opencrx::kernel::code1/provider/CRX/segment/Root
10:10:15,197 INFO [STDOUT] Loading /WEB-INF/config/bootstrap/Root/300_admin_segment.xml
10:10:16,229 INFO [STDOUT] Storing 1 objects
10:10:16,244 INFO [STDOUT] Creating org::opencrx::kernel::admin1/provider/CRX/segment/Root
10:10:16,244 INFO [STDOUT] Loading /WEB-INF/config/bootstrap/Standard/dummy.xml
10:10:17,604 INFO [STDOUT] Storing 0 objects
10:10:17,604 INFO [STDOUT] Done
10:10:17,619 INFO [STDOUT] Inspecting /WEB-INF/config/filters/
10:10:17,635 INFO [STDOUT] Loading /WEB-INF/config/filters/
10:10:21,620 INFO [STDOUT] Loaded filters #5738
10:10:21,761 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/en_US
10:10:21,886 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/de_CH
10:10:21,979 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/es_MX
10:10:22,089 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/zh_CN
10:10:22,167 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/sv_SE
10:10:22,276 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/tr_TR
10:10:22,354 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/fa_IR
10:10:22,417 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/fr_FR
10:10:22,526 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/it_IT
10:10:22,620 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/ru_RU
10:10:22,745 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/pl_PL
10:10:22,839 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/pt_BR
10:10:22,933 INFO [STDOUT] Inspecting /WEB-INF/config/ui/Root/cs_CZ
10:10:23,026 INFO [STDOUT] Inspecting /WEB-INF/config/filters



If you see lots of error messages on the console and/or your log files grow very fast (several hundred KB if not more) then it is quite likely that your DB connection is not configured correctly. Please note that there is absolutely no sense in continuing before you have fixed your DB connection. You might want to verify

  • the spelling of the name of your DB (e.g. crx-CRX vs. CRX_CRX)

  • user name (e.g. system) and password (e.g. manager)

  • permissions of the user, etc.

After the successful startup of the openCRX servlet you see the start screen as shown in the figure below. You should at least see the root objects Administration, Codes, Security Realm, Security Policies, and Security Subjects:

Figure 3: Start screen of admin-Root

3.3.2 Create Data Segment “Standard”

Execute the operation Actions > Create Administrator to create a new segment and selected default accounts (including an administrator's account which allows you to manage the newly created segment).

Set the field Segment name to Standard. Leave the field Admin principal name empty and set the fields Initial password and Password again to * as shown in the figure below:

Figure 4: Create a new segment named Standard

Please verify the spelling of the segment name:
Standard (with a capital “S”).





Next you click OK to execute the operation Create Administrator which creates the segment named Standard. The result of executing this operation should look as follows:

Figure 5: Result of operation Create Administrator

3.3.3 Import Codes and Data

openCRX is distributed with many code tables and several data files (e.g. unit of measurement information, standard activity management process). Code tables and data files must be imported from the provided XML files to make them available to openCRX.

Execute the operation View > Reload and then click Yes to start the import:

Figure 6: Load Code Tables and Data – Step 1

Figure 7: Load Code Tables and Data – Step 2

Please note that this operation takes some time to complete as thousands of objects are made persistent in your database during the import. The console output will look similar to the following listing:

Listing 5: Console Output – Importing Codes and Data

...
10:31:59,894 INFO [STDOUT] Loading codes
10:31:59,894 INFO [STDOUT] Loading /WEB-INF/config/code/Root/en_US/accesslevel.xml
10:31:59,925 INFO [STDOUT] Loading /WEB-INF/config/code/Root/en_US/accountcategory.xml
10:31:59,925 INFO [STDOUT] Loading /WEB-INF/config/code/Root/en_US/accountrole.xml
...
10:32:00,300 INFO [STDOUT] Loading /WEB-INF/config/code/Root/de_CH/accesslevel.xml
10:32:00,316 INFO [STDOUT] Loading /WEB-INF/config/code/Root/de_CH/accountcategory.xml
10:32:00,316 INFO [STDOUT] Loading /WEB-INF/config/code/Root/de_CH/accountrole.xml
...
10:32:08,019 INFO [STDOUT] Loading /WEB-INF/config/code/Root/cs_CZ/usageaddress_ext_postal.xml
10:32:08,035 INFO [STDOUT] Loading /WEB-INF/config/code/Root/cs_CZ/usageaddress_ext_room.xml
10:32:08,035 INFO [STDOUT] Loading /WEB-INF/config/code/Root/cs_CZ/usageaddress_ext_web.xml
10:32:08,051 INFO [STDOUT] Loading /WEB-INF/config/code/Root/cs_CZ/usageproductbaseprice.xml
10:32:08,051 INFO [STDOUT] Loading /WEB-INF/config/code/Root/cs_CZ/utcoffset.xml
10:32:08,051 INFO [STDOUT] Storing 1485 code entries
10:32:49,679 INFO [STDOUT] Done
10:32:50,413 INFO [STDOUT] Loading data
10:32:50,413 INFO [STDOUT] Loading /WEB-INF/config/data/Standard/bug-and-feature-process.xml
10:32:51,867 INFO [STDOUT] Storing 26 objects
10:32:52,773 INFO [STDOUT] Loading /WEB-INF/config/data/Standard/contracts.xml
10:32:54,429 INFO [STDOUT] Storing 1 objects
10:32:54,492 INFO [STDOUT] Loading /WEB-INF/config/data/Standard/products.xml
10:32:55,476 INFO [STDOUT] Storing 1 objects
10:32:55,554 INFO [STDOUT] Loading /WEB-INF/config/data/Root/uom_SI_and_Paper.xml
10:32:57,117 INFO [STDOUT] Storing 42 objects
10:32:57,914 INFO [STDOUT] Done

3.3.4 Set Access Levels of Codes

Navigate to the package Codes by clicking on the Root menu entry Codes. Then execute the operation Security > Set Access Level as shown below:

Figure 8: Execute Operation Set Access Level



Set the parameters as follows (see also figure below):

Browse access level: [4] global
Update access level: [2] basic
Delete access level: [2] basic
Mode: [1] recursive

Figure 9: Parameters of Operation Set Access Level



Please note that this operation also takes a fair amount of time to complete:

Figure 10: Result of the Operation Set Access Level



3.3.5 Restarting the Application Server

Please restart the application server. On Windows you can stop JBoss by typing <CTRL>-C into the command window.

After stopping JBoss and before restarting JBoss it is strongly advised that you delete the tmp and work directories:

jboss-4.0.5.GA\server\default\tmp

jboss-4.0.5.GA\server\default\work



On Windows you can start JBoss by executing run.bat located in the directory jboss-4.0.5.GA\bin







3.4 Create a new User guest

Once your application server is up and running again and openCRX properly deployed, new users are created with the following steps:

  1. as admin-Root: create a new Subject

  2. as admin-Root: create a new Principal in realm Default and link this principal to the subject created in the previous step

  3. as admin-Root: make Principal member of group Users

  4. as admin-Standard: create a new Contact

  5. as admin-Standard: create a new User and link this User to the contact created in the previous step

The following sections will guide you through the creation of a new User guest with permission to access the previously created segment Standard.

3.4.1 Create a new Subject guest

As admin-Root, navigate to the package Security Subjects and then create a new Subject with the creator menu New > Subject as shown below:

Figure 11: Create a new Subject

Enter guest into the field Description. More importantly, change the proposed Qualifier to guest as shown in the figure below:

Figure 12: Change the Subject's Qualifier to guest

The Subject Qualifier represents the Subject's Login name.



Next you click Save to store this new Subject. You should now see 3 Subjects (including the newly created Subject guest) in the grid Subjects:

Figure 13: Grid Subjects with admin-Root, admin-Standard, and guest

3.4.2 Create a new Principal guest in realm Default

Next, you need to create a new Principal in realm Default.

Please make sure that you create the new Principal in realm Default and not in some other realm – follow instructions meticulously!

Click on the package Security Realm in the root menu and then navigate to the realm Default. You can do this – for example – by clicking on the bread crum entry Security Realms as shown in the figure below:

Figure 14: Click on bread crum entry Security Realms

Next you click on the icon of the Realm Default. Your screen should now look as follows:

Figure 15: Realm Default

Select the creator menu New > Principal as shown as shown below:

Figure 16: Create a new Principal

You need to link this Principal with the previously created Subject. Type guest into the field Subject and then select guest [guest] from the autocompleter's drop down menu as shown below:

Figure 17: Select Subject guest from the drop down menu

Please note that just typing the word guest into the Subject field is not sufficient. You must select the appropriate Subject from the drop down menu that contains all Subjects that match the string you typed into the Subject field (depending on the speed of your server you will see the drop down menu before you have finished typing – that is OK, just select the appropriate Subject from the drop down menu)

Next you enter the Principal name (which will be the user/login id) of the Principal into the field Qualifier (e.g. guest as shown in the figure below):

Figure 18: Change the Principal's Qualifier to guest

Next you click Save to store this new Principal. In the grid Principals you should now see 2 Principal Groups (Administrators, Users) and 3 Principals (admin-Root, admin-Standard, and the newly created Principal guest):

Figure 19: Grid Principals with newly created Principal guest





3.4.3 Make new Principal guest member of group Users

Next you must add the newly created Principal guest to the appropriate Principal Group. Navigate to the newly created principal (i.e. load it into the inspector by clicking on its icon).

Start typing Users into the input box of the grid Member of Principal Groups as shown below:

Figure 20: Add Principal guest to Principal Group Users – Step 1

As soon as the drop down menu of the autocompleter appears, select the entry Users [Users].



Please note that just typing the word Users is not sufficient. You must select the appropriate Principal Group from the drop down menu of the autocompleter.



Normal users should be added to the principal group Users, segment administrators should be added to the principal group Administrators).

Consult the openCRX Admin Guide for additional/more detailed information on principals and principal groups.



To actually add the Principal Group Users you still need to click button [+] as shown below:

Figure 21: Add Principal guest to Principal Group Users – Step 2

You cannot just type Users into the input box – you must use the Lookup Inspector to select the appropriate Principal Group before clicking the button [+].



Finally, this principal group should show up in the Grid Member of Principal Groups as shown below:

Figure 22: Add Principal guest to Principal Group Users – Step 3

That's it for admin-Root. You can now log out by clicking on Logoff.

3.4.4 Segment Administrator creates new Contact

Enter admin-Standard into the field Username and then enter adminSecret into the field Password (you may have chosen a different password, i.e. enter the password you chose during installation/configuration of the application server):

Figure 23: First login with admin-Standard / adminSecret

Click the button to start the login process.

If you can't get past the login screen (with the correct Username and Password, of course) and the Warning “Browser must accept cookies” keeps showing up need to verify your browser settings related to cookies. If you have installed a personal firewall (e.g. ZoneAlarm) you also need to verify those cookie settings. The application server must be able to create/set a session cookie.





Please note that no charts are displayed when a users logs in for the first time. Activate charts by executing the operation View > Recalculate and Refresh as shown below:

Figure 24: View > Recalculate and Refresh activates/updates charts

Click OK to actually execute the operation.



As administrator you first have to create a new Contact in the package Accounts for the new user guest. To do so, click on the package Accounts in the root menu and then select the creator menu New > Contact as shown in the figure below:

Figure 25: Create new Contact – Step 1

This brings up the form for new contacts. Enter guest into the field Last name (feel free to provide additional information, but don't change the Qualifier, which is generated automatically by openCRX, unless you know exactly what you are doing):

Figure 26: Create new Contact – Step 2

Next you click Save to store this new Contact. This takes you back to the Account grid.

3.4.5 Segment Administrator creates new User

Click User Homepages and select the operation Actions > Create User... which allows you to create and initialize a new user. Set the fields to the values as shown below – type guest into the field Principal name, use the Lookup Inspector or the autocompleter to fetch values for Contact and Primary user group (note that you must either fetch values with the Lookup Inspector or select entries from the autocompleter's drop down menu for the parameters Contact and Primary user group, i.e. it is not sufficient to just type some text into these fields), and then type a password (e.g. guest) into the fields Initial password and Password again:

Figure 27: Create new User

Passwords are stored in the table security_Credential. If you do not have the login module of your application server configured to access the table security_Credential then the setting of the passwords in openCRX has no effect (with JBoss, for example, you can edit the files users.properties and roles.properties to add users).

Next you click OK to execute the operation Create User which creates the User named guest. The result of executing this operation should look as follows:

Figure 28: Result of operation Create User

The grid User Homes contains now 2 entries: admin-Standard and guest.

Congratulations! You have successfully created the new user guest. The new user should now be able to login. You can verify this by disconnecting and reconnecting with Username guest and Password guest.



You can usually fix corrupt data of an existing user by creating this user's homepage again – note, however, that the respective user's personal settings are reset to default values by executing the operation Create User.

4 Next Steps

Now that you have successfully installed and configured openCRX you might want to have a look at some of the additional documentation published at http://www.opencrx.org/documents.htm.

License

The contents of this file are subject to a BSD license (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.opencrx.org/license.htm

Copyright 2007 © CRIXP Corp. All rights reserved.

http://www.crixp.com/ http://www.openmdx.org/