Documentation

Trace:

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
applications:custom_errorhandling [2019/08/06 22:40]
admin
applications:custom_errorhandling [2020/07/08 13:14] (current)
cduncan articles
Line 1: Line 1:
 ~~NOTRANS~~ ~~NOTRANS~~
-~~Title: Custom ​error handling~~+~~Title: Custom ​Error Handling~~
  
 The application (ProjX) implements the **IExceptionListener** interface and registers itself as listener: The application (ProjX) implements the **IExceptionListener** interface and registers itself as listener:
Line 13: Line 13:
 </​file>​ </​file>​
  
-All Exceptions ​will be handled in the listener method: ​+All exceptions ​will be handled in the listener method: ​
  
 <file java> <file java>
Line 26: Line 26:
 with the error message and some details (stack trace). \\  with the error message and some details (stack trace). \\ 
 \\  \\ 
-As an example of a custom error handling, we'll show the exceptions directly in the work-screens. So, every work-screen ​should be able to show error messages. To make this possible, we introduce the following interface:+As an example of a custom error handling, we'll show the exceptions directly in the workscreens. So, every workscreen ​should be able to show error messages. To make this possible, we introduce the following interface:
  
 <file java> <file java>
Line 34: Line 34:
 } }
 </​file>​ </​file>​
-and all our work-screens ​should implement the interface, e.g.:+and all our workscreens ​should implement the interface, e.g.:
  
 <file java> <file java>
Line 67: Line 67:
 </​file>​ </​file>​
  
-So, our work-screen ​example contains a new label in the SOUTH area (the bottom of the screen). The label will be hidden initially in **onLoad()**. \\+So, our workscreen ​example contains a new label in the SOUTH area (the bottom of the screen). The label will be hidden initially in **onLoad()**. \\
 Our screen is now ready to show error messages, but our application must be changed. To do this, we need a [[vaadin:​customize_application|custom application]]. Our screen is now ready to show error messages, but our application must be changed. To do this, we need a [[vaadin:​customize_application|custom application]].
  
-Our application contains following code:+Our application contains ​the following code:
  
 <file java MyCustomApplication.java>​ <file java MyCustomApplication.java>​
Line 110: Line 110:
 } }
 </​file>​ </​file>​
-We collect all occurred ​Exceptions ​in a list - **liErrors** - and show one message at the end, see **showErrorMessages**. \\+We collect all occurred ​exceptions ​in a list - **liErrors** - and show one message at the end, see **showErrorMessages**. \\
 \\  \\ 
-In **showErrorMessages**,​ we iterate through all opened ​work-screens ​and check if our interface is implemented. In our example, every work-screen ​has to implement the interface **IErrorHandler**. A better solution would be a custom ​work-screen ​base class, e.g. +In **showErrorMessages**,​ we iterate through all opened ​workscreens ​and check if our interface is implemented. In our example, every workscreen ​has to implement the interface **IErrorHandler**. A better solution would be a custom ​workscreen ​base class, e.g. 
  
 <file java> <file java>
Line 119: Line 119:
 } }
 </​file>​ </​file>​
-and all our work-screens ​should extend this base screen:+and all our workscreens ​should extend this base screen:
 <file java> <file java>
 public class FirstWorkScreen extends MyCustomWorkScreen public class FirstWorkScreen extends MyCustomWorkScreen
 </​file>​ </​file>​
  
-And the result will look like following:+And the result will look like the following:
  
 {{:​applications:​error_screen.jpg?​nolink|}} {{:​applications:​error_screen.jpg?​nolink|}}
This website uses cookies for visitor traffic analysis. By using the website, you agree with storing the cookies on your computer.More information