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

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend