Вы находитесь на странице: 1из 6

Spring and Liferay Training

Core Spring
Course Objectives
At the end of the course, you should gain an understanding of Spring and
associated technologies and be able to:
• Develop Java applications using the Spring Framework
• Use Dependency Injection to set up and configure applications
• Test Spring Applications
• Use Hibernate and JDBC with Spring to access relation databases
• Make use of Spring’s support for transactions
• Utilize AOP to add behavior to objects
• Develop web applications – traditional and RESTful
• Secure application with Spring Security
• Use technologies such as RMI, HttpInvoker, Hessian, Burlap and JMS
for remote communication
• Add management with the JMX API

Target Audience
Developers interested in developing applications with Spring

Prerequisites
Experience with developing applications using Java

Course Outline
Part 1
• Introduction to Spring
• Using Spring to configure an application
• Understanding the bean life-cycle
• Simplifying application configuration
• Annotation-based dependency injection
• Testing a Spring-based application

Part 2
• Adding behavior to an application using aspects
• Introducing data access with Spring
• Simplifying JDBC-based data access
• Driving database transactions in a Spring environment

Part 3
• Introducing object-to-relational mapping (ORM)
• Getting started with Hibernate in a Spring environment
• Effective web application architecture
• Getting started with Spring MVC
• RESTful web services with Spring MVC
Part 4
• Securing web applications with Spring Security
• Understanding Spring's remoting framework
• Simplifying message applications with Spring JMS
• Adding manageability to an application with Spring JMX

Rich Web Applications with Spring


Course Objectives
At the end of the course, you should gain an understanding of Spring and
associated technologies for web development and be able to:
• Develop web applications using the Spring Framework
• Use Spring Web Flow to implement stateful interactions
• Secure web applications with Spring Security
• Test web applications for correctness and performance
• Create rich web user interfaces with HTML, CSS, and JavaScript
• Connect a Flex client to a Spring back-end with Spring BlazeDS
• Put it all together with rapid productivity tools like Grails and Spring Roo
• Use the SpringSource Tool Suite and Spring Insight

Audience
Developers interested in developing web applications with Spring

Prerequisites
• Experience with developing application using Java
• Basic understanding of Spring

Course Outline
Spring Web MVC:
• Spring MVC annotation-based programming model
• Page composition with layout technologies such as Tiles
• Rendering multiple content types
• Handling exceptions
• Processing form pages
• Internationalization and personalization

Spring Web Flow:


• Introduction to Spring Web Flow
• Authoring flow definitions
• View states, events and transitions
• Adding flow behavior
• Working with scoped data
• Using the Web Flow integration with JSF
Spring Security:
Securing a web application with Spring Security

Integration With Client Technologies:


• Modern Web UI
• Progressive enhancement, accessibility, web design
• Working with HTML, CSS and JavaScript
• Using a JavaScript framework (Dojo) for DOM scripting and UI widgets
• Integrating Flex clients with Spring applications

Rapid Application Development:


Spring Roo

Liferay Development
Part 1
• Introduction to Liferay
• Introduction to Plugins
• Introduction to the Extension Environment
• Development Strategy
• Set up a Liferay bundle
• Developer Installation
o Setting up Development Tools
o Installing the Plugins SDK
o Installing the Extension Environment
o Overview of Development Environments
o Creating the Projects in Eclipse
o Debugging Liferay in Eclipse

Part 2
Plugins SDK
• Java Standard Portlets
• Inter-Portlet Communication
• Portlets and Web Application Frameworks
• Struts Portlets
• MVC Portlets
o Design Approach
o Service Builder
o Search Container
o Portlet Permissions
o Portlet Preferences
o Validation and Localization

Part 3
• Themes
• Layouts
• JavaScript and jQuery
• Advanced Themes
• Extension Environment
o Using the Extension Environment to Customize Liferay
o Spring in Liferay
• Advanced Topics
o Using Liferay's Web Services
o Additional Features of Portlet 2.0
o Control Panel Portlets

Detailed Account

Part 1
The Liferay Development course begins with an introduction to Liferay,
portals in general, and why it is better to implement your application as part of
a portal framework rather than as a standalone web application. You will see
the benefits of using Liferay as a development platform, because of the many
built-in features and tools you can use to implement your site.

After this, the various Liferay Software Development Kits will be presented.
You will learn the difference between using the Plugins SDK and using the
EXT SDK, and what that means for your project. This will better equip you to
come up with a development strategy that gives you the most flexibility.

Next, you will begin getting your hands dirty by setting up a Liferay bundle
for development. You will install the bundle on your machine and connect it to
a MySQL database. You will also learn how to set up all of the open source
development tools that are necessary to write code for Liferay. Once your
machine is set up, you will then install Liferay's source, the Plugins SDK, and
the Extension Environment, and configure them for your use.

After this, you will install the open source, cross-platform Java IDE called
Eclipse and set the projects up so that you can debug your code within Eclipse.
By the end of the day, you will have a clear notion of how to use Liferay's
SDKs and when it is most appropriate to use each one, and you will be ready
to begin writing code.

Part 2
We jump in with both feet with an introduction to the features of the Java
Portlet API, JSR-286. Using the Plugins SDK, you will write your first portlet
in the first hour of Day 2.
After this, you will explore some advanced features of the JSR-286 API by
creating a project which implements communication between two portlets,
using a Baseball metaphor: one portlet “throws” a pitch and the other
“catches” it. You will see how you could use inter-portlet communication to
implement applications composed of multiple portlets.
After this, you will get a short introduction to using standard web application
frameworks to write portlets in Liferay, and you will create a simple portlet
using the Struts framework. As you will see, you have as much freedom to use
a specific framework in a portal environment such as Liferay as you would
implementing a web application—while all the benefits of operating in a
portal environment come for free.

Next, you will create a complex, data-driven portlet application called the
Library application, which can store Publishers and Books. During the course
of writing this portlet, you will learn how to use Liferay's Service Builder tool
—a code generator which automatically generates Hibernate configuration
files, SQL for creating tables, and code for querying your tables, all from a
single XML file which you will create. You will also get a nice introduction to
tag libraries provided by the Portlet API and by Liferay, and you will use them
to create portlet URLs, Action buttons, and a data-driven, paginating table
using Liferay's Search Container. This will enable you to make your portlets
indistinguishable from portlets provided by Liferay Portal, so that you can
provide a unified interface to your users. After this, you will learn how to
integrate Liferay's permissions system into the portlet so that the data in your
portlet can be secured using Roles in exactly the same way as Liferay's
portlets.

Part 3
From portlets, we then move on to themes and layout templates. You will be
introduced to Liferay's themes, which enable you to completely customize the
way Liferay Portal looks so that your site looks the way you want it to look.
You will learn how Liferay's theming system works, and you will customize a
theme. After this, you will learn how to create layout templates so that
you can customize the containers into which you and your users can drop
portlets. But a theme is more than just its look: you will then learn how to use
JavaScript and jQuery in your themes to provide advanced functionality,
including events and effects. When the section on themes is finished, you will
be able not only to create dynamic themes, but also to provide advanced
features in your themes, such as color schemes, handle differences between
browsers, use Velocity variables and macros, embed portlets in a theme, and
style layouts and portlets from a theme.

Moving on from plugins, you will then learn how to use the Extension
Environment to customize specific features of Liferay Portal. You will
override internal Liferay JSPs, create an action which fires when Liferay
starts, and more. You will also learn how to extend user management in the
Control Panel with custom fields of your own.

Liferay uses the Spring framework extensively. You will see how you can
override Liferay's implementations of specific services with your own, using
Spring to automatically inject your implementation instead of Liferay's. This is
an extremely powerful way to modify Liferay's functionality to be exactly the
way you want it to be.
Any service generated with the Service Builder utility can also be a web
service which can be called remotely. You will see how you can use Liferay's
web services to make remote calls into Liferay for anything from a message
board thread to a full-blown user import utility that can run as a batch process
on a completely separate system.

Finally, you will learn how you can integrate your portlets with Liferay's
Control Panel, so that your users can have a centralized interface for
administering pretty much anything you want them to administer.
You will find when you have completed the course that you are well equipped
to efficiently develop on the Liferay platform.

Вам также может понравиться