HOME

TheInfoList



OR:

Apache Pivot is an
open-source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use and view the source code, design documents, or content of the product. The open source model is a decentrali ...
platform for building rich web applications in
Java Java is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea (a part of Pacific Ocean) to the north. With a population of 156.9 million people (including Madura) in mid 2024, proje ...
or any
JVM A Java virtual machine (JVM) is a virtual machine that enables a computer to run Java programs as well as programs written in other languages that are also compiled to Java bytecode. The JVM is detailed by a specification that formally descri ...
-compatible language. It is released under the
Apache License The Apache License is a permissive free software license written by the Apache Software Foundation (ASF). It allows users to use the software for any purpose, to distribute it, to modify it, and to distribute modified versions of the software ...
version 2.0.


Architecture

Its
class Class, Classes, or The Class may refer to: Common uses not otherwise categorized * Class (biology), a taxonomic rank * Class (knowledge representation), a collection of individuals or objects * Class (philosophy), an analytical concept used d ...
es are divided in the following categories:Platform Overview Apache Pivot
/ref> * Core classes that enable the classes in the other categories to function * WTK classes that provide user interface elements such as buttons and lists. These are built according to the model-view-controller architecture. Most of Pivot's classes are included in the WTK category. * Web classes that enable communication with remote computers * Charts that allow the software engineer to build interactive
chart A chart (sometimes known as a graph) is a graphics, graphical representation for data visualization, in which "the data is represented by symbols, such as bars in a bar chart, lines in a line chart, or slices in a pie chart". A chart can repres ...
s * Tools that provide utility functionality


WTK

WTK or widgets toolkit are the graphical components of Apache Pivot. There are more widgets than in other Java GUI libraries like JFC/ Swing, SWT or JavaFX. The components are based on Java2D and are completely skinnable and support color schemes. The demos "Kitchen Sink" and "Component Explorer" give a complete overview and show the possibilities of interaction. Additionally, it is easy to add and use self-made components because of the open structure. Also part of WTK are the so-called decorators which add graphical effects and even animations to the components.


BXML

In Apache Pivot, the GUI usually is designed using BXML files. BXML is an XML-based markup language for simplifying the construction of Java object hierarchies. While it is most often used to define the user interface of an Apache Pivot application, it is not limited to user interface construction, and can actually be used to create hierarchies of any object type. In the case of Apache Pivot the designer can place the WTK-components and set their properties without writing a single line of Java code. In more complex projects there usually is one class file for each BXML file to hold the logic, though there are other possibilities.


Scripting

Apache Pivot supports all JSR 223 scripting languages to script the BXML files. It is even possible to create an entire Pivot application without any compiled code at all. The script fragments can either be placed inside certain tags directly inside a BXML file, or in external files which get included during runtime.


Non-GUI features

The WTK is just one part of Pivot, but it is a complete rich web application framework. Pivot has its own Collection API (to ease synchronizing the contents to the GUI) and APIs for accessing REST web services and parsing RSS,
JSON JSON (JavaScript Object Notation, pronounced or ) is an open standard file format and electronic data interchange, data interchange format that uses Human-readable medium and data, human-readable text to store and transmit data objects consi ...
and
XML Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing data. It defines a set of rules for encoding electronic document, documents in a format that is both human-readable and Machine-r ...
.


References


External links

* {{Rich web applications Pivot Rich Internet Applications XML software