When connecting to a relational database, you can generate basic CRUD services with the tables defined in the database. This requires the generation of a metadata document first, representing the structure of the database contents.
Through the WS-AppServer connector you can explore the data dictionary of a relational database and generate such a metadata document listing the definitions of the database tables, the relations between the tables (primary key and foreign key reference), the columns or fields of a table, the datatypes of the columns, the views on the tables, and stored procedures in the database.
Once this metadata document is generated you can decide to generate basic web service operations using DBSQL as the language by which these services are implemented. In this case the implementation of the web services consists of a SQL Select statement to read the data from the database. The standards basic web service operations that are generated by default are:
- Read a single record or range of records.
- Read a next or previous set of records.
- Read a set of records based on the foreign key reference, e.g. read the products related to a specific supplier when the product table contains a referential key to the suppliers table.
- Single update web service operation per table to insert a new record into the table, update or delete an existing record or tuple.
Typically, the DBSQL type of web service operations are used for demonstrating how to gain quick access to any relational database. While developing application, you will in most cases use the next described approach with a WS-AppServer package.
Alternatively, you can use the metadata document to generate a WS-AppServer package first, and next you decide whether to expose the java methods defined in the WS-AppServer package as web service operations. In this case the web service operations are implemented by means of calling a method from the Java classes that are generated through the WS‑AppServer package. Refer to the topic WS-AppServer package for more details.
Java classes or Java archive file
Similar to generating a metadata document on a relational database, you can generate a metadata document on a Java class or Java archive file. The metadata document contains a description of the static methods and their parameters as defined in the class or JAR file. You can explore the static methods and generate web service operations implemented by these methods. When referring to a JAR, you need to specify the complete folder path to the file. When referring to the class file, you only specify the name of the class file (without the “class” extension) while the class path is defined with the CWS (Collaborative WorkSpace) service container in order to be able to read the class file at the given location to build the metadata description in the collaborative workspace.
When the metadata document has been generated, next step will be generating web services based on the listed methods. To be able to run these web service operations, you need to follow the next two steps:
- Associate the web service interface with a service container that includes the WS-AppServer application connector.
- At the service container, provide the same class path as with the CWS service container if a class file was used or the fully qualified JAR file name, i.e. the full path to the JAR file with the file name including the JAR extension.
Note when packaging the project into an application file, neither the java class nor the JAR file is part of the packaged application and you need to make sure that these are stored at a location to be referred to by the class path or the fully qualified JAR file name at the service container running the web services build using the java class metadata details.
Java methods in XPath expressions
You can apply any Java method in an XPath expression in the message map assignments of a business process model, this has been described in one of the Tech Talk blogs of convedo.com, refer to the blog: Using Java methods in a business process model.
List of abbreviations
|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|
|IDE||Integrated Development Environment|
|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|
|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!