Nuxeo World Session: GWT Integration


Published on

Presentation from Nuxeo World.

Published in: Technology, Education
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Nuxeo World Session: GWT Integration

  1. 1. GWT IntegrationHow to integrate Nuxeo with GWTStefanescu Bogdan 1
  2. 2. Why GWT?● GWT is for Java developers, not webmasters● Easy to develop and debug ● write, debug and reload in Eclipse ● very short development time compared with JSF● Very clean design of web applications ● Decoupled from server - Stateless● Nuxeo is already integrated with GWT IDE● GWT is Google! And is quite good 2
  3. 3. Wonderful! Why not GWT then?● GWT is monolithic - best suited for vertical applications● GWT applications are not indexable ● In GWT you create rich applications, not websites!● GWT applications are very slow to compile ● But you can gain time in development● GWT doesnt fit well in a modular server- side framework like OSGi 3
  4. 4. But I Love GWT!● Then these slides are for you! :)● Nuxeo already provides 2 web frameworks: ● JSF-based for building web apps ● WebEngine for building websites● Where does GWT fit? ● Somewhere in the middle -- for building vertical applications● To integrate it as a web framework, Nuxeo needs to provide some GWT support 4
  5. 5. Ok. So what is  the problem?● GWT is not modular at runtime: ● Modularity is compile-time based ● You cannot drop a new GWT plugin and have the changes reflected in your web application without recompiling the entire GWT stack, and restarting the server● We want to reuse layout logic already implemented on the server side 5
  6. 6. Solutions● Two possible solutions ● Re-implement a Layout Manager for GWT to reuse the layout definitions registered on the server side – This is not the best solution since it involves re- writing the same code on the GWT side and doesnt solve the modularity problem ● Write a server side template system for GWT applications – This solves both the problems – ● the Nuxeo Layout Manager is providing GWT the templates it needs ● Because web pages are generated by the server, we also 6 have modularity
  7. 7. Server­Side Templating● As weve seen, server-side templating may satisfy both requirements ● The problem is that server side templating doesnt provide full modularity ● Templates are indeed modular - but if you need to install a new GWT widget (e.g. java code) you still need to recompile your application● But anyway this is a start … ● Ive already implemented this in an open source project. See: 7
  8. 8. Lets see a demo!Do you have any other solutions? 8
  9. 9. Thank you! 9