Changes for page Validation

Last modified by Danniar Firdausy on 2024/09/19 08:56

From version 27.7
edited by Danniar Firdausy
on 2024/09/19 08:56
Change comment: There is no comment for this version
To version 23.1
edited by eMagiz
on 2022/06/10 12:28
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.dfirdausy
1 +XWiki.eMagiz
Default language
... ... @@ -1,1 +1,0 @@
1 -en
Content
... ... @@ -1,8 +1,13 @@
1 1  {{container}}{{container layoutStyle="columns"}}(((
2 -In the previous microlearning session, we covered how to configure a REST service. Now, we will focus on validating the data structure of incoming messages to ensure they meet the required format. This includes how to handle errors when validation fails and how to notify the client about these issues. By the end of this microlearning, you’ll understand how to implement validation for REST endpoints effectively
2 += Validation =
3 3  
4 +In the previous microlearning, we learned how to configure a REST service. In this microlearning, we will discuss how you can validate whether the party calling your REST endpoint is sending the correct information in terms of the structure of the message. We will also learn how you can subsequently report back to the client that a validation error occurred.
5 +
4 4  Should you have any questions, please get in touch with [[academy@emagiz.com>>mailto:academy@emagiz.com]].
5 5  
8 +* Last update: September 8th, 2021
9 +* Required reading time: 5 minutes
10 +
6 6  == 1. Prerequisites ==
7 7  
8 8  * Intermediate knowledge of the eMagiz platform
... ... @@ -10,12 +10,15 @@
10 10  == 2. Key concepts ==
11 11  
12 12  This microlearning centers around validating incoming messages when hosting a REST web service.
13 -* With REST, we mean: A web service that adheres to the RESTful principles.
14 -* With validation, we mean: Verifying whether the data structure we received is valid according to our definition.
18 +With REST, we mean: A web service that adheres to the RESTful principles
19 +With validation, we mean: Verifying whether the data structure we received is valid according to our definition
20 +
15 15  * The external application pushes data to a REST web service (or API) hosted by eMagiz
16 -** When doing so, the external application should adhere to the defined data structure
17 -** If not, we need to refuse the call and respond with an error message
22 +* When doing so, the external application should adhere to the defined data structure
23 +* If not, we need to refuse the call and respond with an error message
18 18  
25 +
26 +
19 19  == 3. Validation ==
20 20  
21 21  In the previous microlearning, we learned how to configure a REST service. In this microlearning, we will discuss how you can validate whether the party calling your REST endpoint is sending the correct information in terms of the structure of the message. We will also learn how you can subsequently report back to the client that a validation error occurred.
... ... @@ -36,23 +36,30 @@
36 36  
37 37  if (exists(//err:xml-validation-exception)) then 'validation' else if (exists(//err:exception[@class='org.springframework.integration.MessageTimeoutException'])) then 'timeout' else ''
38 38  
39 -== 4. Key takeaways ==
40 40  
41 -* External applications must follow the defined data structure when sending information to a REST web service (or API) hosted by eMagiz.
42 -* If the incoming data does not meet the required structure, the request should be rejected, and an appropriate error message should be sent back to the client.
43 -* eMagiz automatically handles much of the validation process when using the API Gateway, simplifying error management and reporting.
44 -* For messaging flows, additional configuration is needed to replicate the same validation and error-handling functionality.
45 45  
46 -== 5. Suggested Additional Readings ==
49 +== 4. Assignment ==
47 47  
48 -If you are interested in this topic and want more information on it please read the help text provided by eMagiz when executing these actions and read the following links:
51 +Navigate to a flow within your (Academy) project in which you host a REST Webservice.
52 +Ensure that when a validation error is thrown, eMagiz will return a proper response to the client.
53 +This assignment can be completed with the help of the (Academy) project that you have created/used in the previous assignment.
49 49  
50 -* [[Crash Courses (Menu)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.WebHome||target="blank"]]
51 -** [[Crash Course Messaging (Navigation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Messaging.WebHome||target="blank"]]
52 -*** [[Filter (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Messaging.crashcourse-messaging-filter||target="blank"]]
53 -* [[Intermediate Level (Menu)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.WebHome||target="blank"]]
54 -** [[REST Connectivity (Navigation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.REST Connectivity.WebHome||target="blank"]]
55 -*** [[Configuration REST web service (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.REST Connectivity.intermediate-rest-webservice-connectivity-configuration-gen3.WebHome||target="blank"]]
56 -* [[Host REST web service (Search Results)>>url:https://docs.emagiz.com/bin/view/Main/Search?sort=score&sortOrder=desc&highlight=true&facet=true&r=1&f_space_facet=0%2FMain.&l_space_facet=10&f_type=DOCUMENT&f_locale=en&f_locale=&f_locale=en&text=%22host+REST+web+service%22||target="blank"]]
55 +== 5. Key takeaways ==
57 57  
57 +* The external application pushes data to a REST web service (or API) hosted by eMagiz
58 +* When doing so, the external application should adhere to the defined data structure
59 +* If not, we need to refuse the call and respond with an error message
60 +* eMagiz auto generates a lot when using the API Gateway
61 +* You need to recreate this when using the same functionality in a messaging flow
62 +
63 +
64 +
65 +== 6. Suggested Additional Readings ==
66 +
67 +If you are interested in this topic and want more information, please read the help text provided by eMagiz.
68 +
69 +== 7. Silent demonstration video ==
70 +
71 +Please check out the store for a working example for a messaging solution.
72 +
58 58  )))((({{toc/}}))){{/container}}{{/container}}