JXTA ist ein Projekt zur Standardisierung von Peer-to-Peer-Anwendungen durch frei zugängliche Protokolle und unter einer Open-Source-Lizenz veröffentlichte Referenzbibliotheken für die Programmiersprachen Java, C und weitere Sprachen. Die JXTA-Projektwebsite definiert JXTA als ein Protokoll, welches die große Rolle der Referenzbibliotheken und Anwendungen vernachlässigt. Die JXTA-Protokolle sind tatsächlich Kern des Projektes, da sie unabhängig von Programmiersprache, Betriebssystem und darunterliegendem Transportprotokoll wie beispielsweise TCP/IP oder Bluetooth die breiteste Anwendbarkeit finden können. JXTA bietet die Möglichkeit, weitere Teilnehmer zu entdecken (discovery), Firewall und NAT zu überwinden (NAT-traversal), sowie auch eigene Dienste für Peer-To-Peer Netze zu entwickeln.
Das Projekt JXTA wurde 2001 durch Sun Microsystems unter der Leitung von Bill Joy und Mike Clary ins Leben gerufen und ist durch eine große industrielle und akademische Gemeinschaft weiterentwickelt worden. Der Name JXTA leitet sich aus dem englischen 'juxtapose' ab, was so viel bedeutet wie „Nebeneinanderstellung“ und spielt darauf an, dass die neuere P2P-Architektur und die ältere Client/Server-Architektur "nebeneinander" existieren sollen. Die Quellen zu JXTA wurden unter einer Sun-eigenen Lizenz veröffentlicht, die auf der Apache Software License Version 1.1 basiert. Sun Microsystems hatte großen Einfluss auf das JXTA Projekt, da Sun Microsystems stets eines der drei Vorstandsmitglieder stellte und auch die aktivsten Entwickler im Projekt im Angestelltenverhältnis führte.
Zwei JXTA-Vorstandsmitglieder werden jährlich von der Community gewählt. Ziel des JXTA-Vorstandes ist es strategische Ausrichtungen am Projekt vorzugeben. Zum Beispiel ist es Ziel des Projektes, die Protokolle durch das Internet Engineering Task Force (IETF) als Internet Standard anerkannt zu bekommen. Dazu soll anhand von prototypischen Netzwerken die Skalierbarkeit, Sicherheit und Interoperabilität von JXTA gezeigt werden.
Im Jahr 2010 stieg Sun Microsystems aus dem Projekt aus. Es wird nicht mehr aktiv weiterentwickelt. Eine Eingliederung in das Apache-Projekt schlug fehl.[1]
Für den Mobil-Markt wird eine besondere Java Referenzbibliothek (JXME) bereitgestellt, die die Java 2 Micro Edition (J2ME) verwendet. Derzeit gibt es drei verschiedene Versionen:
optional, aber trotzdem empfohlen diese zu Implementieren:
JXTA basiert auf einer Architektur mit drei Schichten:
Bei JXTA bilden die Rendezvous-Peers ein Netzwerk untereinander, in dem Advertisements ausgetauscht werden und nach Advertisements gesucht werden kann. Dadurch wächst die Skalierbarkeit von JXTA stark.