压缩分卷怎么才能解压样才能压缩pm3

Create Powerful Visuals.
No Design Skills Needed.
TechSmith makes it simple for everyone to create high-quality screenshots, screencasts, and videos.
Screen Capture&Software
Robust&capture and recording with built-in image editing and video trimming
Video Editing Software
Simplified editing, helpful video assets, and drag-and-drop effects
Lecture Capture Solution
Powerful LMS integration, in-video quizzes, closed captioning, and more
Elevate how you teach, train, and sell
Whether you're explaining a process, training others, or marketing your business, visuals are&the key to building&successful content. We make it fast and affordable for you to create the&images and videos you need to effectively communicate your message.
Make any&topic more engaging
If your content is bland, people won't pay attention. Our simple image and video editing software will make your next tutorial, product demo, process guide, or other resource&the best one yet.
Everything you need for amazing visuals
Use TechSmith's drag-and-drop video effects,&simple image editing tools,&and professional screen capture and recording to quickly create high-impact visuals.
FEATURED BY
Join over 30 million customers and start communicating better with visuals today
How much is ineffective communication costing you? Join millions of trainers, teachers, marketers and other professionals using TechSmith software to create informative graphics and videos.主题: 1万, 帖数: <span title="6万
主题: 9020, 帖数: <span title="万
主题: 856, 帖数: 2万
主题: 1534, 帖数: 6万
主题: 7111, 帖数: <span title="0万
主题: 3500, 帖数: <span title="万
主题: 3864, 帖数: <span title="万
主题: 5056, 帖数: <span title="万
主题: 3298, 帖数: <span title="万
主题: 208, 帖数: 1万
主题: 4185, 帖数: <span title="万
主题: 2273, 帖数: <span title="万
主题: 3408, 帖数: <span title="万
主题: 1万, 帖数: <span title="万
主题: 3315, 帖数: <span title="万
分区版主: ,
主题: 7万, 帖数: <span title="0万
主题: 2355, 帖数: 4万
主题: 3万, 帖数: <span title="万
分区版主: , ,
主题: 1万, 帖数: <span title="4万
主题: 1万, 帖数: <span title="0万
主题: 1万, 帖数: <span title="万
主题: 3万, 帖数: <span title="1万
主题: 8469, 帖数: <span title="万
主题: 5501, 帖数: <span title="万
主题: 7299, 帖数: <span title="万
主题: 6427, 帖数: <span title="万
主题: 715, 帖数: 2万
主题: 903, 帖数: 3万
主题: 5176, 帖数: <span title="万
主题: 1万, 帖数: <span title="万
主题: 3472, 帖数: <span title="万
主题: 799, 帖数: 2万
主题: 2万, 帖数: <span title="万
主题: 2254, 帖数: 3万
主题: 7万, 帖数: <span title="6万
- 总计 2602 人在线
- 最高记录是 22000 于 .
)皖公网安备 69号
Powered byOnline Self Publishing Book & eBook Company - Lulu
Sell your book around the world. It's free.
Lulu.com for Everyone
AuthorsFiction and non-fiction writers alike can create, print, and sell their books through all major retail channels.EducatorsEasily publish textbooks, course materials, and research. Sell your work on Lulu.com or buy the books you need immediately.Artists Showcase your work with our archive-quality, full color, hardcover & paperback options.NonprofitsEasily create a book, calendar, or photo book to raise money and awareness for your organization.
Sign up for exclusive deals and discounts from Lulu.com
Your email address is required
The email address you entered is invalid
Thank you for your interest! We will be sending great discounts and promotions to %s.
Whoops, something went wrong. Please try to register again later.
By clicking the sign up button, I consent to receive emails from Lulu Press, Inc., including discounts, publishing tips, account status, promotions, and other notifications. I may unsubscribe from these emails at any time. .
Welcome to Lulu!
We notice you are using a browser version that we do not support. For you to have the best experience on Lulu.com, we recommend using the current versions of Firefox, Chrome, Safari, or upgrading to Internet Explorer 9
(or higher).STAF V3 User&#39;s Guide
Software Testing Automation Framework (STAF) User's Guide
Version 3.4.26
31 Dec 2016
As its name indicates, STAF is a framework.
It was designed to promote
reuse and extensibility.
It is intended to make software testing easier, and
specifically to make it easier to automate software testing.
This includes
creating automated testcases, managing and automating the test environment,
creating execution harnesses (i.e., applications which schedule and/or execute
work on test systems), etc.
STAF externalizes its capabilities through services.
A service provides
a focused set of functionality, such as, Logging, Process Invocation, etc.
STAFProc is the process that runs on a machine, called a STAF Client, which
accepts requests and routes them to the appropriate service.
These requests
may come from the local machine or from another STAF Client.
Thus, STAF works
in a peer environment, where machines may make requests of services on other
STAF was designed with the following points in mind.
Minimum machine requirements - This is both a hardware and a software
statement.
Easily useable
Easily extendable - This means that it should be easy to create other
services to plug into STAF.
STAF is supported on the following operating systems
Windows 2000
Windows XP
Windows Server 2003 (i386, x86_64)
Windows Vista (i386, x86_64)
Windows Server 2008 (i386, x86_64)
Windows 7 (i386, x86_64)
Windows Server 2008 R2 (x86_64)
Windows 8 (i386, x86_64)
Windows Server 2012 (x86_64)
Windows 8.1 (i386, x86_64)
Windows Server 2012 R2 (x86_64)
Windows 10 (i386, x86_64)
Linux (i386, x86_64, PPC64, PPC64LE)
Linux on zSeries (31-bit, 64-bit)
AIX 6.1 and higher (32-bit, 64-bit)
IBM i 7.1 and higher (32-bit, 64-bit), previously known as i5/OS or OS/400
z/OS UNIX 1.4 and higher (32-bit, 64-bit)
Mac OS X 10.10 and higher (Universal binary with support for i386 and x86_64)
Solaris (Sparc 32-bit) 10 and higher
Solaris (Sparc 64-bit) 10 and higher
Solaris (AMD Opteron 64-bit) 10 and higher
Solaris (x86) 10 and higher
HP-UX 11.11 and higher (PA-RISC) 32-bit and 64-bit
HP-UX 11.31 and higher (IA64) 32-bit and 64-bit
FreeBSD 7.4 and higher (i386)
A handle is a unique identifier, representing a given process.
handle is used when submitting requests to STAF.
This handle, combined with
the machine name, uniquely identifies a particular process in the STAF
Environment.
It is this combination of machine/handle that allows
services to track requests from multiple processes on different machines.
In order to submit service requests to STAF, a process must have a handle.
Thus, the first thing a process should do is register with STAF to obtain a
Other data tied to this handle is the following:
Name - a descriptive name associated with the handle, which is specified
when a process registers with STAF.
Last used date/time - a timestamp of the last time the handle was used to
submit a request.
User authentication information - user authentication information
associated with the handle if the handle has been authenticated
Variable pool - a means by which to store and retrieve information that the
process may use, such as configuration data.
Queue - a priority queue used for interprocess communication between other
processes/machines using STAF.
Before a process exits it should unregister with STAF to free up any
resources used by that handle.
Note: Handle 1 is always allocated to the STAF Process itself.
associated with this handle is STAF_Process.
If STAFProc is shutdown on a machine (or the machine is rebooted), STAF handles
for that machine are deleted.
The SEM and RESPOOL services perform garbage collection for handles that have
been deleted by default, unless you specified no garbage collection when
requesting a mutex semaphore or resource pool entry.
Performing garbage
collection means that when a handle is deleted, any mutex semaphores or
resource pool entries owned by the handle will be released and any pending
requests submitted by the handle will be removed.
Services are what provide all the capability in STAF.
Services may be
internal services, in which case, the executable code for the service resides
within STAFProc.
Services may also be external services, in which case, the
executable code for the service resides outside of STAFProc, for example, in
a Java routine.
Services are known by their name, such as PROCESS or LOG.
services are always available and have a fixed name.
External services must
be registered, and the name by which they are known is specified when they are
registered.
If an external service is not registered with STAF, then the
service is not available on that STAF Client.
Services may also be delegated to another STAF Client.
In this case, when
a request is made for the service on the local STAF Client, it is automatically
forwarded to the machine to which this service has been delegated.
For example,
a testcase may request the local machine to log some information via the LOG
If the LOG service has been delegated to another machine, the
LOG request will actually be handled by the machine to which logging has
been delegated.
In this way, all logs could be conveniently stored on one
system, without the testcases needing to explicitly send their LOG requests
to the common system.
In a similar manner, if a service were only available
on a specific operating system, then all testcases could assume that the
service was available locally, when, in fact, the service was being delegated
to the machine running the required operating system.
Note: Internal services may not be delegated.
External services and delegated services are both registered in the STAF
Configuration File.
External services also may be dynamically added (registered)
or removed (unregistered and terminated)
via the SERVICE service (see ).
Service loaders are external services whose purpose is to load services on-demand.
They allow services to be loaded only when they have been requested,
so they don't take up memory until needed.
They also allow dynamic service registration when a request is made so that
you don't have to change the STAF configuration file to register a
When a request is encountered for a service that doesn't exist,
STAF will call each service loader, in the order they were
configured, until the service exists or we run out of service loaders.
If we run out of service loaders, then the standard
RC 2 (DoesNotExist) will be returned indicating that the service is not registered.
Otherwise, the request will be sent to the newly added service.
If a service is currently being attempted to be loaded by a service loader,
any requests submitted to the service while it's being loaded will wait
until the attempt to load the service has completed.
If the service was loaded,
the request will be sent to the newly added service.
If the service wasn't loaded,
RC 2 (DoesNotExist) will be returned indicating that the service is not registered.
STAF ships two service loader services:
A default service loader service called STAFDSLS which is written in C++ and
can dynamically load the Log, Zip, Monitor, and ResPool C++ services.
This service
loader is configured automatically in the default STAF.cfg file.
See section
for more information about the default
service loader service.
A HTTP service loader service called STAFHTTPSLS which is written in Java and
can dynamically load any STAF services written in Java.
It can download the
jar file for a STAF Java service (or a zip file that contains the jar file)
from a web server or from a file on the local machine.
It uses a configuration
file to determine what services it can load.
This service loader service can
reduce the maintenance for managing STAF Java services.
See section
for more information about the HTTP
service loader service.
Authenticators are special external services whose purpose is to
authenticate users in order to provide user level trust, which can be used
in addition (or instead of) machine level trust.
An Authenticator is a
special service that accepts an authenticate request.
As a user, you
cannot directly submit a request to an authenticator service.
Authenticators are accessed indirectly via the Handle service.
Authenticators can only be registered in the STAF configuration file --
they cannot be dynamically registered.
One or more Authenticators can be
registered.
The first Authenticator registered is the default, unless
overridden by using the DEFAULTAUTHENTICATOR operational parameter.
If you want to authenticate across systems, you must register the
Authenticator on each system using the same name (case-insensitive).
A workload is a set of processes running on a set of machines.
A workload
may be as simple as a single process running on a single machine, or it may be
as complex as multiple processes on multiple machines coordinating together to
perform a larger complex task.
STAF was designed to help the creation and
automation of workloads of all sizes.
STAF provides a means to store and retrieve variables.
These variables
may be used for any purpose the tester desires, such as storing testcase
configuration parameters.
These variables provide two main capabilities
to testcase writers.
One, they provide a standard means by which to store
configuration data, i.e., each tester doesn't have to figure out how to store
and retrieve said configuration data.
Two, these variables may be changed
dynamically.
For example, if a testcase queries the WebServer variable
before sending a request off to the web server, and that web server goes down,
the WebServer variable can be dynamically changed by the tester to refer to a
different web server, and the testcase can continue execution.
Note how STAF
allows the variable's value to be changed outside of the scope of the running
testcase, thus allowing the testcase to continue execution without needing to
be stopped and restarted.
STAF maintains a "system" variable pool that is common to all
the processes on a given STAF Client.
STAF also maintains a "shared" variable pool which is also system-wide,
but which will be sent across the network and used in variable resolution
on remote systems.
In addition, each process/handle has its own variable pool.
By default, the values of variables in a process' variable pool override the
values of variables in the system and shared variable pools.
However, the
process may override this behavior when asking for the value of a variable.
Basically, as part of every remote request, the originating handle and system
shared variable pools are sent across the wire. These pools are stored only for
the duration of the request for use in variable resolution.
The following system variables are predefined:
STAF/Config/BootDrive - Indicates the drive from which the machine was
STAF/Config/CodePage - The codepage used by STAF
STAF/Config/ConfigFile - The configuration file used to start STAF
STAF/Config/DefaultAuthenticator - The default authenticator.
authenticators are registered, it's value is "none".
STAF/Config/DefaultInterface - The default interface.
network interfaces are registered, it's value is "local" to show that
the local interface is the only interface available.
STAF/Config/InstanceName - The name of this STAF instance.
The default
is STAF if the STAF_Instance_Name environment variable is not specified.
STAF/Config/Machine - The name of this machine
STAF/Config/MachineNickname - The nickname for this machine.
This defaults
to the same value as STAF/Config/Machine unless overridden using the MACHINENICKNAME
configuration setting.
STAF/Config/Mem/Physical/Bytes - The amount of physical memory in bytes.
Note: The value is 0 on z/OS because STAF cannot determine
the physical memory on this operating system.
STAF/Config/Mem/Physical/KB - The amount of physical memory in kilobytes.
Note: The value is 0 on z/OS because STAF cannot determine
the physical memory on this operating system.
STAF/Config/Mem/Physical/MB - The amount of physical memory in megabytes.
Note: The value is 0 on z/OS because STAF cannot determine
the physical memory on this operating system.
STAF/Config/OS/Name - The name of the operating system, e.g.
WinXP, WinSrv2008, Linux, AIX, SunOS, HP-UX, Darwin
STAF/Config/OS/MajorVersion - This is operating system specific
STAF/Config/OS/MinorVersion - This is operating system specific
STAF/Config/OS/Revision - This is operating system specific
STAF/Config/Processor/NumAvail - The number of available processors.
Note: The value is 0 on z/OS because STAF cannot determine
the number of available processors on this operating system.
STAF/Config/Sep/Command - The character(s) used to separate multiple
commands concatenated together in a single line
STAF/Config/Sep/File - The character(s) used to separate files and
directories in a path
STAF/Config/Sep/Line - The character(s) used to separate lines in a text
STAF/Config/Sep/Path - The character(s) used to separate paths in a path
STAF/Config/STAFRoot - The directory in which STAF is installed
STAF/DataDir - The directory that STAF and its services use to write data
(based on the DATADIR operational parameter)
STAF/Env/* - All environment variables accessible via STAF
STAF/Version - The version of STAF installed
To substitute a variable's value, write the name of the variable in curly braces:
"{STAF/Config/OS/Name}" is a valid reference to the variable STAF/Config/OS/Name.
Assuming STAF/Config/OS/Name=Win2000, string "Operating system is {STAF/Config/OS/Name}"
resolves to "Operating system is Win2000".
Variable references can be used in many places when submitting a STAF request.
For example:
When submitting a request to any service, the machine
name and service name can contain STAF variables.
When using the Variable service, the string being resolved can contain STAF variables.
When starting a process via the Process service, the values of any of its request options
can contain STAF variables.
When logging a message via the Log service, the value of the message can contain
STAF variables.
See section
for more information on setting and resolving
variables.
Security in STAF can be defined at the machine level and/or the user level.
In other words, you grant access to machines and/or to userids.
Access in STAF is granted by specifying a certain trust level for a machine or
user, where trust level 0 indicates no access and trust level 5 indicates all access.
Each service in STAF defines what trust level is required in order to use the various
functions the service provides.
A basic description of each level follows
Level 0 - No access
Level 1 - Restricted access.
Only PING and helps available.
Level 2 - Limited access.
Only query/view facilities available.
Level 3 - Standard access.
Non-destructive updates allowed, e.g., logging.
Level 4 - Advanced access.
Update abilities, e.g., copying files, deleting
log files.
Level 5 - All access, e.g., SHUTDOWN, Process invocation, Trust definition
manipulation
In order to use user trust security in STAF, you must have at least
one authenticator registered.
Note: The local machine can be granted a trust level by specifying
interface "local" and a system identifier of "local".
User authentication overrides machine authentication.
For example,
if the machine trust level is 3 and the authenticated user has a trust
level of 4, then the handle will have a trust level of 4.
If the user has been authenticated, but there are no user authentication
trust matches, the machine trust level is used.
If there is no machine
trust level specified, then the default trust level is used.
Each handle in STAF has a priority queue associated with it.
This queue
is used to accept/retrieve messages from other processes/machines.
message in the queue has the following data associated with it.
Priority - An unsigned long value (0 - ) representing the
importance of the message, with 0 representing the most important message
Timestamp - The date/time the message was received
Machine - The machine which sent the message
Process name - The registered name of the process which sent the message
Handle - The handle of the process which sent the message
Message - The actual message itself
STAF allows you to register to receive notifications for certain events,
such as STAF starting and shutting down.
These events will appear in the
queue of the requesting process.
They will reveal the originating handle as
handle 1 of the originating machine, which is the reserved STAF Process handle.
The requests submitted to STAF and the results received from STAF are all
These strings may contain any arbitrary set of characters, including
the NULL (i.e., 0) character.
When working in an environment with a
heterogeneous set of codepages, STAF will translate the request and result
strings from and to the necessary codepages.
This ensures that the request and
result strings are not misinterpreted by the receiver.
In general, when using STAF services, there shouldn't be any round trip problems.
"Round trip" in this context means when all requests are originating from the
same system, even if the requests are sent to, and the data is stored on, a system
with a different codepage.
However, if you send, for example, a request to log
data containing Japanese codepage specific characters to any system and then
query the log from a system using a US English codepage, you won't get the
"correct" data, as that is not a valid "round trip".
Note: All STAF generated strings are composed of only ASCII-7 characters and
will safely survive the translation from/to different codepages.
If you need to specify non-ASCII characters in
a request, then you need to be
aware of some anomalies if your target system is a Windows system that isn't
using an English codepage and whose ANSI codepage (ACP) identifier is different
from the OEM codepage (OEMCP) identifier.
The system locale determines which
codepages are defaults for the Windows system.
However, some European locales
such as French and German set different values for the ACP and OEMCP.
By default, STAF uses the OEM codepage when doing codepage translation.
But, depending on where the data is input, it may be necessary to tell STAF
to use the ANSI codepage.
The ANSI codepage is used in the window manager
and graphics device interface and by many applications.
However, the Windows
command line and bat files use the OEM codepage as they are interpreted by
You can use CHCP to display or change the codepage used by the
command line.
Note that these anomalies occur only on Windows systems.
To avoid these Windows codepage anomalies, you may need to change the codepage
used by STAF using one of these methods:
Change the OEMCP value to be set to the same data as the ACP value in the
Windows Registry.
You can use REGEDIT to start the Windows Registry Editor
and select Edit-&Find and type in ACP to find its value data and then do the
same for OEMCP to find its value data.
Assuming they are different, you
could change the value data for OEMCP to be the same as the value data for
ACP by highlighting OEMCP and selecting Edit-&Modify and enter the new value
data for OEMCP and then exit the REGEDIT program.
The system must be
rebooted for the registry change to take effect.
Also, if the system is
abnormally rebooted, it's possible that the Windows operating system may
reset the registry value.
This is the recommended method.
Caution: You should NOT change the ACP value to the OEMCP value.
Or, you can override the codepage used by STAF by setting the
STAFCODEPAGEOVERRIDE environment variable to the ANSI codepage and then
start STAFProc.
Note: To see the codepage that STAF is using, check the value of
STAF variable STAF/Config/CodePage.
For example:
STAF testmach1 VAR RESOLVE STRING {STAF/Config/CodePage}
On a GET FILE request to the FS service (or on another service request that
submits a GET FILE request to the FS service like the STAX service does on
an EXECUTE FILE request), RC 39 (Converter Error) is returned if the file
contains data that is not valid in the codepage that STAF is using.
To see the codepage that STAF is using, check the value of STAF variable
STAF/Config/CodePage as discussed in the previous section.
To resolve an RC 39 (Converter Error) on a GET FILE request to the FS service,
Change the file contents to only use data that is valid in the codepage
used by STAF, or
Override the codepage used by STAF by setting the STAFCODEPAGEOVERRIDE
environment variable to a codepage that does support the data in the file
and then re-start STAFProc.
The STAF Installation Guide
(http://staf.sourceforge.net/current/STAFInstall.pdf)
has detailed information on how to install STAF.
STAF is configured through a text file called the STAF Configuration File.
This file may have any name you desire, but the default is STAF.cfg.
STAF Configuration File is read and processed line by line.
Whitespace at
the front of the line is removed before processing.
Blank lines, or
lines containing only whitespace are ignored.
You may continue a configuration
statement onto the next line by placing a "\" as the last character of the
The maximum length for a line in the STAF Configuration File is 2048
characters.
The various configuration statements are described in the following
You may use variables for all the values of configuration statement options,
with the exception of the SET VAR configuration statement itself.
However, these variables must be either predefined STAF variables (see
) or be previously defined in the STAF Configuration File
via the SET VAR configuration statement (see below).
You specify a comment by placing a pound sign, #, as the first character
on the line.
Comment lines are ignored.
# This is a comment line
You may specify a nickname for your machine using the
MACHINENICKNAME configuration statement.
This allows you to override the machine nickname which is set to the
value of the STAF/Config/Machine system variable by default.
This primarily affects the data stored by services such as the Log and
Monitor services, which store data based on the machine from which it came
by using the STAF/Config/MachineNickname system variable as part of the
directory path when creating logs and monitor data.
By allowing the STAF/Config/MachineNickname system variable to be overridden,
it allows you to better manage your data.
The machine nickname is not used to communicate with other systems and does
not have any effect on trust.
This option is used in both connected and disconnected modes
(e.g. disconnected mode is when you are not using a network interface).
MACHINENICKNAME &Nickname&
&Nickname& is the nickname you wish to use for your machine.
case sensitive.
MACHINENICKNAME testmachine1
MACHINENICKNAME JohnDoe
You indicate that you wish to send and accept requests on a network
interface using the INTERFACE configuration statement.
The INTERFACE configuration statement registers
connection providers (also called network interfaces, or interfaces
for short).
Currently, STAF provides two network interfaces, secure TCP/IP and
non-secure TCP/IP (except a secure TCP/IP interface is not yet provided
for z/OS).
The default STAF configuration file configures a secure ssl interface
as the default interface and also configures a non-secure tcp interface
(except on z/OS where only a non-secure tcp interface is configured).
STAF also allows you to plug in network interfaces
(aka connection providers) so that you can create your own
connection provider which can communicate via any mechanism you
choose (e.g. a Serial Line, NetBIOS, or SNA).
Connection provider interfaces are C/C++ based so they are platform
However, we haven't provided any documentation yet on how
to do this.
An interface named local is also provided with STAF.
coming from the local system will appear as though they came from an
interface named "local" and a system identifier of "local".
INTERFACE &Name& LIBRARY &Implementation Library& [OPTION &Name[=value]&]...
&Name& is the name by which this network interface
(aka Connection Provider) will be known on this machine.
LIBRARY is the name of the shared library / DLL
which implements the network interface (aka Connection Provider).
STAF provides one implementation library called STAFTCP which
provides support for both secure and non-secure TCP/IP communcation.
OPTION specifies a configuration option that will be passed on
to the shared library / DLL which implements the connection provider.
You may specify multiple OPTIONs for a given connection provider.
for acceptable options for the STAFTCP shared
library / DLL.
INTERFACE ssl
LIBRARY STAFTCP OPTION SECURE=Yes OPTION PORT=6550
INTERFACE tcp
LIBRARY STAFTCP OPTION SECURE=No
OPTION PORT=6500
INTERFACE tcp2
LIBRARY STAFTCP
INTERFACE tcp3
LIBRARY STAFTCP OPTION PORT=6600
INTERFACE serial LIBRARY STAFSER
The STAFTCP connection provider shared library / DLL supports
TCP/IP communication. STAF supports both secure and non-secure
TCP/IP communication on most platforms.
STAF supports both IPv4 and IPv6. IPv6 is supported in the IPv6 enabled version of STAF.
Each STAFTCP connection provider configured on a single machine must use a unique
port number.
To communicate to a remote machine running STAF, your machine and the
remote machine must both have a STAFTCP connection provider configured with the same
SECURE option value and the same PORT option value.
A non-secure STAFTCP connection
provider cannot communicate to a secure STAFTCP connection provider.
Also, a secure
TCP connection provider can only communicate to another secure TCP connection provider
if the same certificate is used.
The STAFTCP connection provider supports the following OPTIONs&#58;
CONNECTTIMEOUT=&Number& specifies the maximum time in milliseconds to wait
for a connection attempt to a remote system to succeed.
The default is 5000
(5 seconds).
You may need to increase this value if you are consistently
receiving return code 16 when trying to communicate with distant STAF systems.
Note that the total time to wait for a connection to a remote system to succeed
is (CONNECTTIMEOUT * CONNECTATTEMPTS) + (CONNECTRETRYDELAY * (CONNECTATTEMPTS - 1)).
If using the defaults, the maximum total time to wait for a connection to a remote
system to succeed is (5000 * 2) + (1000 * 1), which equals 11 seconds.
The CONNECTATTEMPTS and CONNECTRETRYDELAY values are operational
parameters that can be set in the STAF configuration file.
PORT=&Number& specifies the TCP/IP port on which this
connection provider listens for connections.
The default port is 6550 if option SECURE=Yes.
The default port is 6500 if option SECURE=No.
Each STAFTCP connection provider configured on a single machine
must use a unique port number.
PROTOCOL=&IPv4 | IPv6 | IPv4_IPv6& specifies the communication protocol that this
connection provider uses. The possible values are IPv4, IPv6,
or IPv4_IPv6.
When this option is absent, the default is IPv4_IPv6
which indicates to use both IPv4 and IPv6 protocols.
This option is only valid for IPv6 enabled versions of STAF.
SECURE=&Yes | No& specifies whether to use secure or
non-secure TCP/IP.
Secure TCP/IP uses OpenSSL.
This option is
not available on z/OS where only non-secure TCP/IP is currently supported.
The default is No.
SSL/CACertificate specifies the fully qualified path to the
file containing the STAF CA certificate list used for secure connections.
This option is only valid if option SECURE=Yes is specified.
The default is {STAF/Config/STAFRoot}/bin/CAList.crt which is a list
of the default server certificate provided with STAF.
SSL/ServerCertificate specifies the fully qualified path to
the file containing the STAF server certificate used for secure connections.
This option is only valid if option SECURE=Yes is specified.
The default is {STAF/Config/STAFRoot}/bin/STAFDefault.crt which is a
self-signed x509 default certificate provided with STAF.
SSL/ServerKey specifies the fully qualifed path to the file
containing the STAF server key used for secure connections.
This option is only valid if option SECURE=Yes is specified.
The default is {STAF/Config/STAFRoot}/bin/STAFDefault.key which is a
default server key provided with STAF.
INTERFACE ssl
LIBRARY STAFTCP OPTION SECURE=Yes OPTION PORT=6550
INTERFACE tcp
LIBRARY STAFTCP OPTION SECURE=No
OPTION PORT=6500
INTERFACE tcp2 LIBRARY STAFTCP OPTION PORT=6501
INTERFACE tcp3 LIBRARY STAFTCP OPTION PORT=6700 OPTION PROTOCOL=IPv6
INTERFACE tcp4 LIBRARY STAFTCP OPTION CONNECTTIMEOUT=15000
INTERFACE ssl2 LIBRARY STAFTCP OPTION SECURE=Yes OPTION PORT=6551 \
OPTION SSL/CACertificate={STAF/Config/STAFRoot}/bin/MyCAList.crt \
OPTION SSL/ServerCertificate={STAF/Config/STAFRoot}/bin/MySTAF.crt \
OPTION SSL/ServerKey={STAF/Config/STAFRoot}/bin/MySTAF.key
External services are registered with the SERVICE configuration statement.
SERVICE &Name& LIBRARY &Implementation library& &#91;EXECUTE &Executable&&#93;
&#91;OPTION &Name[=Value]&&#93;... &#91;PARMS &Parameters&&#93;
SERVICE &Name& DELEGATE &Machine& &#91;TONAME &Remote Service Name&&#93;
&Name& is the name by which this service will be known on this
LIBRARY is the name of the shared library / DLL
which implements the service or acts as a proxy for the service.
information for each external service to determine the appropriate value
for this option.
EXECUTE is used by service proxy libraries / DLLs to specify what
the proxy library should execute.
For example, for a Java service, this might
be the name of the Java jar file which actually implements the service.
option has no significance for non-proxy service libraries.
See below for
information regarding the JSTAF service proxy library.
Otherwise, see the documentation provided by the service proxy library.
OPTION specifies a configuration option that will be passed on
to the service library / DLL.
This is typically used by service proxy
libraries to further control the interface to the actual service
implementation.
You may specify multiple OPTIONs for a given
See below for acceptable options for the JSTAF
service proxy library.
Otherwise, see the documentation provided with the
service (proxy) library.
PARMS specifies optional parameters that will be passed to the
service during initialization.
DELEGATE specifies the machine to which to delegate this service.
This machine must be running STAF V3.0.0 or later.
Note: From a trust perspective, the tcp interface names on the "delegated to"
service machine and on the machine delegating service requests to it must match
or the trust statement for the machine that is delegating service requests
must use a wildcard to match any interface.
TONAME is the name of the service on &Machine& to
which the delegated requests will be sent.
The default is the same name as
specified with &Name&.
SERVICE MONITOR LIBRARY STAFMon PARMS "RESOLVEMESSAGE MAXRECORDSIZE 4096"
SERVICE LOG
LIBRARY STAFLog
SERVICE STAX
LIBRARY JSTAF
EXECUTE C:\STAF\service\STAX.jar \
OPTION J2=-Xmx128m
SERVICE SAMPLEJ LIBRARY JSTAF
EXECUTE C:\STAF\services\Sample.jar \
PARMS {STAF/Config/STAFRoot}\bin\sample.dft
SERVICE MYLOG
DELEGATE TestSrv1
SERVICE PAGER
DELEGATE pagesrv.austin.ibm.com
SERVICE EVENT
DELEGATE EventSrv TONAME DB2EVENT
SERVICE NOTIFY
LIBRARY Notify PARMS "24 Hours 7 Days"
SERVICE ZIP
LIBRARY STAFEXECPROXY EXECUTE STAFZip
The library JSTAF acts as a proxy for STAF services implemented in the
Java language.
The minimum version of Java that JSTAF requires depends on
the operating system for which STAF was built:
Java 1.4.2 or newer is required by JSTAF provided in the STAF binaries for
Windows, Linux i386/amd64/ppc, zLinux, AIX, IBM i, and HP-UX.
Java 5.0 or newer is required by JSTAF provided in the STAF binaries for
Solaris and FreeBSD.
Java 6.0 or newer is required by JSTAF provided in the STAF binaries for
Java 7.1 or newer is required by JSTAF provided in the STAF binaries for
Linux ppc64le.
Java 8.0 or newer is required by JSTAF provided in the STAF binaries for
Note: JSTAF in a 32-bit version of STAF requires a 32-bit version of Java.
Similarly, JSTAF in a 64-bit version of STAF requires a 64-bit version of Java.
The EXECUTE option for a Java service should specify the
fully-qualified name of the jar file that implements the service.
jar file will be automatically added to the class path by JSTAF.
Note: In versions of STAF prior to 2.4.0, the name of the Java class that
implements the service was specified for the EXECUTE option and
you had to make sure that the service's class files were in the class path.
This is still supported, but this method is deprecated and will be removed
in a future version of STAF.
JSTAF supports the following OPTIONs&#58;
JVMName=&Name& specifies the name for the JVM you want the Java
service to run in.
If the JVM does not already exist, it will be created.
If no JVMName is specified, then the Java service will run in the default JVM,
named STAFJVM1, which is created the first time a Java service is registered
with no JVMName specified.
This option allows JSTAF to run Java services in different JVMs.
JVM=&Executable& specifies the name of the desired Java
executable.
The default is "java".
Note, this option is only valid for the
first service created with a given JVMName.
J2=&Java option& specifies one or more arbitrary Java option(s)
that should be passed to the JVM.
You can find more information on these
options by using the command "java" (for standard options) and "java -X"
(for non-standard options), or by consulting your Java documentation.
Note that -X options can vary depending on which Java implementation
(e.g. Oracle Java 7 vs IBM Java 6) you installed.
Note, this option
is only valid for the first service created with a given JVMName.
Note: If you are using the HP-UX IA64 64-bit version of STAF, you must specify
the -d64 option to the JVM.
This can be done by specifying J2=-d64
MAXLOGS=&Number& specifies the maximum number of log files
for the JVM that should be saved.
The default is 5.
The JVM log files are stored in the {STAF/DataDir}/lang/java/jvm/&JVMName&
directory and contain JVM start information such as the date/time when the JVM
was started, the JVM executable, and the J2 options used to start the JVM.
In addition, it contains any other information logged by the JVM, including any
errors that may have occurred while the JVM was running.
The current JVM log file is named JVMLog.1 and saved JVM log files, if any,
are named JVMLog.2 to JVMLog.&MAXLOGS&.
Note, this option is only valid for the first service created with a
given JVMName.
MAXLOGSIZE=&Number& specifies the maximum size, in bytes, for
the JVM log file(s).
The default is M).
This option determines when to create a new JVM log file.
When the JVM is
started, if the size of a JVM log file exceeds the maximum size specified
by this option, a new JVM log file will be created.
Note, this option is only valid for the first service created with a
given JVMName.
Note: You can view the JVM log for a Java service that is currently
registered using the STAFJVMLogViewer utility.
provides more information on this utility.
OPTION J2=-verbose&#58;gc
OPTION "J2=-cp {STAF/Config/BootDrive}/MyJava/Extra.jar{STAF/Config/Sep/Path}{STAF/Env/Classpath}"
OPTION J2=-Xms128m
OPTION J2=-Xmx512m
OPTION J2=-d64
OPTION "J2=-Xmx1024m -XX&#58;MaxPermSize=256m -XX&#58;PermSize=256m"
OPTION JVMName=MyJVM1
OPTION JVM=/opt/sunjdk1.4.0/jre/bin/java
OPTION MAXLOGS=2
OPTION MAXLOGSIZE=2048
If you wanted to run the STAX Java service in a JVM, called MyJVM1, with a maximum heap
size of 1024M, and wanted the Event and EventManager Java services to run in a
different JVM, called MyJVM2, with a maximum heap size of 512M, you could specify
the following service registration lines in the STAF.cfg file (or dynamically
register the services in this order using the specified options).
SERVICE STAX
LIBRARY JSTAF
EXECUTE C:/STAF/service/STAX.jar \
OPTION JVMName=MyJVM1 OPTION J2=-Xmx1024m
SERVICE Event LIBRARY JSTAF
EXECUTE C:/STAF/service/STAFEvent.jar \
OPTION JVMName=MyJVM2 OPTION J2=-Xmx512m
SERVICE EventManager LIBRARY JSTAF
EXECUTE C:/STAF/services/EventManager.jar \
OPTION JVMName=MyJVM2
The library PLSTAF acts as a proxy for STAF services implemented in the
Perl language.
PLSTAF is currently supported on Windows (IA32), Linux (IA32),
and Mac OS X.
On Linux IA32, PLSTAF is currently only supported with Perl 5.8.0.
The EXECUTE option for a Perl service should specify the
the .pm file (without the .pm extension) that implements the service.
PLSTAF supports the following OPTIONs&#58;
USELIB=&Directory& specifies the directory containing the .pm file
that implements the service.
You must use the USELIB option unless you have
set (prior to starting STAFProc) environment variable PERLLIB to include the
directory containing the .pm file that implements the service.
MAXLOGS=&Number& specifies the maximum number of log files
for the Perl interpreter that should be saved.
The default is 5.
The Perl interpreter log files are stored in the
{STAF/DataDir}/lang/perl/&serviceName&
directory and contain the Perl interpreter start information such as the
date/time when the Perl interpreter was started and
the Perl service
executable. In addition, it contains any other information logged by the Perl
service and interpreter, including any errors that may have occurred while the
Perl interpreter was running.
The current Perl interpreter log file is named PerlInterpreter.1
and saved Perl interpreter log files, if any,
are named PerlInterpreter.2 to PerlInterpreter.&MAXLOGS&.
MAXLOGSIZE=&Number& specifies the maximum size, in bytes, for
the Perl interpreter log file(s).
The default is M).
This option determines when to create a new Perl interpreter log file.
Perl interpreter is started, if the size of a Perl interpreter log file exceeds
the maximum size specified by this option, a new Perl interpreter log file will
be created.
Note: The PLSTAF service proxy library uses embedded Perl directly within the
STAFProc executable.
This means that if a Perl service has a fatal error which
terminates the Perl interpreter, the STAFProc executable will also be terminated.
To prevent this, you can use the STAFEXECPROXY service proxy library when
registering a Perl service.
Note: To configure Perl services, prior to starting STAFProc, environment
variable PERLLIB must be set to include the directory containing the PLSTAF.pm
and PLSTAFService.pm files (located in the "bin" directory in the STAF
installation root directory).
Note: To configure Perl services, the directory containing the PLSTAF library
(PLSTAF.dll on Windows, libPLSTAF.so on Linux, libPLSTAF.dylib on Mac OS X)
must be in the operating system's library path (PATH on Windows, LD_LIBRARY_PATH
on Linux, DYLD_LIBRARY_PATH on Mac OS X) prior to starting STAFProc.
Note: When configuring Perl services on Linux with Perl 5.8.0, the directory
containing the Perl 5.8.0 libperl.so file must be included in environment
variable LD_LIBRARY_PATH prior to starting STAFProc.
Note: When removing a Perl service (or when shutting down STAF if Perl
services had been configured), you may see a message in the STAFProc output
similar to: "Perl exited with active threads".
This message can be ignored.
SERVICE Device1
LIBRARY PLSTAF EXECUTE DeviceService
SERVICE Device2
LIBRARY STAFEXECPROXY EXECUTE DeviceService \
OPTION PROXYLIBRARY=PLSTAF
SERVICE testA
LIBRARY STAFEXECPROXY EXECUTE myTestService \
OPTION PROXYLIBRARY=PLSTAF OPTION USELIB=C:\MyServices
This library will allow you to execute an external STAF service within a
new executable, rather than directly within the STAFProc executable.
example, this library could be used to run the Zip service in a separate
executable, or run a Perl service where the Perl interpreter will run in a
separate executable.
Running an external STAF service in a separate executable will ensure
that if the service has a fatal error, the error will not kill STAFProc.
In addition, this allows monitoring of the external service's system
resource utilization, since you can view the utilization for the new
executable (otherwise, if the service was running within the STAFProc
executable, then the service's resource utilization would be part of
the STAFProc resource utilization).
Note that using the STAFEXECPROXY
library will introduce a level of IPC communication for all service
req rather than STAFProc sending the requests
directly to the service, STAFProc will send the request to the
STAFEXECPROXY library, which will then send the request to the new
executable, which will then send the request to the service (processing
the service result will have the same path in reverse).
So, for external
STAF services where performance is critical, such as the Log and Monitor
services, using the STAFEXECPROXY library is not recommended.
Note that since the JSTAF proxy library already runs the Java STAF service
in a new executable (the JVM), using the STAFEXECPROXY library for Java STAF
services is not supported (if you attempt to register a Java STAF service
using the STAFEXECPROXY library, you will get an RC 27, Service
configuration error).
The EXECUTE option is used to indicate the service library to
execute, or if the
service will be executed by a proxy library, it will be used to indicate
what service executable the proxy library should execute.
For example,
for the Zip service, "STAFZip" would be used for the EXECUTE value.
Perl service, which uses the PLSTAF proxy library, the service .pm module
would be used for the EXECUTE value.
STAFEXECPROXY supports the following OPTIONs
[OPTION PROXYLIBRARY=&ProxyLibrary&]
[OPTION PROXYENV=&Variable=Value&]...
(note that all other OPTIONs will be passed to the service
library / DLL)&#58;
OPTION PROXYLIBRARY=&ProxyLibrary& is used to indicate the proxy
library to use for the
external service.
For example, you would use OPTION PROXYLIBRARY=PLSTAF
for a Perl service.
Note that this OPTION will not be passed on to the
service library / DLL.
OPTION PROXYENV=&Variable=Value& allows you to specify
environment variables that will be set for the STAFEXECPROXY executable (in
addition to or replacing the environment variables that were set when STAFProc
was started).
This allows you to set environment variables for the
STAFEXECPROXY executable without requiring that these environment variables be
set for STAFProc.
This option is particularly useful for Perl STAF services, which on many
Unix platforms require LD_PRELOAD to be set to the libperl library file
However, setting LD_PRELOAD prior to starting STAFProc can
cause incompatibility issues for processes started via STAFProc.
So, you can use OPTION PROXYENV to specify the LD_PRELOAD environment
variable for the STAFEXECPROXY executable, without having it set for STAFProc's
environment.
To "unset" an environment variable, you can set the &Value& to
You may specify any number of PROXYENV OPTIONs.
STAFExecProxy.exe (STAFExecProxy on Unix) is the separate executable for the
external service that will be displayed in the operating system's process
You can determine the PID for the STAFExecProxy executable by
running "HANDLE LIST HANDLES LONG".
You may only run a single external service within a single STAFExecProxy
executable (multiple services that use the STAFEXECPROXY library will each
have a unique STAFExecProxy executable).
SERVICE Zip LIBRARY STAFEXECPROXY EXECUTE STAFZip
SERVICE Device LIBRARY STAFEXECPROXY EXECUTE DeviceService \
OPTION PROXYLIBRARY=PLSTAF
SERVICE getenvvar LIBRARY STAFEXECPROXY EXECUTE \
GetEnvVar OPTION PROXYLIBRARY=PLSTAF OPTION USELIB=/usr/local/staf/services \
OPTION PROXYENV=LD_PRELOAD=/usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE/libperl.so \
OPTION PROXYENV=TESTVAR=abcdef
SERVICE getenvvar LIBRARY STAFEXECPROXY EXECUTE \
GetEnvVar OPTION PROXYLIBRARY=PLSTAF OPTION USELIB=/usr/local/staf/services \
OPTION PROXYENV=LD_PRELOAD=/opt/ActivePerl-5.8/lib/CORE/libperl.so \
OPTION PROXYENV=ANT_HOME= \
OPTION "PROXYENV=MESSAGE=This is a test message"
Service loaders are registered with the SERVICELOADER configuration statement.
SERVICELOADER LIBRARY &Implementation library& &#91;EXECUTE &Executable&&#93;
&#91;OPTION &Name[=Value]&&#93;... &#91;PARMS &Parameters&&#93;
LIBRARY is the name of the shared library / DLL
which implements the service loader or acts as a proxy for the service loader.
information for each service loader to determine the appropriate value
for this option.
EXECUTE is used by service proxy libraries / DLLs to specify what
the proxy library should execute.
For example, this might be the name of
the Java jar file which actually implements the service loader.
option has no significance for non-proxy service libraries.
See the Service Registration
section for information regarding the JSTAF service proxy library.
OPTION specifes a configuration option that will be passed on
to the service loader library / DLL.
This is typically used by service proxy
libraries to further control the interface to the actual service loader
implementation.
You may specify multiple OPTIONs for a given
service loader.
See the Service Registration section
for acceptable options for the JSTAF
service proxy library.
Otherwise, see the documentation provided with the
service (proxy) library.
PARMS specifies optional parameters that will be passed to the
service loader during initialization.
# Default Service Loader Service for LOG, MONITOR, RESPOOL, and ZIP services
SERVICELOADER LIBRARY STAFDSLS
# HTTP Service Loader Service for Java services (for Windows)
SERVICELOADER LIBRARY JSTAF EXECUTE C:/STAF/bin/STAFHTTPSLS.jar \
PARMS "CONFIGFILE http://server1.company.com/project/stafhttpsls.cfg"
# HTTP Service Loader Service for Java services (for Unix)
SERVICELOADER LIBRARY JSTAF EXECUTE /usr/local/staf/lib/STAFHTTPSLS.jar \
PARMS "CONFIGFILE http://server1.company.com/project/stafhttpsls.cfg"
# Custom Service Loader Service written in Java
SERVICELOADER LIBRARY JSTAF EXECUTE C:/STAF/services/CustomServiceLoader.jar
The default service loader service is implemented by library STAFDSLS and
is written in C++.
It can dynamically load the Log, Zip, Monitor, and ResPool
C++ services.
This service loader is configured automatically in the default
STAF.cfg file as follows:
# Add default service loader
serviceloader library STAFDSLS
The HTTP service loader service is implemented by jar file STAFHTTPSLS.jar
and is written in Java and is installed as part of STAF Java support in a typical
installation of STAF.
It can dynamically load any STAF service written in Java.
It can download the jar file for a STAF Java service (or a zip file that contains
the jar file) from a web server or from a file on the local machine.
configuration file to determine what services it can load.
To use the HTTP
service loader service, a Java runtime must be installed and you must add a
SERVICELOADER configuration statement to the STAF configuration file
including a CONFIGFILE parameter specifying the location of the
HTTPSLS configuration file you created for it.
When STAF encounters a request for a service that isn't currently registered,
it checks each service loader that is registered in the STAF configuration file
to see if it handles this service.
The HTTP service loader service reads its
HTTPSLS configuration file (first downloading it from a web server if needed)
to see if it can handle this service.
If so, it downloads the service from the
specified location to a temporary directory on the local machine (and unzips it
if necessary to access the STAF service jar file) and submits an ADD
request to the SERVICE service to register the service.
STAF is able to load whatever Java services you want.
Also, note that each
time the HTTP service loader service attempts to load a service, it reads its
HTTPSLS configuration file, so you can update the HTTPSLS configuration file
and it will read it the next time it attempts to load a service (without
restarting STAFProc).
Note that whenever STAF is restarted, the tmp
directory in the STAF data directory is deleted which means the temporary jar
files that the HTTP service loader service downloaded will be deleted since
they are stored in the STAF tmp data directory's
service/&Serviceloader Name& sub-directory.
The HTTP service loader service can reduce the maintenance for obtaining and
managing STAF Java services by:
Obtaining specified versions of STAF Java services from a web server
instead of having to manually download each service and manually configure the
service in the STAF configuration file on all machines that require the service(s).
Providing the ability to specify a zip file on a web server that contains
a jar file for a STAF Java services (e.g. STAF Java services are provided in
zip files on the SourceForge website) and automatically unzipping the file to
obtain the jar file for the STAF Java service.
Providing the ability to specify where to download STAF Java services from
via a configuration file that resides on a web server as this file only needs
to exist in one place and can be used by many machines.
SERVICELOADER LIBRARY JSTAF EXECUTE &Fully-qualified name of STAFHTTPSLS.jar&
[OPTION &Name[=Value]&]...
PARMS "CONFIGFILE &ConfigFileLocation&
[DOWNLOADATTEMPTS &NumDownloadAttempts&]
[DOWNLOADRETRYDELAY &DelayInSeconds&]"
LIBRARY must always be JSTAF which is the STAF Java
service proxy library (because the HTTP Service Loader is written in Java).
EXECUTE specifies the location of the jar file which implements
the HTTP service loader service.
On Windows, specify
{STAF/Config/STAFRoot}/bin/STAFHTTPSLS.jar.
On Unix, specify {STAF/Config/STAFRoot}/lib/STAFHTTPSLS.jar.
OPTION specifies a configuration option that will be passed to JSTAF
to further control the interface to the JVM where this service loader will be run.
You may specify multiple OPTIONs.
See section
for acceptable options to the JSTAF service proxy library.
For example, you can override the version of Java that you want the HTTP service
loader service to use via the JVM=&Java Path& option when you create
a new JVM by also using the JVMName=&JVM Name& option.
PARMS specifies the parameters that will be passed to the service
loader during initialization where:
CONFIGFILE specifies the location of the configuration file
used by the HTTP service loader service.
This can be a fully-qualified path
to a file on the local machine or it can be a url to the location of the
HTTPSLS configuration file on a web server.
The contents of this file must
follow the syntax specified in section
HTTP Service Loader Service registration will fail.
This parameter is required.
This option will resolve STAF variables.
DOWNLOADATTEMPTS specifies the maximum number of attempts that the
HTTP Service Loader will make to try to download a file.
The default is 3.
This option will resolve STAF variables.
DOWNLOADRETRYDELAY specifies the number of seconds that the HTTP
Service Loader will delay before retrying to download a file if the
previous download attempt failed.
The default is 5.
This option will
resolve STAF variables.
# Add HTTP Service Loader Service on Windows using local HTTPSLS config file
SERVICELOADER LIBRARY JSTAF EXECUTE {STAF/Config/STAFRoot}/bin/STAFHTTPSLS.jar \
PARMS "CONFIGFILE {STAF/Config/STAFRoot}/bin/httpsls.cfg"
# Add HTTP Service Loader Service on Unix using HTTPSLS config file on SourceForge website
SERVICELOADER LIBRARY JSTAF EXECUTE {STAF/Config/STAFRoot}/lib/STAFHTTPSLS.jar \
PARMS "CONFIGFILE http://staf.sourceforge.net/current/STAFHTTPSLS.cfg"
# Add HTTP Service Loader Service on Windows using HTTPSLS config file on a web server
SERVICELOADER LIBRARY JSTAF EXECUTE {STAF/Config/STAFRoot}/bin/STAFHTTPSLS.jar \
OPTION JVMName=HTTPSLS OPTION JVM=C:/java1.5.0_12/bin/java \
PARMS "CONFIGFILE http://server.company.com/project/httpsls.cfg \
DOWNLOADATTEMPTS 3 DOWNLOADRETRYDELAY 7"
Note that you can register the HTTP service loader service multiple times
specifying unique values for the CONFIGFILE parameter.
For example, you may have one HTTP service loader service that downloads STAF
Java services like STAX, Event, Cron, and Email from the SourceForge website
and you may have a second HTTP service loader service that downloads your
custom STAF Java services from your own web server.
The HTTP service loader service is configured through a text file
called the HTTPSLS configuration file.
This file may have any name you
desire and can be located on a web server or on the local machine.
HTTPSLS configuration file is read and processed line by line.
Whitespace
at the front and end of each line is removed before processing.
lines, or lines containing only whitespace, are ignored.
You may continue
a configuration statement onto the next line by placing a "\" as the last
character of the line.
Each service that you want the HTTP service loader service to load must
have a SERVICE entry in the HTTPSLS configuration file.
The syntax
for each service is similar to the SERVICE syntax used when
registering a STAF service in the STAF configuration file.
You specify a comment by placing a pound sign, #, as the first non-blank
character in the line.
Comment lines are ignored.
For example:
# This is a comment line
External Java services are registered with the SERVICE
configuration statement.
The syntax is:
SERVICE &Name& LIBRARY JSTAF EXECUTE &Location of Service Jar or Zip File&
[ZIPPATH &Path to Service Jar File&]
[OPTION &Name[=Value]&]...
[PARMS "&Service Parameters&"]
SERVICE specifies the name of the STAF service to be
registered.
LIBRARY must always be JSTAF which is the STAF Java service
proxy library as the HTTP Service Loader only supports loading Java
EXECUTE specifies the url for the Java jar file which
implements the service.
Or, it can specify the url of a zip file that
contains the Java jar file if the ZIPPATH option is also
specified.
Or, it can specify the fully-qualified name of the Java jar
file that resides on the local machine.
This option will resolve STAF
variables.
For example:
http://server1.company.com/staf/myservice.jar
http://prdownloads.sourceforge.net/staf/STAXV333.zip
C:/STAF/services/stax/STAX.jar
{STAF/Config/STAFRoot}/services/email/STAFEmail.jar
ZIPPATH specifies the path to the service jar file in the
zip file specified by the EXECUTE option.
Note that this
option should only be used if the EXECUTE option specifies
a url for a zip file that can be unzipped using the STAF ZIP service.
This option does not resolve STAF variables.
For example:
stax/STAX.jar
myService.jar
OPTION specifies a configuration option that will be passed
on to JSTAF to further control the interface to the JVM where this
service will be run.
You may specify multiple OPTIONs for
a given service.
See section
options that can be specified for the JSTAF service proxy library.
PARMS specifies parameters that will be passed to the
service during initialization.
# Register the custom SERVICE1 service, downloading it from a web server
SERVICE SERVICE1 LIBRARY JSTAF EXECUTE http://www.company.com/service1.jar
# Register the custom SERVICE2 service, downloading it from a web server
SERVICE SERVICE2 LIBRARY JSTAF EXECUTE http://www.company.com/service2.jar \
OPTION JVMName=SERVICE2
# Register the STAX V3.3.0 service, downloading it from the SourceForge website
SERVICE STAX LIBRARY JSTAF \
EXECUTE http://prdownloads.sourceforge.net/staf/STAXV333.zip \
ZIPPATH stax/STAX.jar \
OPTION JVMName=STAX OPTION J2=-Xmx1024m \
PARMS "EXTENSIONXMLFILE C:/staf/services/extensions.xml"
# Register the Cron V3.3.2 service, downloading it from the SourceForge website
SERVICE CRON LIBRARY JSTAF \
EXECUTE http://server.company.com/staf/CronV332.zip \
ZIPPATH cron/STAFCron.jar OPTION JVMName=CRON
# Register the Email service (which resides in a jar file on the local machine)
SERVICE EMAIL LIBRARY JSTAF EXECUTE C:/STAF/services/email/STAFEmail.jar \
PARMS "MAILSERVER NA.relay.ibm.com \
BACKUPMAILSERVERS \"LA.relay.ibm.com EMEA.relay.ibm.com\""
A sample HTTP Service Loader Service Configuration File is available
on SourceForge that can be used to download the latest versions of
STAF Java services available on SourceForge such as STAX, Event,
Cron, EventManager, etc.
It is located at
http://staf.sourceforge.net/current/STAFHTTPSLS.cfg.
Note that you may need to customize this HTTPSLS configuration file
for the services that you use by changing parameters for some services
(like the MAILSERVER and BACKUPMAILSERVERS parameters
for the Email service) and/or you may need to run some services like STAX
in its own JVM with a larger maximum heap size for the JVM by adding some
Or, you may not use use some of the services so you
may want to remove them, or you may want to download the STAF Java service
zip files and put them on your own web server for faster download times, etc.
Authenticator services are registered with the AUTHENTICATOR configuration statement.
The first Authenticator registered is the default, unless overridden by using the
DEFAULTAUTHENTICATOR operational parameter.
AUTHENTICATOR &Name& LIBRARY &Implementation library& &#91;EXECUTE &Executable&&#93;
&#91;OPTION &Name[=Value]&&#93;... &#91;PARMS &Parameters&&#93;
&Name& is the name by which this authenticator service will be
known on this machine.
The name cannot be "none" as this is reserved for use by STAF.
If you want to authenticate across systems, you must register the authenticator on
each system using the same name (case-insensitive).
LIBRARY is the name of the shared library / DLL which implements
the authenticator service or acts as a proxy for the authenticator service.
See the information for each authenticator to determine the appropriate value
for this option.
EXECUTE is used by service proxy libraries to specify what
the proxy library should execute.
For example, this might be the name of the
Java jar file which actually implements the authenticator service.
This option has no significance for non-proxy service libraries.
Service Registration section for information regarding the JSTAF
service proxy library.
OPTION specifies a configuration option that will be passed on
to the shared library / DLL.
This is typically used by service proxy
libraries to further control the interface to the actual service
implementation.
You may specify multiple OPTIONs for a given
authenticator service.
See the Service Registration section for acceptable options
for the JSTAF service proxy library.
Otherwise, see the documentation
provided with the service (proxy) library.
PARMS specifies optional parameters that will be passed to the
authenticator service during initialization.
AUTHENTICATOR MyAuth LIBRARY JSTAF EXECUTE C:/STAF/services/MyAuth.jar
AUTHENTICATOR AuthSample LIBRARY JSTAF \
EXECUTE {STAF/Config/STAFRoot}\services\AuthSampleV300.jar \
OPTION JVMName=Auth \
PARMS "UserPropertiesFile {STAF/Config/STAFRoot}/services/authsample.properties"
A sample authenticator service is provided by STAF and is available
It is called AuthSample and is available as a jar file called
AuthSampleV300.jar.
To try out user trust, you can register the sample authenticator as
follows (assuming you downloaded it to a services directory created in the
STAF root directory).
AUTHENTICATOR AuthSample LIBRARY JSTAF \
EXECUTE {STAF/Config/STAFRoot}\services\AuthSampleV300.jar \
PARMS "USERPROPERTIESFILE {STAF/Config/STAFRoot}/services/authsample.properties"
LIBRARY must be JSTAF for this sample authenticator
as it is implemented in Java.
EXECUTE must be the fully-qualified name of the AuthSampleV300.jar
This sample authenticator has the following required parameter:
UserPropertiesFile specifies the fully-qualified name of
a file that contains the user identifiers and passwords that this
authenticator supports.
The format of a user properties file must be
that of a Java Properties file.
A property file contains a set of strings.
Properties in a file are declared with the syntax name=value.
name specifies the user identifier and the value specifies its password.
To perform user authentication across systems, the authenticator
must be registered as the same name (case-insensitive) on all machines
where you want to use user trust authentication and with the same
user properties file (e.g. one that supports the same user identifiers
and passwords).
An example of a user properties file is:
# User Properties File for the Sample Authenticator
User1=Password1
User2=Password2
User3=Password3
User4=Password4
User5=Password5
You can specify any user identifiers and passwords that you want
in a user properties file.
However, if you specify any confidential information (e.g. any real
passwords that you want to protect), you should only use the secure
TCP interface so that this information is protected when sent over
the network.
STAFProc allows you to set various parameters which affect the general
operation of STAF.
The SET configuration statement lets you set
these general operational parameters.
SET &#91;CONNECTATTEMPTS &Number&&#93;
&#91;CONNECTRETRYDELAY &Number&&#91;s|m|h|d|w&#93;&#93;
&#91;MAXQUEUESIZE &Number&&#93;
&#91;MAXRETURNFILESIZE &Number&&#91;k|m&#93;&#93;
&#91;HANDLEGCINTERVAL &Number&&#91;s|m|h|d&#93;&#93;
&#91;INITIALTHREADS &Number&&#93;
&#91;THREADGROWTHDELTA &Number&&#93;
&#91;DATADIR &Directory Name&&#93;
&#91;INTERFACECYCLING &Enabled | Disabled&&#93;
&#91;DEFAULTINTERFACE &Name&&#93;
&#91;DEFAULTAUTHENTICATOR &Name&&#93;
&#91;ENABLEDIAGS&#93;
&#91;STRICTFSCOPYTRUST&#93;
&#91;RESULTCOMPATIBILITYMODE &Mode&&#93;
&#91;DEFAULTSTOPUSING &Method&&#93;
&#91;DEFAULTNEWCONSOLE | DEFAULTSAMECONSOLE&#93;
&#91;DEFAULTFOCUS &Background | Foreground | Minimized&&#93;
&#91;PROCESSAUTHMODE &Authentication Mode&&#93

我要回帖

更多关于 怎么样才能变白 的文章

 

随机推荐