re implementation of a restful web client into jsf
play

Re-implementation of a RESTful web-client into JSF Master Thesis - PowerPoint PPT Presentation

Re-implementation of a RESTful web-client into JSF Master Thesis Presentation by Chowdhury Mohammad Ashikur Rahman Overview Motivation Understanding the topic Brief On Case Study Project (Jazz Club Armer Konrad) Problem


  1. Re-implementation of a RESTful web-client into JSF Master Thesis Presentation by Chowdhury Mohammad Ashikur Rahman

  2. Overview ● Motivation ● Understanding the topic ● Brief On Case Study Project (Jazz Club Armer Konrad) ● Problem explanation ● Major Concerns ● Tools ● Solution Strategies ● Implementation ● Measurement ● References ● Demo (live/video) 2

  3. Motivation ● Micro-services → Higher level of abstraction → More component driven than the regular SOA → Solves the SOA monolith SOA vs Micro-services 3

  4. Understanding The Topic 4

  5. Understanding The Topic The topic can be divided into two key parts: ● Extraction of the existing Jazz Club Armer Konrad (JAK) web-client features, and re-implement it in JSF inside the RESTful web server. ● Answering whether this re-implementation solves the SOA monolith. 5

  6. Brief on Case Study Project (J.A.K) JAK Presentation Layer Architecture 6

  7. Brief on Case Study Project (J.A.K) JAK Service Layer Architecture 7

  8. Problem Explanation ● Poor Abstraction of JavaScript → No interface, or abstract class in JavaScript → Leads to additional dependency → May Cause Hard Coupling (violation of SOA/Micro-services Architecture) 8

  9. Problem Explanation ● Light Weight → No expression language (EL) support → No “View” ↔ “Controller” manipulation ● Too much coding → May lead to Code Spaghetti problem when project grows big. ● Less Secure → Client side code exposure → Minor html syntax errors may cost a lot 9

  10. Major Concerns ● Re-implementation view should be identical to the existing view (as much as possible) . ● The new controllers should follow the singularity principle[2]. ● The login service should also support the Role based view. → Authroized transaction 10

  11. Tools & Technologies ● IDE - Netbeans ● Application Server - Glassfjsh ● Version Controlling - SVN in sourceforge.net ● Framework - JSF ● Component – Primefaces ● RDBMS – MySQL ● ORM – Eclipse Link (JPA) ● EJB, CDI, & JSF managed beans ● Glassfjsh JAX-RS client ● Existing – CSS fjles, and Bootstrap. 11

  12. Solution Strategies → Avoiding the Service Layer → Avoiding the JAXB classes 12

  13. Solution Strategies Generalization of the tasks 13

  14. Implementation View: → Creating a common template for all the view fjles. → Adding all the existing design information in the template. → Making the view fjles .xhtml standard → Using Expression Language (EL) to manipulate the object 14

  15. Implementation Controller: → Java Bean Classes → Injects the regarding Entity Service Class (these are not JAX-RS) → Uses EJB for transaction → Contains presentation layer logic 15

  16. Implementation General Overview: → Session based Login logout mechanism → After a successful login, Role based authorization → Insert, Update, Delete, and data view based on Role → Etc. 16

  17. Implementation Transaction work fm fmow - 1 17

  18. Implementation Transaction work fm fmow – 2 (sample) 18

  19. Measurement Comparison with a standard JSF Application [3]: → Is it secure? → Is it responsive? → Is it accessible? → Is it scalable? Image ref: Ebay Logo → …… ... 19

  20. References [1] http://www.oracle.com/technetwork/issue-archive/2015/15-mar/o25architect-2458702.html [2] https://en.wikipedia.org/wiki/Single_responsibility_principle [3] https://blogs.oracle.com/theaquarium/entry/javaone_replay_ebay_and_javaserver [4] Ebay Logo 20

Recommend


More recommend