Skip to main content
Jump to: navigation, search

Scout/Tutorial/5.0/webservices/Create WsLogTablePage

< Scout‎ | Tutorial‎ | 5.0


Scout
Wiki Home
Website
DownloadGit
Community
ForumsBlogTwitterG+
Bugzilla
Bugzilla


Create WS Log Table Page

On the client node, go to Desktop > Outlines > StandardOutline. Right click on the node Child Pages to create a new TablePage.

Create Company Table Page

As page layout, choose AbstractPageWithTable to create a page representing tabular data.

Choose Page Layout

On the next step, enter WS Log as name for that page and choose to add this page to the StandardOutline.

Give Page a name and link it with StandardOutline

By clicking Finish, the page is created and attached to the StandardOutline.

Create columns

On the WsLogTablePage node, go to Table > Columns. Right click on the node to create a new Column.

Create column

Please add the following five columns to that table:

WsLogNrColumn
Type: Long Column
Name: Do not fill because column represents primary key and therefore is hidden
Class name: WsLogNrColumn
DateColumn
Type: String Column
Name: Date
Class name: DateColumn
ServiceColumn
Type: String Column
Name: Service
Class name: ServiceColumn
PortColumn
Type: String Column
Name: Port
Class name: PortColumn
OperationColumn
Type: String Column
Name: Operation
Class name: OperationColumn

To not display the WsLogNrColumn column because of holding the primary key, go to that column in Scout SDK and uncheck Displayable in Scout Property View.

To have the columns equally distributed over the available space of the table page, go to the Table node and check Auto Resize Columns in Scout Property View.

Create service to load WS Log data from database

Finally, we have to populate the table with WS Log data. For that purpose, go to the server node and double click on Outline Services > StandardOutlineService to open the corresponding Java class. In there, create the operation getWSLogTablePageData to load WS log data from database. Also add the operation signature to the service interface IStandardOutlineService to be accessible from client side.

@Override
public WSLogTablePageData getWSLogTablePageData() throws ProcessingException {
  WSLogTablePageData pageData = new WSLogTablePageData();
 
  SQL.selectInto("" + 
      "SELECT WS_LOG_NR, " + 
      "       EVT_DATE, " + 
      "       SERVICE, " + 
      "       PORT, " + 
      "       OPERATION " + 
      "FROM   WS_LOG " + 
      "INTO   :{wsLogNr}, " + 
      "       :{date}, " + 
      "       :{service}, " + 
      "       :{port}, " + 
      "       :{operation} ", 
      pageData);
 
  return pageData;
}

Load WS Log data into WsLogTablePage

On client node, go to the WsLogTablePage to consume the service's data. On the Scout Property View, click on the operation Exec Load Data to populate the WS Log table. Implement the method as follows:

@Override
protected void execLoadData(SearchFilter filter) throws ProcessingException {
  importPageData(SERVICES.getService(IStandardOutlineService.class).getWsLogTablePageData());
}


You can continue the webservices tutorial.

Back to the top