Your SlideShare is downloading. ×
Web Application Development
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Web Application Development

209
views

Published on

Published in: Education

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
209
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Web Application Development Introduction to application servers, web applications and portlets Riccardo Rotondo riccardo.rotondo@ct.infn.it Catania, 10/03/2014
  • 2. Outline  Scenario  Application Server  Web Application  Portlet 2
  • 3. Scenario JSR 168/268 JSR 168/268 JSR 168/268 JSR 168/268 Catania Science Gateway Framework GRID CLOUD 3 Local Cluster
  • 4. Web enviroment Application Server (Glassfish) Web application working as Portlet Container (Liferay) Portlet (a custom application designed under users needs)    JSR 168/268 JSR 168/268 4 JSR 168/268 JSR 168/268
  • 5. What is an application server? A software framework designed to host applications running in a web environment Most of them contains a service layer model A set of API is available for the developers to access the application server’s functionalities As long as the management of the environment is demanded to the application server, developers can focus on the business logic.     5
  • 6. Most popular application servers http://plumbr.eu/blog/most-popular-application-servers 6
  • 7. What is a web application? An application accessed over a network Analogy with “common” applications User interact with them through a web-browser A web applications can offer thousands of services: Liferay is a web-application     7
  • 8. Liferay (www.liferay.com)    Highly-configurable, scalable, open source portal framework; Compatible with JSR 168/286 standards and based on modern web 2.0 technologies; Liferay services currently used:    Portal; CMS & WCM; Collaboration and “social” software 8
  • 9. Liferay Plugins      9 Portlets Themes Layouts Hooks Exts
  • 10. What is Porltet ?     10 Defined in the Java Specification Request (JSR 168/286) A porlet is a web component able to set a frame portion of a web page. Differently from Servlet it needs a Porltlet Container to allow the user to interact with it. Standard Portlet can be deployed in any Porlet Container in case they will use standard libray.
  • 11. Generic Porlets Life Cycle YES NO End of Services? 11
  • 12. Generic Porltlets Interface Method Class GenericPortlets { init (PortletConfig); processAction (ActionRequest, ActionResponse); render (RenderRequest, RenderResponse); destroy(); doView (Request, Response); doEdit (Reuqest, Response); doHelp (Request, Response); } 12
  • 13. Portlet Mode A porltet works in three different states.  View Mode: generate a markup ( a portion of a web page);  Edit Mode: allow portlet customisation and setting preferences.  Help Mode: explains portlet functionalities.  13
  • 14. Action Request Action Request view.jsp processAction() Action Request edit.jsp 14 Render Request doView() edit.jsp doEdit() view.jsp Render Request processAction()
  • 15. Render Request Render Request view.jsp 15 doView() view2.jsp
  • 16. Portlets   Standard JSR168/286 Interaction between jsp pages and java code Application Server (Glassfish) JSP page <jsp:useBean <form … > Java code Class <you portlet> Extends GenericPortlet … <input … /> </form>   JSP uses <form… statements to send parameters to Java code Java code extends class GenericPortlet overriding methods:  Init, doView, doHelp, doEdit, processAction Java code uses 2 Classes to exchange data from/to JSPs  16
  • 17. Portlet files (root) build.xml Used by ‘ant’ to compile and deploy the portlet docroot/ WEB_INF/ css/ images/ js/ jsp_page_1.jsp … jsp_page_n.jsp 17 Define here JSP’s styles JSP image files JavaScript files Portlet JSP pages
  • 18. Portlet files (docroot) WEB_INF/ glassfish-web.xml web.xml lib/ Job/ liferay-display.xml liferay-plugin-package.properties liferay-portlet.xml portlet.xml src/ <package_name>/code.java tld/ 18 Used to define database and other resources settings Jar Library directory (local scope) Job files (Custom dir) Portlet configuration files Java source files XML structure file
  • 19. 19
  • 20. Building environment     20 Get Liferay with Glassfish Customising Liferay installation (database connection) Get Liferay plug-in SDK Configuring Netbeans (optional)
  • 21. Deploying first portlet       Understanding ant scripts Creating “hello world” portlet Understanding portlet files Compiling porltet Deploying porlet Understading portlet management on the server 21
  • 22. References      Liferay: https://www.liferay.com Liferay Bundles: https://www.liferay.com/downloads/liferay-portal/availablereleases Liferay Plugin SDK: https://www.liferay.com/downloads/liferayportal/additional-files Netbeans: https://netbeans.org Netbeans liferay plugin: https://contrib.netbeans.org/portalpack/ 22
  • 23. Questions ? 23