Jump to content

Apache Pivot: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Zorak1103 (talk | contribs)
m Logo inserted
m convert special characters found by Wikipedia:Typo Team/moss (via WP:JWB)
 
(43 intermediate revisions by 30 users not shown)
Line 1: Line 1:
{{Short description|Open-source platform for building applications in Java}}
{{ Infobox Software
{{One source|date=February 2012}}
| name = Apache Pivot
{{Infobox software
| logo = [[File:Pivot logo.svg|200px|Pivot logo]]
| name = Apache Pivot
| screenshot =
| logo = [[File:Apache Pivot logo.svg|200px|Pivot logo]]
| caption =
| screenshot =
| developer = [[Apache Software Foundation]]
| caption =
| status = Active
| developer = [[Apache Software Foundation]]
| latest release version = 2.0
| latest release date = {{release date|2011|01|10}}
| latest release version = 2.0.5
| latest release date = {{Start date and age|2017|07|08}}
| latest preview version =
| latest preview version =
| latest preview date =
| latest preview date =
| operating system = [[Cross-platform]]
| operating system = [[Cross-platform]]
| size = 20 MB (archived)
| size = 20 MB (archived)
| platform = [[Java platform|Java]]
| platform = [[Java platform|Java]]
| repo = {{URL|https://svn.apache.org/repos/asf/pivot/|Pivot Repository}}
| programming language = [[Java (programming language)|Java]]
| programming language = [[Java (programming language)|Java]]
| genre = [[Rich Internet Applications]] toolkit
| genre = [[Rich web application]] toolkit
| license = [[Apache License]] 2.0
| license = [[Apache License 2.0]]
| website = http://pivot.apache.org
| website = {{URL|http://pivot.apache.org/}}
}}
}}
{{Portal|Free and open-source software}}

'''Apache Pivot''' is an [[open-source software|open-source]] platform for building rich web applications in [[Java (programming language)|Java]] or any [[Java Virtual Machine|JVM]]-compatible scripting language. It is released under the [[Apache License]] version 2.0.
'''Apache Pivot''' is an [[open-source software|open-source]] platform for building [[Rich web application|rich web applications]] in [[Java (programming language)|Java]] or any [[Java Virtual Machine|JVM]]-compatible language. It is released under the [[Apache License]] version 2.0.


==Architecture==
==Architecture==
Its [[class (software)|class]]es are divided in the following categories:<ref name="ov">http://pivot.apache.org/tutorials/platform-overview.html</ref>
Its [[class (software)|class]]es are divided in the following categories:<ref name="ov">[http://pivot.apache.org/tutorials/platform-overview.html Platform Overview {{pipe}} Apache Pivot]</ref>
* '''Core classes''' that enable the classes in the other categories to function
* '''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.
* '''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.
Line 28: Line 30:
* '''Charts''' that allow the software engineer to build interactive [[chart]]s
* '''Charts''' that allow the software engineer to build interactive [[chart]]s
* '''Tools''' that provide utility functionality
* '''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 [[Java Foundation Classes|JFC]]/[[Swing (Java)|Swing]], [[Standard Widget Toolkit|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.<ref>{{Cite web |date=2010-01-21 |title=Apache Pivot brings Java into RIA world |url=https://sdtimes.com/apache/apache-pivot-brings-java-into-ria-world/ |access-date=2022-09-27 |website=SD Times |language=en-US}}</ref> 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 [[Scripting for the Java Platform|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.<ref>{{Cite web |date=24 September 2016 |title=Table Row Editing in Apache Pivot |url=https://alephwebsite.com/ |website=Web Advice}}</ref> 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]] and [[XML]].


==References==
==References==
Line 33: Line 47:


==External links==
==External links==
* [http://pivot.apache.org Apache Pivot Home Page]
* {{Official website|http://pivot.apache.org}}
* [http://www.insideria.com/2009/01/pivot-platform-overview.html Introducing Pivot, Greg Brown]
* [http://java.dzone.com/news/interview-greg-brown-todd-volk Interview: Greg Brown & Todd Volkert from the Pivot Framework, Geertjan Wielenga]
* [http://java.dzone.com/articles/table-row-editing-apache-pivot Table Row Editing in Apache Pivot, Todd Volkert]
* [http://michaelbushe.wordpress.com/2009/12/22/creating-an-executable-apache-pivot-app-using-maven Creating an Executable Apache Pivot App using Maven]
* [http://www.jroller.com/aalmiray/entry/griffon_beyond_swing Griffon: Beyond Swing]
* [http://www.prnewswire.com/news-releases/the-apache-software-foundation-announces-apache-pivot-as-top-level-project-82049997.html The Apache Software Foundation Announces Apache Pivot as Top-Level Project]
* [http://www.sdtimes.com/APACHE_PIVOT_HATCHES_FROM_INCUBATOR/By_Alex_Handy/About_APACHE_and_JAVA/34074 Apache Pivot Hatches from Incubator]


{{Apache Software Foundation}}
{{apache}}
{{Rich web applications}}
<!--- Categories --->


[[Category:Apache Software Foundation projects|Pivot]]
[[Category:Rich Internet Applications]]
[[Category:XML software]]
[[Category:XML software]]
[[Category:Rich Internet applications]]

[[de:Apache_Pivot]]
[[ja:Apache Pivot]]

Latest revision as of 02:09, 28 May 2024

Apache Pivot
Developer(s)Apache Software Foundation
Stable release
2.0.5 / July 8, 2017; 7 years ago (2017-07-08)
RepositoryPivot Repository
Written inJava
Operating systemCross-platform
PlatformJava
Size20 MB (archived)
TypeRich web application toolkit
LicenseApache License 2.0
Websitepivot.apache.org

Apache Pivot is an open-source platform for building rich web applications in Java or any JVM-compatible language. It is released under the Apache License version 2.0.

Architecture

[edit]

Its classes are divided in the following categories:[1]

  • 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 charts
  • Tools that provide utility functionality

WTK

[edit]

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.[2] 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

[edit]

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

[edit]

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.[3] 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

[edit]

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 and XML.

References

[edit]
  1. ^ Platform Overview | Apache Pivot
  2. ^ "Apache Pivot brings Java into RIA world". SD Times. 2010-01-21. Retrieved 2022-09-27.
  3. ^ "Table Row Editing in Apache Pivot". Web Advice. 24 September 2016.
[edit]