let's serve your data

50
Let’s serve your data Frank van der Linden

Upload: frank-van-der-linden

Post on 09-Jan-2017

1.132 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Let's serve your data

Let’s serve your dataFrank van der Linden

Page 2: Let's serve your data

About me• Freelance Java and front end developer• Owner of Elstar IT• Try to do some running and mountain biking

Page 3: Let's serve your data

Roadmap• Theory• Prepare• Set up• Develop• Test• Deploy

Page 4: Let's serve your data

Theory

Page 5: Let's serve your data

What is a servlet• Java program to extends the capabilities of a server• Servlets provide a component-based, platform-independent

method for building Web-based applications• Servlets run in web containers, Servlet containers

Page 6: Let's serve your data

Structure and architecture

Page 7: Let's serve your data

Lifecycle

Page 8: Let's serve your data

XAgent - a sort of servlet

Page 9: Let's serve your data

Servlet in NSF• excellent series of Eric McCormick• https://edm00se.io/servlet-series/

Page 10: Let's serve your data

Servlet as OSGi plugin• run server wide• Code can be shared with other processes like DOTS, XPages.• With small changes, it run also on other Java servers, like

Tomcat, WildFly(a.k.a. Boss) and Websphere

Page 11: Let's serve your data

OSGi architecture

Page 12: Let's serve your data

Prepare

Page 13: Let's serve your data

Prepare• Download IDE e.g. Eclipse JEE• Set Target platform• Install PDE Debug plugin• Create com.ibm.notes.java.api project

*See Appendix A for steps to prepare your IDE

Page 14: Let's serve your data

Develop

Page 15: Let's serve your data

goals• Create a Shared code plugin• Create a web app plugin which runs on a Java server• Create a OSGi servlet which run on a Domino server

* See Appendix B for setup projects

Page 16: Let's serve your data

my goals

Page 17: Let's serve your data

Shared plugin

Page 18: Let's serve your data

Domino - Servlet

Page 19: Let's serve your data

Web app - Servlet

Page 20: Let's serve your data

show some code

Page 21: Let's serve your data

Logging• Build in via java.util.logging.Logger

• Log an error to the console….

Page 22: Let's serve your data

Logging• ….log to a file, by adding a (File) handler

Page 23: Let's serve your data

Test

Page 24: Let's serve your data

Test

Page 25: Let's serve your data

Test

Page 26: Let's serve your data

Test

Page 27: Let's serve your data

Test

• tell http quit• load http

Page 28: Let's serve your data

Warning• After testing remove the pre.launch.ini from your workspace

directory of the Domino server

Page 29: Let's serve your data

Deploy

Page 30: Let's serve your data

Deploy• 2 ways of deployment to Domino

• as deployable jar• as an update site.

• Add to web server

Page 31: Let's serve your data

As deployable jar• Export as deployable plugin…

• Put the jar in the correct directory on the server

• tell http quit —> load http

Page 32: Let's serve your data

As update site• Create Feature project, add plugin projects• Create Update site project, add Feature project• Add update site to update site database• tell http quit —> load http

Page 33: Let's serve your data

Deploy to web app

Page 34: Let's serve your data

let’s deploy it

Page 35: Let's serve your data
Page 36: Let's serve your data

Thank you

https://bitbucket.org/flinden68/lets-serve-your-data

Page 37: Let's serve your data

Appendix A

Page 38: Let's serve your data

Target platform

Page 39: Let's serve your data

Target platform

Page 40: Let's serve your data

Target platform

Page 41: Let's serve your data

PDE plugin

Page 42: Let's serve your data

PDE plugin

Page 43: Let's serve your data

PDE plugin

Page 44: Let's serve your data

com.ibm.notes.java.api

Page 45: Let's serve your data

Appendix B

Page 46: Let's serve your data

OSGi Plugin set up

Page 47: Let's serve your data

OSGi Plugin set up (servlet)

Page 48: Let's serve your data

OSGi Plugin set up (servlet)

Page 49: Let's serve your data

OSGi Plugin set up (servlet)

Page 50: Let's serve your data

Web app set up