Fabric Web Services properties include the definitions, methods, categories and essential metadata that contribute to the main functionalities and characteristics of the Web Service.
Web Service Properties are located on the top right corner of the Web Service window.
The following are the Web Services properties:
Property |
Description |
Name |
Name of the assigned Web Service function. The assigned name should be meaningful and should have a ws% prefix. |
Category |
Characteristics or class of the Web Service. Note that each category has a separate Java file. |
Return Type |
Type of Output value returned from the Web Service that is displayed in a dropdown list. For example, String, Long, Map, List, Customized Class or Object. Output values in the list can be overridden with new values. Fabric knows how to serialize complex structures automatically when sent as JSON in the request body. |
Version |
Representation of the Web Service’s versioning control status. A version is incorporated into the Web Service’s URL and is used to enable several Web Service versions that are all related to the same service. By default, the version is populated by 1. Versioning Logic
|
Path |
The URL path of the Web Service. The actual name to be called by external applications when using the Web Service. The URL path requires permissions and should be unique per Path / Version / Response Format / Request Format. Web Service Permissions: set on the URL with the parameter **token=** and its value. For example, two Web Services sharing the same URL path:
For example: http://localhost:3213/api/v1/getCustomerInfo?token=t1&format=json&customerId=543; When the above URL is run it invokes wsGetCustomerInfo. When the URL version is modified from v1 to v2, wsGetCustomerInfoDev is invoked. |
Verb |
Methods supported by the Web Service, as follows:
To select a method, click the dropdown list and enable it. Note that at least one method should be selected. |
Is Raw |
Indicates whether the output structure should be manipulated automatically by Fabric. Values are True or False. Default = False. When True, Fabric brings the data response as is without parsing or formatting the response to be aligned with the Web Service's output format. |
Produce |
Web Service’s output format. Default format: JSON Additional formats: XML and CSV. To select the format/s, click the dropdown menu and enable them. |
Serialize null |
If True, display fields with a null value in the response. Else, ignore fields with null values. The default is True. |
Custom Payload |
Indicates whether input parameters are automatically acquired by Fabric from the input stream as defined in the input parameters panel, or if it is to be implemented by the implementor manually. |
Elevated Permission |
Indicates if user permissions should be elevated to the Web-Service or not. Default is set to False. When set to False, this means (for example) if according to the user's role permission he cannot get instance 1 on a given LU, he will not be able to do so also when using the Web-Service. This is so even if the user can execute the Web-Service itself.Added for Fabric release 6.5.3 |
Require Authentication |
Indicates if a Web Service requires authentication or not. Default is set to True. When set to False, it will allow calling the Web Service by skipping the Authentication step. This mode should be used carefully - use it only if a Web Service should be accessible for everyone without enforcing an API key, a user/password, etc.Added for Fabric release 6.5.4 |
Description |
Web Service’s description on Swagger. |
Result Metadata |
Response example to be displayed in Swagger before the Web Service call. Set example-JSON, example-XML and example-CSV. |
To generate these formats, open the Java Logic file and add the following tag above the public class which encapsulates the Web Services defined in the specific Logic category:
```java @legacy public class Logic extends WebServiceUserCode {…}
Then add the UNKNOWN value to the Produce function call in the line where the Web Service is defined:
java @webService(path = "test/getCustomerInfo", verb = {MethodType.GET, MethodType.POST, MethodType.PUT, MethodType.DELETE}, version = "1", isRaw = false, produce = {Produce.UNKNOWN})
Modify the Properties panel of the Web Service with Produce = "UNKNOWN" and Return Type = "Object".
After deploying the Web Service, call it from the browser using the appropriate token, parameter and format.
Example with HTML format:
html http://localhost:3213/api/test/getCustomerInfo?ID=1000&token=tgreg&format=html ``` The response is displayed in the body of the browser's web page:
Fabric Web Services properties include the definitions, methods, categories and essential metadata that contribute to the main functionalities and characteristics of the Web Service.
Web Service Properties are located on the top right corner of the Web Service window.
The following are the Web Services properties:
Property |
Description |
Name |
Name of the assigned Web Service function. The assigned name should be meaningful and should have a ws% prefix. |
Category |
Characteristics or class of the Web Service. Note that each category has a separate Java file. |
Return Type |
Type of Output value returned from the Web Service that is displayed in a dropdown list. For example, String, Long, Map, List, Customized Class or Object. Output values in the list can be overridden with new values. Fabric knows how to serialize complex structures automatically when sent as JSON in the request body. |
Version |
Representation of the Web Service’s versioning control status. A version is incorporated into the Web Service’s URL and is used to enable several Web Service versions that are all related to the same service. By default, the version is populated by 1. Versioning Logic
|
Path |
The URL path of the Web Service. The actual name to be called by external applications when using the Web Service. The URL path requires permissions and should be unique per Path / Version / Response Format / Request Format. Web Service Permissions: set on the URL with the parameter **token=** and its value. For example, two Web Services sharing the same URL path:
For example: http://localhost:3213/api/v1/getCustomerInfo?token=t1&format=json&customerId=543; When the above URL is run it invokes wsGetCustomerInfo. When the URL version is modified from v1 to v2, wsGetCustomerInfoDev is invoked. |
Verb |
Methods supported by the Web Service, as follows:
To select a method, click the dropdown list and enable it. Note that at least one method should be selected. |
Is Raw |
Indicates whether the output structure should be manipulated automatically by Fabric. Values are True or False. Default = False. When True, Fabric brings the data response as is without parsing or formatting the response to be aligned with the Web Service's output format. |
Produce |
Web Service’s output format. Default format: JSON Additional formats: XML and CSV. To select the format/s, click the dropdown menu and enable them. |
Serialize null |
If True, display fields with a null value in the response. Else, ignore fields with null values. The default is True. |
Custom Payload |
Indicates whether input parameters are automatically acquired by Fabric from the input stream as defined in the input parameters panel, or if it is to be implemented by the implementor manually. |
Elevated Permission |
Indicates if user permissions should be elevated to the Web-Service or not. Default is set to False. When set to False, this means (for example) if according to the user's role permission he cannot get instance 1 on a given LU, he will not be able to do so also when using the Web-Service. This is so even if the user can execute the Web-Service itself.Added for Fabric release 6.5.3 |
Require Authentication |
Indicates if a Web Service requires authentication or not. Default is set to True. When set to False, it will allow calling the Web Service by skipping the Authentication step. This mode should be used carefully - use it only if a Web Service should be accessible for everyone without enforcing an API key, a user/password, etc.Added for Fabric release 6.5.4 |
Description |
Web Service’s description on Swagger. |
Result Metadata |
Response example to be displayed in Swagger before the Web Service call. Set example-JSON, example-XML and example-CSV. |
To generate these formats, open the Java Logic file and add the following tag above the public class which encapsulates the Web Services defined in the specific Logic category:
```java @legacy public class Logic extends WebServiceUserCode {…}
Then add the UNKNOWN value to the Produce function call in the line where the Web Service is defined:
java @webService(path = "test/getCustomerInfo", verb = {MethodType.GET, MethodType.POST, MethodType.PUT, MethodType.DELETE}, version = "1", isRaw = false, produce = {Produce.UNKNOWN})
Modify the Properties panel of the Web Service with Produce = "UNKNOWN" and Return Type = "Object".
After deploying the Web Service, call it from the browser using the appropriate token, parameter and format.
Example with HTML format:
html http://localhost:3213/api/test/getCustomerInfo?ID=1000&token=tgreg&format=html ``` The response is displayed in the body of the browser's web page: