A Generic Micro Focus Hub REST Service

0 Likes
over 4 years ago

The Micro Focus HubGeneric REST Service is being developed using Jersey, the J2EE reference implementation of the javax.ws.rs namespace.

The service is in early stages of development, currently providing full reading capability of the entire Micro Focus Hub system.

About two dozen REST interfaces are implemented, and more will be developed & provided as requested and desired.

A service .war will be provided upon request to customers interested in developing REST clients (in Java, C#, scripting or any technology of their choice). 

(From the 16.3 Platform, the Service .war will be bundled with the StarTeam SDK)

The service depends upon the latest 16.2 version of the StarTeam SDK available from supportline, and will require the following set of .jar's.

Java JRE 1.8 and the server side jersey REST jar's

starteam 160.jar, starteam160-resouces.jar

ss.jar (if using the SmartSockets Message Broker) OR

activemq-client-5.11.1.jar, geronimo-j2ee-management_1.1._spec-1.0.1.jar, geronimo-jms_spec-1.0.1.jar, hawtbuf-1.10.jar, sl4j-api-1.7.5.jar (if using the ActiveMQ Message Broker)

The service is being developed on top of the StarTeam SDK's web cache object model, which is the basis for all MicroFocus Hub web products, namely,

the StarTeam Web Server, MicroFocus Atlas & Agile.

The service will not run if MPX has not been enabled and configured on the StarTeam server

The service may be deployed in any Java servlet container such as Tomcat or JBOSS.

To run the service, a configuration environment variable called "MicroFocusHubRESTConfiguration" must be created and assigned the path to  an XML configuration file with the following schema.

<?xml version="1.0" encoding="UTF-8"?>
<server>
<hostname>host</hostname>
<port>port</port>
<user>administrativeUserName</user>
<password>administrativePassword</password>
</server>

The <password/> node may contain a clear text password 
Alternately, a passwordFile node may be used to point to the encrypted password file itself
<passwordFile>c://temp//pwdfl</passwordFile>
In this case, the password file needs to contain an 'encrypted' password produced by
the SDK's command line engine
stcmd store-password -password "password" -epwdfile "passwordFilePath"


So, an alternative configuration file would be

<?xml version="1.0" encoding="UTF-8"?>
<server>
<hostname>host</hostname>
<port>port</port>
<user>administrativeUserName</user>
<passwordFile>pathToEncryptedPasswordFile</passwordFile>
</server>

and the value of the environment variable would be

StarTeamRESTConfiguration = "pathToConfigurationFile"

An administrative user name and password must be used for service startup. This user is required to have full privileged access to the entire starteam server, and all data cached in memory is cached in this administrative context. However, users who log in through the REST portal will only be able to access the data they have the right to see.

Once the service is up and running, thin clients, browser clients or rich internet applications may connect/logon using the REST query...

http{s}://host:port/MicroFocusHubRESTService/rest/users/logon?username={user}&password={pwd}

If successful, this query returns a unique session id, which is valid for the life of the user logon session, until the user logs off or times out.

The service can be tested by executing queries directly from a browser, and support both XML and JSON

Labels:

Support Tip
Comment List
Anonymous
Related Discussions
Recommended