Developing exteNd Director Applications
CHAPTER 1
This chapter provides an overview of Novell exteNd Director. It contains the following sections:
Novell exteNd Director is a set of software development tools and programming APIs for building state-of-the-art enterprise applications. exteNd Director provides all of the technologies you need to build Web applications that present a relevant view of business functions to any user on any device. exteNd Director also provides the tools you need to consume Web Services, including those created with exteNd Composer.
The exteNd Director application architecture supports many ways of building user views of business functions. For example, by taking advantage of the user profiling and content management features provided with exteNd Director, you can ensure that individual users see information that is most relevant to their needs. In addition, you can use the workflow features of exteNd Director to model business processes, and rules to model business decisions. exteNd Director applications can satisfy the hardware requirements of a wide range of users, including conventional desktop users as well as those accessing Web content from wireless devices.
exteNd Director applications typically include a portal Web site. The portal is the presentation layer for an exteNd Director application, providing the interface through which users get to the Web content they want to see.
To give you a head start in building applications, exteNd Director provides a default project called Express Portal, which is a complete portal application based on the standard exteNd Director project template. You can use this application out of the box to:
Build your own customized production-quality portal by adding and modifying portlets and pages and customizing the presentation layer.
The exteNd Director application architecture supports a wide range of deployment configurations, as shown in the following diagram.
exteNd Director supports several industry standards, including the following:
exteNd Director is a J2EE-compatible platform for building and deploying enterprise-class applications. The J2EE specification defines the required levels of support that compliant application servers must provide, as well as a programming model for applications that will be deployed to the application server. Applications are deployed into a J2EE-compliant application server as J2EE modules. A J2EE module is a collection of components packaged in an archive. exteNd Director applications are deployed in the following kinds of archives:
exteNd Director is fully compliant with the Java Portlet 1.0 Specification which defines the portlet standard.
A portlet is a specialized Java class that processes requests from Web clients and generates dynamic content on a portal page. You can think of portlets as pluggable user interface elements that provide a presentation layer for portal applications. Users can personalize the content and appearance of portlets, based on preferences set by an administrator.
exteNd Director provides an environment for developing XForms 1.0-compliant Web forms. The advantages of the XForms standard include:
A powerful event model (so that you don't have to use a lot of scripting for client-side validation or calculations)
exteNd Director includes a set of core technologies called subsystems. Each exteNd Director subsystem is a logical grouping of a set of software services. Each service is a Java class that implements a particular interface defined for exteNd Director applications. The subsystems support a services-oriented architecture, which means that you can extend or replace the individual services included with each subsystem. The exteNd Director subsystems can be deployed separately, or can be combined together to form an integrated solution. When you create an exteNd Director project, you select the subsystems your application requires.
The exteNd Director subsystems include several prebuilt user interfaces, as well as comprehensive APIs that let you build J2EE applications from the ground up.
exteNd Director includes the following subsystems:
exteNd Director provides a complete development environment, as well as several prepackaged Web tiers (Web applications) that you can run within a browser.
At its lowest level, the exteNd Director development environment is a file-system based toolset that includes these utility tools and facilities:
Designers and modelers for building pageflows, portlets, rules, and workflows
Graphical and text-based editors for working on Java files, JSP files, XML files, XSL files, CSS files, WSDL files, HTML files, plain text files, and deployment descriptors
Wizards that help create new files when needed and guide you through complex technologies (such as J2EE)
Web Service facilities for developing, publishing, finding, and running Web Services
Project views that show the structure of a project's source files and the structure of a project's generated archives
Project tools for building projects, generating and validating J2EE archives, and deploying archives to supported J2EE servers
Version control integration that provides access from the exteNd Director development environment to your version control system
exteNd Director includes some prebuilt Web tiers. Each Web tier is a Web application that you can use immediately after deploying your exteNd Director project. Each of the Web tiers runs in a browser.
exteNd Director includes the following Web tiers:
These tools are intended for use by application developers, system administrators, and content developers respectively.
Internally, these Web tiers use the services of a number of exteNd Director subsystems, including the Framework, Portal, User, Directory, and Content Management subsystems.
When you install exteNd Director, you get an Express Portal application that you can run immediately. You do not need to deploy the application from the exteNd Director development environment to use it. You can simply start your browser and begin using the application right away.
For more information on using the Express Portal, see the chapter on the Express Portal in the Portal Guide.
The Director Administration Console (DAC) provides support for administrative tasks such as configuring parameters, managing security access to portal objects, inspecting portlets, pages, and styles, and managing user profiles.
For more information on using the Director Administration Console, see About the Director Administration Console.
The CMS Administration Console provides an interface for setting up and maintaining the infrastructure for a content management system. The CMS Administration Console allows you to create, edit, secure, and publish HTML and XML content for your portal applications.
For details on using the CMS Administration Console, see the Content Management Guide.
To write Java code for exteNd Director applications, you use exteNd Director API classes in your Java code and call their methods. The exteNd Director API provides public classes (and interfaces) organized into several packages, which themselves are organized by subsystem.
The exteNd Director API is based on the Java 2 APIs (J2SE and J2EE). That means it includes classes that inherit from Java 2 classes and implement Java 2 interfaces. If you're familiar with the Java 2 APIs, you'll have a good foundation for understanding and using the exteNd Director API.
For more information on using the exteNd Director API, see Coding Java for exteNd Director Applications.
An exteNd Director application is packaged in a single exteNd Director EAR or WAR file. You can create a new project for the EAR or WAR by running the exteNd Director Project Wizard in the development environment. Alternatively, you can simply open the project for the Express Portal in the development environment and begin working in that project.
If you're new to exteNd Director, you might want to begin by using the Express Portal application right away.
You can run the Express Portal application as soon as you finish the installation process. The Express Portal provides a set of Web-based tools you can use to customize the application. For example, you might want to create user pages and shared pages, and then add some predefined portlets to these pages.
If you install the exteNd suite using the Express or Custom install, the Express Portal project is added to your suite install directory. You can then open the project in exteNd Director and customize it with your own business logicfor example, by adding new portlets, portal pages, and other Web resources such as JSPs and servlets.
Here are the general steps you need to follow to build your application within the Express Portal project:
For installation instructions, see Installing Novell exteNd.
Open the Express Portal project in exteNd Director.
To access the Express Portal project in exteNd Director, see the section on opening the Express Portal project in the Portal Guide.
Add any objects you need for your application within this project. For example, you might want to add pageflows, forms, and portlets to the application.
NOTE: If you installed the exteNd suite using the Express install option, the Express Portal is deployed to the exteNd Application Server at installation time and ready to run. To get started, see the section on starting the Express Portal application in the Portal Guide.
For instructions on deployment, see Deploying exteNd Director Applications.
Dynamic loading and the resource set exteNd Director provides a special location called the resource set that manages application resources you create. The resource set can hold definitions for pageflows, portlets, rules, styles, and other objects required for your application to function properly. The resource set can also hold Java classes that you implement. When you make changes to items in the resource set, you do not need to redeploy the application, since these resources are loaded dynamically.
If you decide to create a new project, you need to run the exteNd Director Project Wizard. This wizard lets you select the subsystems you want to use and specify configuration properties for these subsystems. After you've finished making your selections, the wizard creates a project that includes the J2EE modules you need for your application.
Once you've run the wizard, you can add additional application-specific J2EE modules to the project. You can also add or remove subsystems or make any other necessary changes to the structure and content of the EAR or WAR, just as you would with any J2EE application.
When you're ready to deploy the application, you can use the deployment tools provided in the exteNd Director development environment to deploy the EAR or WAR to one or more servers.
Here are the general steps you need to follow to create and deploy an exteNd Director application in a new project:
For installation instructions, see the Installing Novell exteNd.
If you will use the Search subsystem, configure the Autonomy DRE.
Create a new database for your exteNd Director application, and if your JDBC driver expects it, define an ODBC data source name (DSN) for your newly created database. exteNd Director uses a default name of exteNd Director for the data source, but you can use your own name.
This database holds exteNd Director tables that contain data required by several of the subsystems.
On a Novell exteNd Application Server, this can be different from the deployment database. A typical scenario is to deploy the exteNd Director application to the SilverMaster database, and provide a separate database for the exteNd Director data.
For instructions on creating the database, see your DBMS documentation.
Create a new exteNd Director EAR or WAR project using the exteNd Director Project Wizard with an exteNd Director template.
For instructions, see Creating an exteNd Director project.
Set up dynamic loading so that you can test application resources without frequent redeployments.
For instructions, see Dynamic loading of resources and classes.
Do the required deployment setup for your server. Some setup is done in exteNd Director; for the rest, you use your server's tools.
For instructions, see Deploying exteNd Director Applications.
Copyright © 2004 Novell, Inc. All rights reserved. Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC. All rights reserved. more ...