OpenText and Metastorm

The OpenText Process Suite ABC Glossary - WS AppServer Package part 2

Reference: Product versions and details in this article may have changed since publication.

WS AppServer Package

Finally, you can generate a web service interface on the WS‑AppServer package and thus make the java methods available as web service operations. The SOAP checkbox property of a method defines whether a web service operation will be generated and thus the method will be exposed as a web service operation or not.

By default, for each model (table or view) a single update web service operation is generated to insert a new record into the table, update or delete an existing record or tuple.

In the WS-AppServer package, you can make changes to the models, the attributes, the properties of the attributes, and the methods. In addition to the standard methods that are generated with the package itself, you can define your own methods. You can generate the signature of this method, this will only create the skeleton of the Java method in the extension class file. In this case, you need to add the relevant java source code to implement the method. Or you can refer to any available attribute(s) to automatically generate the associated Java source code in the base class file to implement the method. For example, as a standard method a get operation is already generated for selecting customers by their primary key. In addition, you can generate another method to select the customers for a specific country using the “country of residence” attribute. In this case the method is added to the base class file since the related Java source code is generated by the platform.

The extension class file contains the related Java source code in order to implement the functionality of the additional methods. Typically, the IDE Eclipse is used to modify the Java source code as saved in the extension class. Do not edit or add code in the base class files as the contents of these class files are overwritten any time you regenerate the Java source code of the associated models.

As a good practice, you create a basic WS-AppServer package directly related to the metadata document of the relational database to generate the basic functionality and make that only available as Java methods, while no web service interface is generated on the basic WS-AppServer package methods. The basic java methods are thus not exposed as web service operations. The basic java classes are compiled into a “basic” JAR file.

Next, you create another empty WS-AppServer package to contain your own custom models that will be based on the models defined in the basic WS-AppServer package. The custom models and their methods are implemented by using the generated basic methods of both the basic and custom WS-AppServer package and adding any other Java source code you develop in the extension classes of the custom package. The custom java classes are compiled into a “custom” JAR file. Note that with the “custom” JAR file, you create a dependency to the “basic” JAR file containing the implementation of the set of basic methods. These custom java methods are then made available by generating the web service interface to these methods. For each java method, you can use the SOAP checkbox property to decide whether the method is made available as web service operation.

This effectively creates two layers, the basic layer through which you communicate with the back end application while in the business process models, you only apply the custom web service operations. Using this kind of layering of your methods and web service operations enables you to abstract your process from the actual implemented back end application i.e. the data model of the related data sources. This allows you to easily change the back end application and redefine the basic layer while the business process models are not effected (and do not need to be updated) as these only communicate with the web service operations of the custom layer.

List of abbreviations

Abbreviation Description
ANSI American National Standards Institute
BAM Business Activity Monitoring
BER Business Event Response
BPML Business Process Modeling Language
BPMN Business Process Modeling Notation
BPMS Business Process Management Suite (or System)
CAF Composite Application Framework file extension
CAL Composite Application Logging (framework)
CAP Cordys / Composite Application Package (file extension)
CARS Cordys Admin Repository Server
CMC Cordys Management Console
CRUD Create, Read, Update and Delete, data manipulation operations with a    relational database
CWS Collaborative Work Space
DTAP Development, Testing, Acceptance and Production
ESB Enterprise Service Bus
HW HardWare
IDE Integrated Development Environment
IP Internet Protocol
JAR Java ARchive file extension
JVM Java Virtual Machine
KPI Key Performance Indicator
LDAP Lightweight Directory Access Protocol
OMG Object Management Group
OTPS OpenText Process Suite
PIM Process Instance Manager
PMO Process Monitoring Object
RDBMS Relational DataBase Management System
SCM Software Configuration Management
SCXML State Chart XML
SOA Services Oriented Architecture
SOAP Simple Object Access Protocol
SQL Structured Query Language
SSU State Sync-Up
SVN SubVersioN
SW SoftWare
W3C World Wide Web Consortium
WfMC Workflow Management Coalition
WSDL Web Service Definition Language
WSI Web Service Interface
WSO Web Service Operation
XML eXtensible Mark-up Language
XPDL XML Process Definition Language

Don't miss out on future blog posts! Subscribe to email updates today!

Back to Insights