Install Notes
First, we are always available to help you with your installs.
You do not have to be a "RoAccess" expert. We can make your configuration
files for you if you wish. We can then step you through on the phone
the installation and the Installation Verification Tests and other screens
to let you know your installation is working fine. So don't hesitate
to call us. We are here to make your life easier.
However, there are some powerful "RoAccess Options" that can be set.
By looking at roaccess/cgi-bin/AConfig.pro and
http://www.roaccess.com/ro-access/htdocs/help/AConfig.htm, you can view their description
and how to set them.
There are two main configuration files: AConfig.pl and RoAccess.ini.
While you can create them yourself, we prefer to provide you with your
initial ones so you can come up faster. Then you can make customizations.
The site configuration parameters are enclosed in either ' apostrophes
or " double quotes. Use ' when the value is does not need prior values
substitution, like a complete file or directory name. Use " quotes
when prior variable substitution is needed inside the current parameter.
Note that file names always use "/" slash (not the "\" Windows
backslash). RoAccess will automatically convert it to a backslash
as necessary with dealing with Windows.
Typical Installation Overview
- Install a WEB server
- Install perl
- Install Autopilot if on Windows or install batch client if on Unix
- Install RoAccess files into WEB server DOCUMENT_ROOT directory of
roaccess
- Make index.html the default page to bring up for the roaccess
directories
- Set cgi-bin, user_cgi-bin, and bin subdirectories executable
- Make the two tmp directories writable (click
here).
- Install the AConfig.pl, no_echo.cli and RoAccess.ini files you get from us
- Import ROA_PROC.001 into the AP-PROC
database
- Import the RoAccess model (RIM) IMROACC.001
into your AP-DATA database. Gen it
- Get a Java Applet license key from
RoAccess support
- Test the installation using
http://yourserver/roaccess/Test.html
- Test the versions of the supplied
Stored Procedures
|
Quick Install Summary
Unix Installations:
-
You must install a WEB server, such Apache or Netscape Enterprise, etc.
-
You must install perl
- Have the perl executable in /usr/local/bin/perl,
or create a symlink to there
-
Batch Client
- You will need the rochade/bin/roclictu batch client
-
Create the roaccess directory under your WEB Serve root
-
ungzip and
Un-tar the distribution file
-
make roaccess/cgi-bin and roaccess/user_cgi-bin directories executable in WEB Server
-
Proceed to Common for All WEB Servers
|
Windows Installations
For ALL Windows installations, use the 8 character names for directories and
file names when making entries into the cgi-bin/AConfig.pl file. For
example use: $ro_dir='c:/progra~1/rochade'; # CORRECT
rather
than $ro_dir='c:/Program Files/Rochade'; # WRONG
Using the 8 character names assures all the Java Applets and third party
software we supply will always work. IIS 4.0 and Higher
While IIS 4.0 and 5.0 have a lot of nice features, they frequently incorrectly
set themselves up. We have had many, many complaints about how sometimes setting up a WEB site works and
sometimes does not, and the they have had to re-do the installation. Below is a sequence
of steps that gets around a number of the IIS bugs. It basically centers around creating virtual
directories. To IIS code to set up virtual directories make mistakes and many time mis-configures itself, so do
these steps. Once IIS configures itself correctly, it runs great,
but the bugs in IIS and the Management Console can be very frustrating:
-
You will need perl installed. It can be obtained from www.activestate.com,
or from our download site.
-
Note: DO NOT install RoAccess until the last step, strange as this may
seem.
-
First create the directory where you intend to install RoAccess, such as:
C:\inetpub\wwwroot\roaccess
See the hyperlink to the "pictorial description" below for help. If you
don't follow these steps in this precise, you may have problems.
-
Then using the IIS Services Manager Management Console, create your new
WEB site for this directory
-
Then using Windows Explorer or a DOS box, create two sub directories of
this directory:
C:\inetpub\wwwroot\roaccess\cgi-bin
C:\inetpub\wwwroot\roaccess\user_cgi-bin
-
Then create virtual directories for cgi-bin and user_cgi-bin.
Do this by clicking on your newly created WEB site, and select NEW/Virtual
Directory. The first name is "cgi-bin" and the complete path would
be C:\inetpub\wwwroot\roaccess\cgi-bin. Likewise do this for user_cgi-bin.
Note: after you create the cgi-bin and user_cgi-bin virtual directories,
IIS shows you have instead cgi-bin2 and user_cgi-bin2, IIS has mis-configured
itself (a very common problem, but is hard to un-do), call us for help.
IIS is loaded with bugs, but once it gets configured, it runs fine.
-
At this point, unzip the RoAccess files into c:\inetpub\wwwroot\roaccess
-
Your IIS Web Server should be correctly configured, now.
-
Proceed to Common for All WEB Servers
Click here for a pictorial
description of the above steps. Note: this shows first loading RoAccess
and then making the virtual directories. We recommend that in steps
above you just create the empty directories, make them virtual, and if
that works, then load RoAccess. If you have any questions just give
us a call and we can explain the details.
Windows Apache WEB Server
Apache for Windows has been found to be an excellent WEB server for both
NT and Unix.
-
AConfig.pl: Apache usually installs itself into c:\program files\apache
group\apache. However in general files and directories with blanks
are a problem with WEB servers. Therefore, do not put blanks into
any AConfig.pl file or directory entries. Instead use the "8 character
file and directory name" instead. Example:
C:/Program Files/Apache Group/Apache/htdocs/RoAccess/bin/dot.exe should
be changed to
C:/Progra~1/Apache~1/Apache/htdocs/RoAccess/bin/dot.exe'.
Apache does not set the DOCUMENT_ROOT environment variable, so you need
to set it in AConfig.pl. Note this directory path uses NO blanks.
Add this line to AConfig.pl:
$ENV{"DOCUMENT_ROOT"}="C:/Progra~1/Apache~1/Apache/htdocs";
By default, Apache looks at the first line of the perl applications to
find where perl is installed. This works fine for Unix, but perl
installs itself in a different place for Windows. Instead, add the
following line to the top of your apache\conf\httpd.conf file to tell NT
to use the Registry to locate where perl is installed:
ScriptInterpreterSource registry
When adding the ScriptAlias entries, to set roaccess\cgi-bin and roaccess\user_cgi-bin
as executable and and when specifying any other file or directory names,
only
use lower case file and directory names. Do not mix upper and lower
case. Stick to lower case only. Here is an example of
how your two ScriptAlias lines might appear:
ScriptAlias /roaccess/cgi-bin/ "C:/inetpub/wwwroot/roaccess/cgi-bin/"
ScriptAlias /roaccess/user_cgi-bin/ "C:/inetpub/wwwroot/roaccess/user_cgi-bin/"
RoAccess on Windows 2000/2003/XP Professional
If you want to install RoAccess on a PC running Windows 2000/2003/XP Professional,
you must add the Internet Services Component, which happens to be IIS 5.0.
RoAccess and Rochade run great here, even though this is not a "server"
platform.
RoAccess on Win98/Win95
This is not officially supported by RoAccess Support.
We suggest you use XP professional. But we know there
will be many who will want to do this. Below are some helps, but we cannot
help you much here, because it is in many cases trial and error.
-
Win98/95 is not a very good platform. IIS does not run on Win98/95
because of that. However, you may desire to development on a Win98
platform for convenience.
-
First, we suggest you run the MicroWEB server on Win98/Win95. Microsoft's
PWS (Personal WEB Server/Peer WEB Services) runs sub processes in a popup
DOS box, which is very irritating, as you will see. The MicroWEB
Server, however, runs them silently. You will like it much better.
-
Create your ro-access directory under your WEB Server root,
like c:\inetpub\wwwroot\roaccess
-
unzip the file, and install into that directory
-
make roaccess/cgi-bin and RoAccess/user_cgi-bin executable in WEB Server
and make them virtual directories
Proceed to Common for All WEB
Servers
|
Common for All WEB Servers
-
Proceed to install:
-
cgi-bin/AConfig.pl - main configuration file we will send you or you can
create yourself.
-
config/no_echo.cli - we will send you
-
config/roaccess.ini - we will send you, or you can create yourself
-
The do initial tests using the Installation Confirmation Screen:
http://yourserver/roaccess/Test.html
|
RoAccess.ini file:
Note: you can skip the section initially if you let us configure your initial RoAccess.ini file. It's a bit cryptic, and your looking
at what we send you will help you immensely on understanding it.
This file format is required by the Rochade client and is specified by ASG, so we can't make it any easier or meaningful for you. Here is the info for your ro-access.ini on your server.
This file can be found in the "install" directory. If you are running RoAccess 5.3, then the sections for code pages and messages will need to be added, including the $IMPORT line to activate them from your main TAGS, such as ROA_FIRST_SERVER, ROA_SECOND_SERVER, etc.
Put this file in your RoAccess/config (Unix) or RoAccess\config (Windows).
Below is a sample RoAccess.ini file using a Unix Rochade 5.0-5.2 installation:
;-----------------------------------------------------
; This is a sample .ini file for RoAccess to use for a 5.0-5.2 Rochade installation
; You do not have to name it rochade.ini. You just
; specify in AConfig.pl the name and location of
; this file.
;
; You can define multiple Rochade Servers or
; virtual servers, where you have multiple databases
; served by the same Rochade Server, but you want different
; Databases associated by a Name. This way, you can have
; development, test and production servers on different
; Rochade Servers or the SAME server.
; For example, if the SECOND_V defined DEVELOPMENT-PROC
; and DEVELOPMENT-DATA as its two database, then RoAccess
; will handle them just as if they were on different servers.
;-----------------------------------------------------
;
;
;-----------------------------------------------------
;RoAccess First or Only Server
;-----------------------------------------------------
[ROA_FIRST_SERVER]
STARTUP=@/usr/local/rochade5/appl/no_echo.cli
LASTRC=HALT; T
MODE=BATCH
SERVER1=FIRST_S
LANG=E
VARS=FIRST_V
;-----------------------------------------------------
; If you have a second server, use the SECOND sections
; If you want 3 or more servers/virtual servers, then
; just cut and past sections changing SECOND with THIRD,
; etc, and put the right host access and database
; declarations.
;-----------------------------------------------------
[ROA_SECOND_SERVER]
STARTUP=@/usr/local/rochade5/appl/no_echo.cli
LASTRC=HALT; T
MODE=BATCH
SERVER1=SECOND_S
LANG=E
VARS=SECOND_V
;-----------------------------------------------------
; Define the databases/permissions for each Server
; Note, the second server has only TWO databases
; declared, while first server has 3.
;-----------------------------------------------------
[FIRST_V]
DB1=AP-DATA
DB2=AP-PROC
DB3=AP-TEST
DB1_PROT=U
DB2_PROT=U
DB3_PROT=U
DB1_FUNC=P
DB2_FUNC=P
DB3_FUNC=P
[SECOND_V]
DB1=AP-DATA
DB2=AP-PROC
DB1_PROT=U
DB2_PROT=U
DB1_FUNC=
DB2_FUNC=P
;-----------------------------------------------------
; Define the Host Access parameters
; In this example, both servers are on the same host
; but are on different PORTS.
;-----------------------------------------------------
[FIRST_S]
BUFFERSIZE=8192
PORT=8880
HOSTNAME=localhost
COMM=TCP
[SECOND_S]
BUFFERSIZE=8192
PORT=8881
HOSTNAME=localhost
COMM=TCP
---- End ro-access.ini for a Rochade 5.0-5.2 installation ---------------------------
Below is a RoAccess.ini file for Rochade 5.3 and above. Note it has the CODE PAGES section
which you can get from your rochade.ini file and just cut and paste it into
your roaccess.ini file:
;-----------------------------------------------------
; This is a sample .ini file for RoAccess to use for Rochade 5.3 and later
; You do not have to name it rochade.ini. You just
; specify in AConfig.pl the name and location of
; this file.
;
; You can define multiple Rochade Servers or
; virtual servers, where you have multiple databases
; served by the same Rochade Server, but you want different
; Databases associated by a Name. This way, you can have
; development, test and production servers on different
; Rochade Servers or the SAME server.
; For example, if the SECOND_V defined DEVELOPMENT-PROC
; and DEVELOPMENT-DATA as its two database, then RoAccess
; will handle them just as if they were on different servers.
;-----------------------------------------------------
;
;
;-----------------------------------------------------
;RoAccess First or Only Server
;-----------------------------------------------------
[ROA_FIRST_SERVER]
$IMPORT=RO_MESSAGES;RO_CODEPAGES
STARTUP=@/export/home/simpson/products/ro-access/config/no_echo.cli
MODE=BATCH
SERVER1=FIRST_S
LANG=E
VARS=FIRST_V
;-----------------------------------------------------
; If you have a second server, use the SECOND sections
; If you want 3 or more servers/virtual servers, then
; just cut and past sections changing SECOND with THIRD,
; etc, and put the right host access and database
; declarations.
;-----------------------------------------------------
[ROA_SECOND_SERVER]
$IMPORT=RO_MESSAGES;RO_CODEPAGES
STARTUP=@/export/home/simpson/products/ro-access/config/no_echo.cli
LASTRC=HALT; T
MODE=BATCH
SERVER1=SECOND_S
LANG=E
VARS=SECOND_V
;-----------------------------------------------------
; Define the databases/permissions for each Server
; Note, the second server has only TWO databases
; declared, while first server has 3.
;-----------------------------------------------------
[FIRST_V]
DB1=AP-DATA
DB2=AP-PROC
DB3=AP-TEST
DB1_PROT=U
DB2_PROT=U
DB3_PROT=U
DB1_FUNC=P
DB2_FUNC=P
DB3_FUNC=P
[SECOND_V]
DB1=AP-DATA
DB2=AP-PROC
DB1_PROT=U
DB2_PROT=U
DB1_FUNC=
DB2_FUNC=P
;-----------------------------------------------------
; Define the Host Access parameters
; In this example, both servers are on the same host
; but are on different PORTS.
;-----------------------------------------------------
[FIRST_S]
BUFFERSIZE=8192
PORT=8888
HOSTNAME=localhost
COMM=TCP
[SECOND_S]
BUFFERSIZE=8192
PORT=8880
HOSTNAME=localhost
COMM=TCP
[RO_CODEPAGES]
DESCRIPTION=Codepages-5.3
;
CODEPAGE=@/export/home/local/rochade53/bin/c1252.icp
CODEPAGE_FILES=@/export/home/local/rochade53/bin/c437.icp
[RO_MESSAGES]
DESCRIPTION=Messages-5.3
;
ROAPIMSG.E=@/export/home/local/rochade53/bin/roapieng.imf
ROCLIMSG.E=@/export/home/local/rochade53/bin/roclieng.imf
RORCIMSG.E=@/export/home/local/rochade53/bin/rorcieng.imf
ROSRVMSG.E=@/export/home/local/rochade53/bin/rosrveng.imf
;
ROAPIMSG.G=@/export/home/local/rochade53/bin/roapiger.imf
ROCLIMSG.G=@/export/home/local/rochade53/bin/rocliger.imf
RORCIMSG.G=@/export/home/local/rochade53/bin/rorciger.imf
ROSRVMSG.G=@/export/home/local/rochade53/bin/rosrvger.imf
------- End of Sample RoAccess.ini file for Rochade 5.3 and later ------
If you are running NT, look at your Rochade.ini file (rochade\appl\rochade.ini) to
get the "NT" syntax for the CODE PAGE and MESSAGES sections. Cutting and pasting
is the recommended way. Also make sure the $IMPORT line matches. We have found
Rochade has used two different forms of the $IMPORT command and MESSAGE sections.
Cutting and pasting make sure it is in correct format.
The roaccess.ini file must be readable and writable by the effective
user of the WEB server. When a WEB server starts up, its configuration
parameters define the user it is to run as. For instance, a Unix
WEB server, such as Apache, might be configured to run under a special
non-privileged users, such as "nobody". Under NT, if you are running
NT and MS IIS 4.0/5.0, the Management Console automatically knows the "effective
user" for IIS. By default, it seems RoAccess.ini will be writable.
Rochade writes the result status of the latest access into a variable "LASTRC".
That is why it must be writable.
Beware, some Rochade 5.2 database servers in the past, CHANGE the permissions
on rochade.ini every time is starts up, removing world read. You may have
to change the startup script to start the database server, delay and then
add back the world read permissions. By utilizing ro-access.ini rather
than the system rochade.ini, you don't have to worry about the Rochade
server removing the read permission you need.
Code Pages:
For languages other than English, you will probably be using a code
page. It will handle the translations of "special characters" from
Rochade's internal format to your "outside world" format.
If you are using Rochade 5.3+ and a codepage, other than the
default 437, then you must make the following type entries (German example):
Your lines probably look like:
CODEPAGE=@/export/home/local/rochade53/bin/c1252.icp
CODEPAGE_FILES=@/export/home/local/rochade53/bin/c437.icp
Change the second one to be:
CODEPAGE=@/export/home/local/rochade53/bin/c1252.icp
CODEPAGE_FILES=@/export/home/local/rochade53/bin/c1252.icp;@/export/home/local/rochade53/bin/c437.icp
If you are using Rochade 5.2 or earlier and a codepage, other
than the default 437, then you must make the following type entries into
your ROA_FIRST_SERVER, ROA_SECOND_SERVER, etc., sections (German Example):
[ROA_FIRST_SERVER]
CODEPAGE_FILES=1252
CODEPAGE=1252
Rochade 5.4+,6.x Notes
The topics below reference 5.4 a lot, but it's the same for Rochade
6.x.Many of the settings in RoAccess.ini are taken are taken from
Rochade server configuration file. In Rochade 5.0-5.2 the server
file name is: "rochade.ini". However for Rochade 5.4+, the file is
"server.ini".
| Rochade Version |
5.0-5.3 |
5.4+ |
|
| |
Windows |
Unix |
Windows |
Unix |
| |
|
|
|
Unix |
| ini file name |
rochade/appl/rochade.ini |
rochade/appl/rochade.ini |
rochade\appl\server.ini |
rochade/appl/server.ini |
| batch client file name |
rochade\bin\rocligxn.exe |
rochade/bin/roclictu |
rochade\sbin\roclictu |
rochade/sbin/roclictu |
Unix Shared Libraries
The Unix batch client starting with Rochade 5.4 utilizes shared
libraries. We know this is true for Sun Solaris and HP/UX, believe it to be
true for AIX. We do not know about HP/UX. Run the test "Verify
perl can run a cgi-bin script" in the Installation Verification Tests Screen(
roaccess/Test.html ), if you get a message like "libroapi.so: open failed:
no such file or directory", then the WEB server needs be told to add the
rochade/sbin directory to the LD_LIBRARY_PATH environment variable.
The file "libroapi.so" is a shared library (.so) file. Some shared
library files might look like xxxx.so.2 where the .so is inside the name.
Some WEB servers allow you to add "environment variables" that get passed
to the cgi programs. Your other option is to create a wrapper
script to execute.
How to Tell if your Batch Client uses Shared Libraries
This is how we had our Solaris Users do it:
First try running the Test1.pl mentioned above. If you get the
missing shared library message, you are using shared libraries.
If Rochade was installed in /usr/local/rochade54, do this:
open a telnet session to your Unix RoAccess WEB server system
cd /tmp
run this command "/usr/local/rochade54/sbin/roclictu
If you get a "shared library missing" message, then it is using the new
shared libraries, and you will need the change mentioned below.
If you do not get this error message, you do not need to make any changes.
Method 1: Adding LD_LIBRARY_PATH to WEB Server's Environment
Sun Solaris uses LD_LIBRARY_PATH. Note: HP/UX uses a different
environment variable. If your WEB server allows adding "environment variables", you need to
add LD_LIBRARY_PATH, and it should include the complete path to your Rochade
sbin directory. For instance, if your standard LD_LIBRARY_PATH is
LD_LIBRARY_PATH=/usr/openwin/lib:/usr/4lib/libxview.so.3.73
Then you would change it to be like:
LD_LIBRARY_PATH=/usr/openwin/lib:/usr/4lib/libxview.so.3.73:/usr/local/rochade54/sbin
This adds one more directory to search for shared libraries.
Restart your WEB server, so it will receive the new LD_LIBRARY_PATH,
and run the Test1.pl from the roaccess/Test.html Installation Verification
Screen.
Method 2: Creating a "Wrapper Shell" to set LD_LIBRARY_PATH
If your WEB server does not allow this, then create the following wrapper
script: rochade/sbin/roclictu.sh. This wrapper is executed instead of the
Rochade client. It then executes the Rochade client. Here is a typical
AConfig.pl line executing the Rochade client directly: $ro_cmd="$ro_dir/sbin/roclictu RO_TAG $ro_ini";
Here is it modified to execute the "wrapper":
$ro_cmd="$ro_dir/sbin/roclictu.sh RO_TAG $ro_ini";
Solaris
Solaris uses the LD_LIBRARY_PATH environment variable to list where to search
for shared library components. The Solaris roclictu.sh script is below: #!/bin/ksh
export LD_LIBRARY_PATH=/usr/local/rochade/sbin
/usr/local/rochade54/sbin/roclictu $*
HP/UX
HP/UX uses the SHLIB_PATH environment variable to list where to search for
shared library components. The HP/UX roclictu.sh script is below:
#!/bin/ksh
export SHLIB_PATH=/apps/rochade/rochade6/sbin
/apps/rochade/rochade6/sbin/roclictu $*
Set roclictu.sh as executable, and change the $ro_cmd line in your roaccess/cgi-bin/AConfig.pl
file to point to roclictu.sh (instead of the normal roclictu).
This has RoAccess execute this batch client "wrapper" that sets the
LD_LIBRARY_PATH or SHLIB_PATH so roclictu can find its shared libraries.
Here is a variation that cd's to the executables directory first, then runs
the batch client. This ways the batch client can find its shared librarees.
below is a sample script:. Only use if the above scripts fail. #!/bin/ksh
cd /usr/local/rochade54/sbin
/usr/local/rochade54/sbin/roclictu $* Just to summarize: if you cannot pass the LD_LIBRARY_PATH
or SHLIB_PATH to your WEB
server via a configuration file, create a shell script that sets it, and
then executes the batch client. The $* parameter on the last line
says to pass all the parameters given to the script also to the batch client.
Then tell RoAccess to execute the batch wrapper script rather than the
batch client.
Have problems or questions? Give us a call.
|
The no_echo.cli file
There must be a file:
roaccess/config/no_echo.cli or
C:\RoAccess\config\no_echo.cli
that contains only one line:
#$OPTION ECHO OFF
and must be world readable.
|
AConfig.pl/AConfig.pro:
Again, we recommend you let us create your initial AConfig.pl file
to save you time and effort. RoAccess probably has over 100
options. You may initially only use a few, but later use many
more. Lets us save you time by making your initial AConfig.pl
file. They you can extend it as required.
For your initial installation, create cgi-bin/AConfig.pl.
It starts with a
RoaRequire("AConfig.pro");
... variables that are overridden go here
...
# end of AConfig.pl
1
The first line should be"
RoaRequire("AConfig.pro") ;
Then look at AConfig.pro for variables that will be different in your
installation. Example variables are: $ro_dir, @ro_servers, $ro_tmp_dir,
$ro_web_os, and $ro_ini. The only variables you put in AConfig.pl
are those you are overriding.
When installing new versions of RoAccess, your AConfig.pl will
not be overwritten.
Note: do not just copy the AConfig.pro and rename it AConfig.pl.
Yes that will work, but this effectively overrides every site parameter
variable. Then when the next version of RoAccess is installed
that has a different default value, an new features may not work, which
will make you spend a lot of time debugging. AConfig.pl is meant
to only override the necessary default values, so should be a somewhat
short file. Then as new defaults and features are added to the AConfig.pro
file, which does get overwritten with each new RoAccess upgrade, the new
features will automatically be configured and available.
|
Graphics Module:
In directory roaccess/bin copy the correct graphics module to the generic
program name:
There are two programs: dot and neato. There are multiple versions
for various operating systems and versions.
$graphviz_dot='C:/inetpub/wwwroot/roaccess/bin/dot1.4.exe';
or
$graphviz_dot='/usr/local/etc/httpd/htdocs/ro-access/bin/dot-1.4.hpux10.20;
Example:
REM Under NT
copy dot-1.4.exe dot.exe
#Under HP/UX 10.20 Unix
cp dot-1.4.hpux10.20 dot
Each release of RoAccess may have a new version, and you should
look to get the latest version. If you don't copy the executable to
a generic name, then the $graphviz_dot variable must merely point to the
executable name as delivered to you. If you are using a Unix WEB Server, then go into the roaccess/fonts
directory. Follow the README directions to install these True Type
fonts onto your system. 2003/2000/XPWinNT/98/95 does not need this. Only
Unix. |
Special Text Attribute: ROA_EXTRA
Add the ROA_EXTRA text attribute to all of your ItemTypes with binary/blob
attributes.
If an ItemType has blobs, you MUST add the ROA_EXTRA text attribute
to that ItemType.
RoAccess will take it from there. Every time you upload a Blob, RoAccess
will record the name of the file and a short description of the file into
this "hidden" attribute. Then when the Blob attribute is displayed,
you can know what the original file name was and a description of that
file because it is taken from this ROA_EXTRA attribute.
The attribute ROA_EXTRA is defined when you import the IMROACC.001 file
which defines the ROACCESS RIM. When displaying the attributes for
ItemTypes, the ROA_EXTRA attribute is hidden from display, but it is there
holding information for all the binary/blob attributes for that Item.
When you declare a graphic to be AutoDisplay by putting the word AutoDisplay
in the file description, it is actually stored in the ROA_EXTRA text attribute. |
Import the ROA_PROC Stored Procedures
Install Stored Procedures
RoAccess comes with a library of "Rochade stored procedures". You have
to import them into Rochade. This contains stored procedures to improve Rochade database throughput.
Since they are procedures, they must go into a procedure database.
They are contained in install/ROA_PROCS.001. To do this:
log into Autopilot as ADM. Select "Open AUTOPILOT Administration".
Under the Tools menu, select Import.
In the "Import into Database" field, set it to AP-PROC (or whatever your PROC
database is)
Enter the file name complete with directories for roaccess\install\ROA_PROC.001.
Click the Import button.
The stored procedures are ready for use.
A note on procedure databases; If you have several data databases,
and all use AP-PROC for procedures, if you import the RoAccess procedures
into AP-PROC, then all your Subject Areas using AP-PROC are ready to go.
That is, you only have to import the RoAccess stored procedures once.
However, if you choose to put the RoAccess procedures into your data
database (be sure to mark this database as P in ro-access.ini) then only
this database will have the RoAccess procedures installed. You will
have to import the RoAccess procedures into every data database.
We recommend installing the RoAccess procedures into AP-PROC or whatever
your common procedure data base is.
Verify Stored Procedures are Loaded
To verify that the procedures are indeed loaded and are the correct
version, run this URL:
http://yourserver/roaccess/set_cookies.html#proc_info
Click the "RoAccess Stored Procedure Information" section's button "Get
Procedure Info".
It will interrogate the system and list the versions of the stored procedures
and what they should be. It will also determine which are missing.
You can do the same by then verifing the procedures were loaded correctly by
running this URL in your browser:
http://yourserver/roaccess/cgi-bin/ProcInfo.pl
Make sure the versions of the installed procedures match what they should be. |
Import the ROACCESS RIM
To enable the extended features of RoAccess, you must import the ROACCESS
RIM and add some new ItemTypes to your Subject area for RoAccess to use.
Import roaccess/install/IMROACC.001 into your DATA database. It contains
the ROACCESS RIM having the the ROA_EXTRA attribute, plus other RoAccess
objects, such as ROA_STORED_PROCEDURES and ROA-AP-ITEMTYPE. GEN this
RIM. Then add the Item Types ROA_STORED_PROCEDURES, ROA_SYSTEM and ROA-AP-ITEMTYPE
to your Subject Area, re-GEN it. Then using Administration for that
Subject Area, do a "Reorganize" and an "Update View"
to activate these new Item Types. If you have purchased the
RoLoader Spreadsheet Loader PlugIn module, then also add ItemType
ROA_RO_LOADER.
The ROA_STORED_PROCEDURES Item Type contains information on your
Rochade procedure Language report procedures so they can be run from the
browser. You can add a text description, whether the report write
text or HTML, plus other things.
ROA-AP-ITEMTYPE will allow you to add extended metadata to a
subject area, such as defining a list of allowable link qualifiers or defining
an attribute as an integer with a PIC of I4. You can display the
Attributes in any order you wish. ROA_RO_LOADER defines how to load each file of spreadsheet data
and allows you to keep documentation about the data file, and even store
that data file in Rochade so it will never get lost.
Rochade has NO capability to store the name of the blob file or any
information about it when a Blob attribute is loaded. You have to remember
whether
it is a picture, spreadsheet or text and what file extension you should
give it when it is downloaded. Also Rochade has no capability of giving
a short description of the contents of the uploaded Blob attribute.
To get around this shortcoming, this ROA_EXTRA text attribute
is added by RoAccess. You will not see it when items are displayed, because
it be hidden from view. You must add the ROA_EXTRA attribute
to all of your Item Types that are to have blob/binary attributes.
The ROA_SYSTEM ItemType allows you to create Virtual Hierarchical
Subject Area, a powerful RoAccess-only feature. The ROA_RO_LOADER Item Type is used in conjunction with the RoLoader
optional software. This Item Type must be added to any Subject Areas
if RoLoader is to be used.
Details on How to Import the ROACCESS RIM
This is a bit detailed, but it may help those who are relatively new to
Rochade or who have forgotten how to do it.
Run Autopilot as a privileged user
Select "Application/ Open Autopilot Administration"
Select "Tools/Import"
Select the correct data database. (this does not go into
AP-PROC). It will usually be AP-DATA, AP-TEST, etc.
for the file name, enter "/roaccess/install/IMROACC.001" using the Browse
button. It is in the "install" sub directory for RoAccess
Click the "Import" button. The basic ROACCESS RIM has been read in,
but must be "generated" to be useable.
Select "System/Model Administration/Information Models"
You will see a new RIM called ROACCESS, and it will be flagged as "IN-WORK"
In the field to the left of ROACCESS, enter "GEN" and click "OK".
This will GEN (generate) the RIM, and it will then be changed from "IN-WORK"
to "GENERATED"
The RoAccess RIM has been installed, containing some special ItemTypes.
You must add these ItemTypes to your Subject Area(s).
Put a "W" next to the RIM that is used by your Subject Area, and
click "Ok". This will bring up a screen listing the ItemTypes for the user
RIM.
1) To the left of the "Item Type" text, enter a "S" for New. By typing
in "S" is will bring up a list of existing ItemTypes to select from. This
will avoid the problem of possibly mis-typing the ItemType.
2) To the right of the "Item Type" enter "ROA-AP-ITEMTYPE"
and click OK
This adds this one new ItemType to your RIM.
Do the same above steps 1 and 2 for ItemTypes: ROA_STORED_PROCEDURES and
ROA_RO_LOADER
You have added these three ItemTypes to your main RIM. However,
you need to GEN your RIM to incorporate these new ItemTypes
Go back one screen, and to the left of your RIM's name , enter: GEN,
and click OK.
The phrase to the right of your RIM should change from IN-WORK to GENERATED.
The above adds the new ItemTypes to your RIM. Now you must inform
the Subject Areas that use this RIM to use the new ItemTypes: (Bu default, ItemTypes
added to a RIM do not automatically appear is associated Subject Areas):
Go BACK as far as you can.
Select "Application/Administration"
Open your Subject Area
Select "Status/Suspend"
Select "Update/Reorganize". This now adds the new ItemTypes to you
Application, but marks them as "do not show". You must make the "visible";
Select "Update/View"
Next to the three ROA ItemTypes, put an X, and click OK. You should
see "+" to the next to these three ItemTypes.
The ItemTypes have been added to your Subject Area.
Click the "Close" button
Select "Status/Put IN-WORK"
Exit Autopilot, and bring up RoAccess on your browser.
|
The ImInt Java Applets
The family of Java Applets are licensed, and you will need a key
to unlock them. Send RoAccess support the URL of how you run
RoAccess, and we will send you a "key". For more information
see the two Applet hyperlinks on
this page.
Perl on Unix
RoAccess expects Perl to be located in the gnu standard location of /usr/local/bin/perl.
If you have chosen to install perl elsewhere, you must put a symbolic link
from /usr/local/bin/perl to your perl executable.
|
Tmp Temporary Directories
RoAccess uses TWO temporary directories. One in
c:\tmp\ro_tmp (Windows) or /tmp/ro_tmp (Unix), or you can specify a
different location. Set the
permissions for full access by everyone, but default. This directory
is usually created by RoAccess when it is run the first time. If you
have special security needs, you may want to pre-create this directory.
Beneath your RoAccess installation directory, you must make a directory
tmp.
It must be writable. It is at the same level as cgi-bin, images and htdocs. On Unix, make it owned by
the WEB server effective user or full access. On Windows, set
the permission to "Full Access" for everyone.
Upgrading to a Newer Version of RoAccess
Before upgrading to a new version, we suggest backing up your RoAccess
directory tree.
You can upgrade to a newer version by going into the main directory
for RoAccess and un-tarring or un-zipping the file. However, first SAVE
cgi-bin/AConfig.pl, your configuration file, as a precaution. When you
un-tar or un-zip the new files, your AConfig.pl file will not be overwritten.
Under Unix, the tar file will need to replace read-only files.
Normally, it will just replace the files.
Depending on your privileges, tar may be unable to overwrite these
read-only files.
In this case, from the main install directory (.../roaccess) issue the
following command:
This will make all files writable (but leave the directories alone). Now
that the files are writable, then un-tar the distribution file. If you
then look at the files, they will then be re-set to read-only.
If you're running NT, Windows 2000 or other Windows platform, just unzip the RoAccess distribution into the
top lever RoAccess directory.
Performance and General Information
This optional section is not needed for normal installation. It is useful when
you want to get the most our of RoAccess, but are willing to allow more
maintenance steps to achieve it.
RoPerlServer Installation
This is Unix only. Replace the files of the applications to be run
via the RoPerlServer with a symbolic link to RoBridge.pl. For more
information, look at URL: ../htdocs/help/RoPerlServer.htm.
To activate the various screens that will served by RoPerlServer
go into the cgi-bin directory and run script "install_RoPerlServer.sh".
This will remove each current application, and put a symbolic link to RoBridge.pl.
To de-activate RoPerlServer, go into the cgi-bin directory and run either
"install_modular.sh" or "install_monolithic.sh". These will remove
RoBridge links, if any, and copy up the normal executable screens.
|
Constant Connect Servers ( RoDbServer )
Constant-Connect servers are not "installed". They are activated
by entries in the AConfig.pl file. For more information look at AConfig.pro
and URL: /ro-access/htdocs/help/RoDbServer.htm.
As part of your bootup, you need to run /ro-access/cgi-bin/CleanRoDbDir.pl
This is a standalone executable perl script that cleans out the working
directory for the RoDbServer. If the server host crashes, like due
to a power failure, some files are left that should be removed before the
RoDbServer is started.
On Win95/NT place a shortcut to "perl.exe CleanRoDbDir.pl" in the
Startup Group. When your server starts up, you will see a DOS box pop up
during the "clean" operation. .
Special Subdirectories
This is an optional section, only needed in special cases.
There are some special sub directories you receive with the "full" version.
-
cgi-bin/monolithic. This contains a faster version of certain applications.
They do not include any files at runtime, have no comments, and have trace
statements removed.
-
cgi-bin/modular. These are the original version of the monolithic
files in case you want to replace a monolithic with it's original version.
Modular means the file, like ItemGet.pl, is a small file that includes
several other files at run-time. This is good for program development.
The "monolithic" programs are by default not enabled, but you can do so
for performance reasons. But if you do, you will have to rebuild all
the programs each time you get a new release of RoAccess. This
performance option has a cost of higher maintenance. So unless
performance is absolutely critical, ignore the "monolithic" modules.
Running Multiple Versions of RoAccess
You may have specially tailored versions in addition to the latest release.
You may want to have several versions of RoAccess available at the same
time. One could be configured one way, with another Version configured
differently. So you can have multiple versions of RoAccess all pointing
to the same or different databases. You would then access them as perhaps:
http://your_host/roaccess_production, http://your_host/roaccess_test, and
http://your_host/roaccess_development. Then you can switch between them
merely by entering a different URL.
Create a new directory tree for each version, do an install, and copy
the AConfig.pl file to cgi-bin. Then point your WEB server to these directories,
giving then different logical names.
If you have questions about this, give tech support a call.
File Permissions
The WEB server will run with the permissions of whatever user you select.
On Unix machines, the files must as a rule have either world read or be
readable by the WEB server effective user. The RoAccess configuration files,
AConfig.pl, no_echo.cli and ro-access.ini must be readable by the WEB server
user. Ideally the files should be readable ONLY by the WEB user.
Performance Discussion
Performance can vary depending on some options you choose.
One cannot over-emphasize the importance of the speed of the WEB and
Rochade server machines. Most screens come up on UltraSPARC machines in
sub second times. If the user is instead only using a 133MHz Pentium, the
browser execution and screen drawing may add another 50 to 100%. That is,
the WEB server will be finished but the browser is still drawing, making
it look like the WEB server is the slowdown, but it is the user's workstation
which is adding the extra time to complete.
You receive two versions of the basic RoAccess applications. The first
is the normal, modular system, where each application at run time includes
other files as needed. This is flexible because if you are making a change
in a shared subroutine, then the next time any application runs that uses
it, the latest changes will be seen.
The second is a monolithic file that has all the subroutines
the applications needs all packed into one file. Since the general support
subroutine libraries in the ADK, such as common.pl and common2.pl, each
contain many functions, each application will not use all of them. So the
unused subroutines take up memory and compile time. A single file, having
only what it needs takes less time to load and run. So, if you are using
a stable, production system, use the monolithic programs. If you are doing
development work, then use the modular files. There are two convenience
script to install the monolithic or modular files: install_monolithic.sh
and install_modular.sh. For NT, they are install_modular.bat and
install_monolithic.bat.
Make the network between the various machines 1) as fast as possible
with 2) as short ping times as possible. It turns out, the ping times are
the most important. If the Rochade and WEB servers are on the same machines,
no network is used, and communications between the programs runs a lightening
speed. But if you put these two servers on different platforms, the pack
round trip times can make a screen operation take 2 or more times as long.
A slower network can degrade performance even more. Likewise, the faster
the network with the smallest possible ping times between the WEB server
and the user's workstation improves this operation. Know in advance what
the typical network loading will be on the various segments of your network.
If part of the network is heavily used, then tremendous slowdowns can be
experienced which will be hard to find. To help track this down, RoAccess
has a "server" loading test screen that can let you know if the server
or the network is the problem. If the screens are coming up slow, but the
loading test screens says the server is unloaded, then it is the network.
However, if the Rochade server is on another machine, it is possible that
machine may be loaded with a long running Rochade query or other tasks.
First, make sure your WEB server is as idle as possible. Other users
running programs, or having the WEB server also be someone's personal workstation
can lead to widely variable access times. Make sure all screen savers are
set to a blank screen because screen savers that draw picture steal time
from the background processes, like servers.
Screen load times can be measured by going into the Non-Frames mode,
and hitting reload. This works very well with MSIE. However when measuring
the access times for a screen, hitting "Reload" in Netscape actually adds
about 1/4 second to what it takes if the screen is first brought up or
re-run by putting the cursor in the Location field, and hitting Return.
So, if you are running on a very fast system, like a Sun UltraSPARC, it
can seem to add 25% to the execution. Your particular version of browser
may or may not take longer for a "Reload".
Set your Browser to draw graphic after the text. All graphics are sent
to the browser with their dimensions in advance, so the browser knows how
much room to leave for the graphics. Since text draws faster then graphics,
you will see the text first, and while you look at the text, the graphics
will complete if they have not already.
Processor speed vs. Process Creation Time:
If you look at the typical server loading measurements from the Server
Load Test screen, you will notice that a 133MHz Pentium has almost the
speed of an UltraSPARC. However, the actual end-to-end time for an UltraSparc
system will be a fraction of that of a Win95/NT system. This is because
process startup times are extremely faster on Unix and very slow on Windows.
So the program while running fast on Win95, takes much longer to be started
and then exit, so the processor speed of the Pentium is misleading.
If possible, use a multi-processor server. For instance, RoAccess was
tested on a 10 processor UltraSPARC. 8 users could be added before any
slowdown was detected with sub-second response. For multiple users, on
a single processor server, they all have to wait for the CPU to become
free. WinNT and higher can have multiple processors but Win95 cannot.
Have as much memory as you can. When a user runs a screens the following
processes will be active: the WEB server, the Rochade server, the Rochade
client and the RoAccess program. Measure the memory requirements for each,
and this much free memory is what you should have as a minimum. If other
programs are running, they will need memory, too. If you do not have enough
RAM, they you system will start using virtual memory, which uses a tremendous
amount of disk I/O, and you response times will degrade dramatically.
If you are running a Win95/NT server, you should use the PerlIS, ISAPI
filter rather than running the standard perl interpreter. PerlIS is a pre-loaded
perl that is then mapped to and shared in the memory spaces of the processes.
This cut 2 seconds off the load time on a 133 MHz Pentium Win95 server.
AutoDisplay Images:
Item Types that have binary attributes containing pictures have two options:
merely display an Icon representing the graphic that needs to be clicked
on to display the picture, or it can AutoDisplay the image as the screen
is drawn. While having graphics display on the screen really look great
it takes longer. This may influence how you choose whether to use AutoDisplay.
To enable AutoDisplay, just put the word "AutoDisplay" in the description
of the graphics file when you upload it into RoAccess.
Information Useful no Longer Current
The following information may be useful if you have really old equipment or
software. It is kept only as a service to "hackers" and those with really
unusual needs.
Installing a Windows 95/98/NT Server in General
-
Install a WEB server, such as Microsoft Personal
WEB Server IIS 4.0/5.0 or MicroWEB.,
or Apache.
-
Select the Server ROOT directory, such as C:\inetpub\wwwroot
-
Create directory C:\inetpub\wwwroot, and install the files by unzipping
them and their sub directories.
-
Install Perl. For convenience, we provide perl from both our download and
FTP site. A typical directory is C:\Perl. This is easily installed
in about 3 minutes, and take all the defaults. For more information about
Perl, check out http://www.activestate.com
-
Note: PerlIS is not supported by RoAccess support.
Install PerlIS, an ISAPI Perl filter/accelerator. Likewise, install it
into C:\Perl. This install takes about 1 minute and take all the defaults.
Again. look at http://www.activestate.com.
-
IIS and Registry Entries:
-
Note: this sections is only for OLDER IIS, and we do not support
older IIS 2.0 and 3.0. They are extremely buggy, and is why IIS 4.0
and later were delivered. Older versions of IIS needed the registry
edited by hand. IIS 4.0 and higher does not. Now, you can use the IIS
Management Console to associate .pl and perl if necessary.
-
If you are using IIS 4.0 or above, ignore this section.
-
If you only will use Perl and NOT PerlIS, then make the following Registry
entry: My Computer\HKEY_LOCAL_MACHINE\SYstem\CurrentControlSet\Services\W3Svc\Parameters\ScriptMap:
Name: ".pl" Data: "start /m /wait C:\Perl\bin\Perl.exe %s"
This tells the WEB server, that any script having an extension of .pl
is to be run by the Perl interpreter, in the background, minimized and
to wait until any spawned processes complete before continuing.
-
If you are using PerlIS, the Registry entry should be:
Name: ".pl" Data: "C:\Perl\bin\PerlIS.exe".
This says to run the process shared PerlIS filter dll. This is a pre-loaded
Perl that runs in the same process space as your WEB server. This makes
perl scripts faster, because Windows 95 takes a very long time to create
a sub process. RoAccess Creates a sub process to access the Rochade database.
If PerlIS is used, no Perl does not have to be spawned first, but is run
from the shared code in the WEB server process space, which is much faster.
-
Each time you change a Registry entry, you must re-start the WEB Server
via its Administration screens for the new Registry entries to take effect.
-
Performance on a Windows 95/98 server will not be as fast as NT or Windows 2K. To shorten
the WEB response time, use the fastest machine you can find, like a 600 Mhz Pentium that is running as a dedicates server. If it is a shared
workstation, it may be busy running other programs.
-
To maximize the number of concurrent users, use fast CPUs. For instance,
if a screen takes 3 seconds to come up on a 90 Mhz Pentium, it will only
take 1 second on a 266 Mhz Pentium II and 1/2 second on a 600 Mhz machine!
So don't skimp on your server hardware. Also, be sure to NOT have any screen
saver running. A screen saver drawing pictures can use up a very large
amount of CPU time, stealing cycles from your WEB servers and Rochade database
servers.
-
Win95/98 note: Also Win98/95 IIS or PWS will have a DOS box flash each
time a screen is run, because PWS is not a very good WEB server and has
not integrated CGI applications well. So we recommend other WEB servers
for Win98./95.

