Difference between revisions of "Integration/REST"

From TempusServa wiki
Jump to navigation Jump to search
old>Tvi
old>Tvi
Line 67: Line 67:
Data list operations: GET, PUT  
Data list operations: GET, PUT  


  https://<server>/<application>/rest/<solution>
<syntaxhighlight lang="ini">
https://<server>/<application>/rest/<solution>
</syntaxhighlight>


Data item operations: GET, POST  
Data item operations: GET, POST  


  https://<server>/<application>/rest/<solution>/<DataID>
<syntaxhighlight lang="ini">
https://<server>/<application>/rest/<solution>/<DataID>
</syntaxhighlight>


'''Note: The fowllowing file handling endpoints are scheduled for Q2 2020'''
'''Note: The fowllowing file handling endpoints are scheduled for Q2 2020'''
Line 77: Line 81:
File list operations: GET, PUT  
File list operations: GET, PUT  


  https://<server>/<application>/rest/<solution>/<DataID>/<FieldName>/
<syntaxhighlight lang="ini">
https://<server>/<application>/rest/<solution>/<DataID>/<FieldName>/
</syntaxhighlight>


File item operations: GET  
File item operations: GET  


  https://<server>/<application>/rest/<solution>/<DataID>/<FieldName>/<ID>
<syntaxhighlight lang="ini">
https://<server>/<application>/rest/<solution>/<DataID>/<FieldName>/<ID>
</syntaxhighlight>

Revision as of 15:08, 8 March 2021

Introduction to the REST interface

This article has not yet been fully converted to Wiki format.

Please download the original article: Tempus Serva REST interface.pdf


Netbeans quick start guide

Steps to create a simple interaction

  1. Add Webservice to ide (wadl import)
    • URL: [ServerName]/[ApplicationName]/rest/[SolutionSystemName].wadl
    • If import causes trouble: Download the wadl file
  2. Create a new project
    1. Add REST Client to project
      • Point to newly created webservice: [SolutionSystemName]
    2. Add JAXB bindings to project (use XSD schema)
      • URL: [ServerName]/[ApplicationName]/rest/[SolutionSystemName].xsd
      • If import causes trouble: Download the xsd file


Sample code for list view (BASIC athentication)

//Create session
FirmabilerClient session = new FirmabilerClient();
session.setUsernamePassword("admin", "password1223");

//Set search parameters (first parameter is a dummy)
FirmabilerList result = session.getList(FirmabilerList.class, "", "TITEL=Kasper" );

//Retrieve data and print
List <FirmabilerListItem> list = result.getFirmabilerListItem();
for(int i=0; i<list.size(); i++) {
    //Handle single item
    FirmabilerListItem item = list.get(i);
    System.out.println( item.getDataID() + "\t" + item.getNUMMERPLADE() );
}

//Close connection
session.close();

Sample code for list view (parameter credentials)

//Create session
FirmabilerClient session = new FirmabilerClient();

//Login and set search parameters 
FirmabilerList result = session.getList(FirmabilerList.class, "admin", "password1223", "TITEL=Kasper" );

//Retrieve data and print
List <FirmabilerListItem> list = result.getFirmabilerListItem();
for(int i=0; i<list.size(); i++) {
    //Handle single item
    FirmabilerListItem item = list.get(i);
    System.out.println( item.getDataID() + "\t" + item.getNUMMERPLADE() );
}

//Close connection
session.close();

URL structure

When logged in the following URLs are available without further authentication

Data list operations: GET, PUT

https://<server>/<application>/rest/<solution>

Data item operations: GET, POST

https://<server>/<application>/rest/<solution>/<DataID>

Note: The fowllowing file handling endpoints are scheduled for Q2 2020

File list operations: GET, PUT

https://<server>/<application>/rest/<solution>/<DataID>/<FieldName>/

File item operations: GET

https://<server>/<application>/rest/<solution>/<DataID>/<FieldName>/<ID>