JavaServer™ Faces technology is provided by the Java Community Process (JCP) under JSR-314. It defines a standard MVC framework based on component-driven user
interface (UI) model for Web development. JSF helps to separate the
different roles involved in the development of a Web application,
namely the application developer, who
focuses on the business logic, the component
developer, responsible for connecting the back-end logic with the
user interface, and the page author,
responsible for the application’s UI.
With JSF, developing JViews
Diagrammer Web applications is easier as the client-side UI is
created by connecting well-defined components together while the
system handles the required client-- and server-- side hurdles
automatically.
The JViews Diagrammer
JSF Web technology consists of:
- The tag libraries (a set of JavaServer™ Pages - JSP™ tags)
- A server-side Java API
- The JavaScript library
The tag libraries
The tag libraries are used to build JSP
pages; each tag represents a component with a set of configurable
attributes. These components are compiled into Java code that is
executed on the server-side to produce or manipulate content for
the page; each component is also represented by a set of
dynamically generated JavaScript objects on the client-side, to
handle display and client-server communication. Not all
components have a visual representation; interactors, for
example, are associated with graphic views and are responsible
for data manipulation rather than displaying content.
The basic infrastructure of the JViews Web
technology has the following libraries:
JViews Core, which has the following
tag identifier http://www.ilog.com/jviews/tlds/jviews-faces.tld
JViews Framework, which has the
following tag identifier
http://www.ilog.com/jviews/tlds/jviews-framework-faces.tld
The JViews
Diagrammer features provide an additional tag library:
JViews
Diagrammer, which has the following tag identifier
http://www.ilog.com/jviews/tlds/jviews-diagrammer-faces.tld
The URIs uniquely identifying the JViews
Web technology tag libraries are for identification purposes
only, these are not live URIs.
These libraries describe the following
components:
- debugDependencies: an auxiliary component to help identify unresolved JSP dependencies
- imageButton: an interactive component that can be associated with a customized action
- menu: an auxiliary component that defines a menu model to create pop-up menus
- contextualMenu: a component that creates pop-up menus on a graphic view
- menuItem: the auxiliary component that represents a menu item in a pop-up menu
- menuSeparator: the auxiliary component that represents a simple separator in a pop-up menu
- messageBox: a visual component that allows the display of text messages to the user
- view: the graphic view, displays an IlvManagerView in the Web browser
- dashboardView: a graphic view, displays an IlvDashboardDiagram in the Web browser
- diagrammerView:a graphic view, displays an IlvDiagrammerin the Web browser
- overview: an auxiliary display component, used in conjunction with the graphic view
- objectSelectInteractor: an interactor for selecting and moving graphic objects in a graphicview
- objectSelectRectInteractor: an interactor for selecting and moving a set of graphic objects in a graphic view
- nodeOrLinkSelectInteractor: an interactor that triggers a server-side action when selecting a node or link in a diagram view
- nodeOrLinkSelectRectInteractor: an interactor that triggers a server-side action when selecting a group of nodes and/or links in a diagram view
- selectInteractor: an interactor that allows you to select objects in a diagram view, using a unique technique that reduces the amount of data exchanged with the server
- selectionManager: an auxiliary component for the selectInteractor providing customization of the selection graphic representation
- panInteractor: an interactor for panning the graphic view
- zoomInteractor: an interactor for zooming on a given rectangular region in the graphic view
- panTool: an auxiliary navigational component, used in conjunction with the graphic view
- zoomTool: an auxiliary navigational component, used in conjunction with the graphic view
The server-side Java API
The JSF components in the JViews
Diagrammer Web technology rely on Java servlets to handle the
client requests and produce the appropriate response. A client
request is triggered by the Web page, when manipulating the
diagram view; it can be the result of a direct user input
requesting a view update, or an asynchronous request,
indirectly sent as part of an interaction.
The servlets are responsible for decoding the client request
and processing the appropriate response, which may be a new
image update representing the current state of the diagram view
(IlvSDMView).
For more information about the different servlets available and
how to extend and/or customize them, see JViews servlet implementation.
The JavaScript library
Each JViews
Diagrammer JSF component in the tag library is internally
represented by a JavaScript object on the client side. These
objects are dynamically generated by the server as part of the
basic infrastructure of the Web application. These objects
provide great flexibility as they can be directly manipulated
by the user as a way to fine-tune the behavior of the JViews Diagrammer JSF
components, or as a way to integrate them with third-party
JavaScript libraries and custom code.
For more information about the different JavaScript objects and
their API, see JViews JSF applications versus JViews
JavaScript applications and the JavaScript API reference
documentation reference documentation.