Struts Portlet Copyright © 2000-2006 Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written permission.

Slides:



Advertisements
Similar presentations
AppViewXS Installation Infrastructure Overview Web Server Application Server.
Advertisements

1 Copyright © 2002 Pearson Education, Inc.. 2 Chapter 2 Getting Started.
May 13th, Lucek Consulting Basic Java Servlet/JSP Web Development David Lucek Lucek Consulting
Apache Tiles.
Pure Struts web-application header.jsp footer.jsp menu.jsp body … + mybody.jsp layout.jsp struts-config.xml tiles-def.xml classical include in servlet.
Struts Portlet Adding an Action Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without.
MANAGE CONTENT WITH SHAREPOINT. An integrated Web-based system. An integrated Web-based system. Centrally store, manage and access documents using your.
Web Services Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written permission.
JSF Portlet Backing Beans and UI Components Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in.
Short Portlet Programming Guide in P-Grade (Gridsphere) environment G. Hermann.
Apache Struts Technology
A Blackboard Building Block™ Crash Course for Web Developers
Ruby on Rails Model of MVC. Model-View-Controller Paradigm A way of organizing a software system Benefits: Isolation of business logic from the user interface.
Liferay, SSO and LDAP - Integration Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without.
Object-Oriented Enterprise Application Development Tomcat 3.2 Configuration Last Updated: 03/30/2001.
DT211/3 Internet Application Development
Apache Struts Technology A MVC Framework for Java Web Applications.
ECE356 – Database Systems Lab 1 – Building a Web Project with NetBeans Tiuley Alguindigue Lab Instructor – University of Waterloo, E & CE Dept. Fall 2013.
Introduction to Liferay Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written.
Struts Portlet Database Interaction Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without.
Basic Portlet Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written permission.
JSF Portlet Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written permission.
Themes & Layout Tutorial Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written.
Struts 2.0 an Overview ( )
UNIT-V The MVC architecture and Struts Framework.
DAT602 Database Application Development Lecture 15 Java Server Pages Part 1.
End User Administration (in context of Liferay CMS) Copyright © 2006 Liferay, LLC All Rights Reserved. No material may be reproduced electronically or.
M. Taimoor Khan * Java Server Pages (JSP) is a server-side programming technology that enables the creation of dynamic,
WaveMaker Visual AJAX Studio 4.0 Training Studio Overview.
Ext Environment Copyright © 2005 Liferay, LLC All Rights Reserved. No material may be reproduced electronically or in print without written permission.
Transforming the e-Concordiensis Edward Maas Senior Capstone Design Project Advisor: Professor Cass.
Eclipse Overview Introduction to Web Programming Kirkwood Continuing Education Fred McClurg © Copyright 2015, Fred McClurg, All Rights Reserved.
Self Guided Tour for Query V8.4 Basic Features. 2 This Self Guided Tour is meant as a review only for Query V8.4 Basic Features and not as a substitute.
Struts Portlet Redirect Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written.
Chapter 17 - Deploying Java Applications on the Web1 Chapter 17 Deploying Java Applications on the Web.
Guidelines for Homework 6. Getting Started Homework 6 requires that you complete Homework 5. –All of HW5 must run on the GridFarm. –HW6 may run elsewhere.
Web Programming: Client/Server Applications Server sends the web pages to the client. –built into Visual Studio for development purposes Client displays.
JSP Most of the web developers deploying web applications using servlets mixes the presentation logic and business logic. Separation of business logic.
Ext Environment Copyright © 2005 Liferay, LLC All Rights Reserved. No material may be reproduced electronically or in print without written permission.
The DSpace Course Module - Look & Feel Customisation.
JSF Introduction Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written permission.
Basic Setup Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written permission.
Struts J2EE web application framework “ Model 2 ” Model View Controller Controller Servlet Key features XML metadata Struts taglib Simplified form validation.
LDAP Authentication Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written permission.
Copyright © 2002 ProsoftTraining. All rights reserved. JavaServer Pages.
WSRP Portlets Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written permission.
Content Management System Copyright © 2005 Liferay, LLC All Rights Reserved. No material may be reproduced electronically or in print without written permission.
JSP Portlet Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written permission.
Www2.computer.org Web Publishing Training Leo Wadsworth, Staff Manager April 2008.
Preface IIntroduction Objectives I-2 Course Overview I-3 1Oracle Application Development Framework Objectives 1-2 J2EE Platform 1-3 Benefits of the J2EE.
13 Copyright © 2004, Oracle. All rights reserved. Adding Validation and Error Handling.
Database Connection Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written permission.
Basic Portlet Copyright © 2000 – 2007 Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written permission.
Required Tools Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written permission.
Web Site Development - Process of planning and creating a website.
15 Copyright © 2004, Oracle. All rights reserved. Adding JAAS Security to the Client.
2008 Freshmen Java Project Produced by 2008 IDS Freshmen.
10 Copyright © 2004, Oracle. All rights reserved. Building ADF View Components.
APACHE STRUTS ASHISH SINGH TOMAR ast2124. OUTLINE Introduction The Model-View-Controller Design Pattern Struts’ implementation of the MVC Pattern Additional.
Apache Struts Technology A MVC Framework for Java Web Applications.
HR Development Division PA Office of Administration Room 511 Finance Building Harrisburg PA Enterprise Portal Community Management Overview Click.
Required Tools Copyright © 2005 Liferay, LLC All Rights Reserved. No material may be reproduced electronically or in print without written permission from.
Copyright © Liferay, Inc.
Copyright © Liferay, Inc.
Play Framework: Introduction
Unit 6-Chapter 2 Struts.
Introduction to Struts
The Model Layer What is Model?
Add Image and Title to Individual Page
JSF Portlet Message Bundles
Presentation transcript:

Struts Portlet Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written permission from Liferay, Inc.

Objective The goal of this tutorial is to create a Struts Portlet within Liferay 1.Define the portlet –portlet-ext.xml –liferay-portlet-ext.xml 2.Define the page flow and layout –struts-config.xml –tiles-defs.xml 3.Create the JSP –view.jsp

Key Concepts What are the main differences between a JSP Portlet and a Struts Portlet? –struts-config.xml –tiles-defs.xml Instead of forwarding directly to a JSP struts-config.xml – define the page flow tiles-defs.xml – define the page layout

Why use Struts? Struts implements MVC. Although there are other frameworks that implement MVC, Struts is the most widely used and mature technology. What is MVC? MVC separates the presentation code from the business logic code. Struts provides centralized page-flow management in the form of struts-config.xml. This makes it highly scalable and allows you to modularize the coding process. By using Struts, you will be using a number of best practices that have been built into the framework.

Why use Tiles? A page layout is typically designed using include statements. If there are 100 JSPs and the header and footer need to be swapped, all 100 JSPs need to be changed. With Tiles, a single template can be used to determine the page layout. Only the template needs to be changed, and all the pages will be updated accordingly. header footer navig ation main content header footer navig ation main content header footer navig ation main content header footer navig ation main content header footer navig ation main content Template

High Level Overview A URL or URI is passed to the Controller. The Controller determines what page should be displayed. Controller JSP URL

Example How does Liferay determine which JSP is displayed first? Our starting point is portlet-ext.xml view-action Controller MainServlet.java MainServlet *.jsp view-action

Detailed View struts-config.xml path=/ext/library/view forward=portlet.ext.library.view tiles-defs.xml name=portlet.ext.library.view value=/portlet/ext/library/view.jsp view.jsp /portlet/ext/library/view.jsp portlet-ext.xml view-action /ext/library/view

Directory Structure Configuration files are located in this directory: …\ext\ext-web\docroot\WEB-INF JSPs will be placed in this directory: …\ext\ext-web\docroot\html\portlet\ext

portlet-ext.xml EXT_4 Library Portlet com.liferay.portlet.StrutsPortlet view-action /ext/library/view 0

text/html com.liferay.portlet.StrutsResourceBundle power-user user

liferay-portlet-ext.xml EXT_4 ext/library false The struts-path is used to implement security p_l_id=PRI.15.1&p_p_id=EXT_4&p_p_action=1&p_p_st ate=maximized&p_p_mode=view&p_p_col_id=column- 1&p_p_col_pos=5&p_p_col_count=6&_EXT_4_struts_ac tion=%2Fext%2Flibrary%2Fview struts_action=/ext/library/view

EXT_4 ext/library false portlet-ext.xml view-action /ext/library/view

struts-config.xml struts-config.xml defines the page flow What is /ext/library/view? portlet-ext.xml: view-action /ext/library/view What is portlet.ext.library.view? It is the forward that we will use to look up the tiles definition

tiles-defs.xml tiles-defs.xml defines the page layout What is portlet.ext.library.view? From struts-config.xml

What is /portlet/ext/library/view.jsp? For reference: portlet-ext.xml from JSP Portlet Training view-jsp /portlet/ext/jsp_portlet/view.jsp For the JSP Portlet, we pointed to the JSP directly from portlet-ext.xml. For Struts portlets, this is done through tiles-defs.xml

What is portlet? portlet is the template that we will be using (portlet.jsp). See …\portal\portal-web\docroot\WEB-INF\tiles-defs.xml for more information. What is portlet.ext.library ? portlet.ext.library extends portlet. This means that portlet.ext.library will use the portlet.jsp as its template. portlet.ext.library.view extends portlet.ext.library. This means that portlet.ext.library.view will also use portlet.jsp for its template.

Create the JSP The next step is to create the JSP Create a directory called library here: …\ext\ext-web\docroot\html\portlet\ext Your directory structure should now look like this: …\ext\ext-web\docroot\html\portlet\ext\library Create view.jsp in the library directory …\ext\ext-web\docroot\html\portlet\ext\library\view.jsp Finally, enter Simple Struts Portlet! in view.jsp

Deploy the Files to Tomcat Once you have finished modifying all of the files, deploy them to Tomcat Open up a cmd prompt –Click Start, Run and then type cmd Navigate to your ext directory and then type ant deploy …\ext>ant deploy

Check the Tomcat Directory Verify that the files were deployed to Tomcat Go to …\tomcat\webapps\ROOT\WEB-INF and open portlet-ext.xml, liferay-portlet-ext.xml, struts-config-ext.xml and tiles-defs-ext.xml and check to see that the files were deployed correctly. Next, go to …\tomcat\webapps\ROOT\html\portlet\ext\library and open up view.jsp to see that it was deployed correctly

Final Steps 1.Restart Tomcat 2.Open up a new browser and type LOGIN: PASSWORD: test 3.Click Add Content Undefined 4.Click javax.portlet.title.EXT_4

Key Concepts portlet-ext.xml struts-config.xml tiles-defs.xml view.jsp

portlet-ext.xml view-action /ext/library/view struts-config.xml path=/ext/library/view forward=portlet.ext.library.view tiles-defs.xml name=portlet.ext.library.view value=/portlet/ext/library/view.jsp view.jsp /portlet/ext/library/view.jsp

Objectives Now that weve finished building the framework for our portlet, lets move on to the next exercise. In this exercise, we will: Create a new file called init.jsp where we will add commonly used variables and declarations Set the portlet title Add the portlet to a category

init.jsp Create init.jsp in the library directory …\ext\ext-web\docroot\html\portlet\ext\library\init.jsp Enter the following in init.jsp: Add commonly used variables and declarations here! What file are we including with this line? …\portal\portal-web\docroot\html\common\init.jsp This will gives us access to the Liferay tag libraries.

view.jsp Add this line above Simple Struts Portlet! in view.jsp Simple Struts Portlet! This will give us access to the init.jsp located here: …\ext\ext-web\docroot\html\portlet\ext\library\init.jsp Ant deploy. You do not have to restart Tomcat. The following should now be displayed: Add commonly used variables and declarations here! Simple Struts Portlet

Set the Portlet Title Go to Language-ext.properties and add the following line: …\ext\ext-ejb\classes\content\Language-ext.properties javax.portlet.title.EXT_4=Library Ant deploy and Restart Tomcat The portlet title will now be Library

Add the Portlet to a Category Go to liferay-display.xml and add the following line: …\ext\ext-web\docroot\WEB-INF\liferay-display.xml... You will now be able to select your portlet from the Test category

Review of Key Concepts portlet-ext.xml struts-config.xml tiles-defs.xml view.jsp

portlet-ext.xml view-action /ext/library/view struts-config.xml path=/ext/library/view forward=portlet.ext.library.view tiles-defs.xml name=portlet.ext.library.view value=/portlet/ext/library/view.jsp view.jsp /portlet/ext/library/view.jsp

Review of EXT_4 ext/library false Liferay will check the struts-path to check whether a user has the required roles to access the portlet Note: When you see the error message: You do not have the required roles to access this portlet. 1.Check to see that you have defined the roles correctly in portlet-ext.xml 2.Check the to see if you have defined it correctly

Revision History Edward Shin8/28/2006Updated for Liferay Jerry Niu9/5/2006-9/8/2006 Updated copyright, copy edits, liferay-portal-ext slide, final steps slide edit Jerry Niu9/27/2006 Fixed wrong tomcat deploy path