"We've got some process automation cleanup to do but that aside JXTA 2.3 is 'out the door.' The announcement is not yet available in the archives and as such I'll inline the doc here ... pretty impressive."
"Community Members,
We are pleased to announce the availability of JXTA J2SE 2.3 "Jambalaya". A lot of progress has been made in this release and there is a lot to be excited about! The JXTA Jambalaya release provides significant functional enhancements of the JXTA J2SE platform, some important performance and scalability improvements, along with a number of important bug fixes. Please see for more information about what's new.
This release is designed to be API and protocol backwards compatible with other JXTA J2SE 2.x releases. This release is recommended for all JXTA users, developers and deployers.
The JXTA J2SE Release Team
...New Features & Significant Changes
====================================================================
* Refactored Endpoint Service for Performance and Scalability
* Enhanced PSE Membership Service
* Enhanced Configuration -- NAT detection
* Refactored Rendezvous Service for Performance and Scalability
* Shell Cleanup
Enhancements to the Endpoint Service
------------------------------------
The old endpoint service implementation tried to provide the illusion that infinitely large messages could be sent in parallel between arbitrary peers. Other services were also forced to write special purpose code such as messenger caches to overcome these limitations.
The new design renounces the illusion of infinite datagrams in favour of clarity of purpose in the code, true scalability and generally better performance. New API functionality is available for application developers to write more scalable services and applications.
Enhanced PSE Membership Service
-------------------------------
The PSE Membership now uses regular Java KeyStores for storing all certificates and keys, it has a new listener API for monitoring credential expiry and authentications, and it now has full support for certificate chains. The login UI has changed slightly to allow for the entry of separate keystore and key passphrases.
Enhanced Configuration -- NAT detection
---------------------------------------
The ext:config (net.jxta.ext.config) library now includes functionality for live probing of NAT configuration. It does this by contacting a server which attempts to perform a reverse connection. This probing enables better automatic configuration of peers.
Performance and Scalability
---------------------------
The Rendezvous Service received a major refactoring to improve code clarity, reliability and scalability. The new Rendezvous Service takes advantage of the new Endpoint Service in order to make more efficient use of resources. It also sends fewer messages between peers to maintain the peerview and process propagations.
Shell Cleanup
-------------
The Shell and a large number of the commands have received cleanup. It's now a lot more clear and simpler to write your own shell commands or figure out how to use JXTA by examining how the Shell commands work. The Shell also now includes a status line which helps determine the real-time state of the network.
Downloading and Installing
====================================================================
Prebuilt JXTA J2SE 2.3 builds can be installed from :
* JXTA 2.3 download
You can also build from cvs :
cvs -d:pserver:guest@cvs.jxta.org:/cvs co -r JXTA_2_3_00 \
platform shell security cms myjxta2
Each module has an Apache Ant build.xml file located in the 'binding/java/' directory. You can build each module with the following commands:
% cd security/binding/java
% ant dist
These commands should be repeated for each module. Some of the modules depend upon other modules being built first. Build the modules in the following order: security, platform, shell, cms, myjxta2.
The following wiki page provides simple instructions for building JXTA using Ant:
* Building JXTA 1-2-3
Known Incompatibilities between JXTA 2.3 and prior JXTA 2.x releases
====================================================================
A number of deprecated APIs have been removed in this release. See the "Impacts to Developers" section below for details.
Impacts to Current Users : LOW
====================================================================
JXTA J2SE 2.3 should a drop in replacement for any application currently using JXTA J2SE 2.2.1 or 2.2
Impacts to Developers : MEDIUM
====================================================================
The following deprecated APIs were removed in JXTA 2.3
* net.jxta.util.config package
* EndpointFilterListener
* EndpointMessenger
* net.jxta.JxtaUtilities
* Endpoint.newMessage
* Endpoint.newEndpointAddress
* PipeService.createMessage
Pay careful attention to the deprecation messages generated when compiling your application. JXTA J2SE 2.3 introduces several new deprecations. The next planned release (Yaprakh) will remove some interfaces which have been deprecated since JXTA J2SE 2.1 :
* JxtaTimer
* RdvMonitor
* RdvManager
* SimpleRdvManager
* net.jxta.util.*Utilities
* SimpleRdvMonitor
Avoid ever importing any symbols from the net.jxta.impl.* packages. The classes and methods in these packages may (and will) change from release to release, sometimes drastically and *no* effort will be made to retain compatibility of programs which depend upon "impl" packages. YOU HAVE BEEN WARNED!
If there is no alternative available to importing from "impl", please file an issue against the platform so that an alternate mechanism can be developed.
With the next release (Yaprakh) the Membership service will no longer automatically present the login dialog at startup. Application will be required to perform authentication based upon their own needs. See: http://wiki.java.net/bin/view/Jxta/NoAutoLogin and http://wiki.java.net/bin/view/Jxta/PasswordTopic for more info.
Impacts to Deployers / Rendezvous Managers : LOW
====================================================================
This release includes significantly improved performance and stability for the rendezvous and relay peers. Rendezvous operators should plan on upgrading to JXTA J2SE 2.3 as soon as possible. JXTA J2SE 2.3 should be a drop in replacement for JXTA J2SE 2.2 releases.
Before restarting rendezvous/relays you should clear your cm directory. (It can also be argued that rdv/relays may benefit from doing this with every restart).
Issued Closed During JXTA 2.3
====================================================================
160 ENHANC RDV service accepts to serve queries from non clients
223 ENHANC Peerview aggresive mode until safe
266 ENHANC Null rendezvous service
428 DEFECT How to use specific RendezVousMonitor
520 ENHANC RendezvousService needs to protect against stale messenger
592 ENHANC Self promoted Rendezvous should self demote
612 ENHANC Intentional rdvs can be auto-demoted to edge peers
761 ENHANC Edge peers do not log out of RDV upon group shutdown
845 DEFECT Rendezvous loses edge peer abilities in discovery.
943 ENHANC RPM target for ant
963 DEFECT NullPointerException in BTree
990 PATCH Adhoc Rendezvous Implementation
994 DEFECT no make target to create ext jar; test/Makefile fails
996 DEFECT ProxyService Requestor sends Message on closed Messenger
997 ENHANC Add explicit service dependency in startApp()
1002 ENHANC Remove deprecated Endpoint methods
1010 FEATUR Patch for autoconfiguration of peers and replacement
1014 ENHANC Add PropertyChangedListener to Membership and Cred
1017 DEFECT Propagation of relay advs is broken
1036 ENHANC Enhanced PSE functionality
1037 ENHANC JXTA PSE key store to implement jce KeyStoreSpi
1038 ENHANC Cm enchancements for raw byte data
1039 PATCH Update library jars to current versions.
1040 PATCH Add Serialization support to Message
1046 ENHANC StdPeerGroup to manage CM for use by multiple services
1057 DEFECT Proxy doesn't advertise Peer
1059 DEFECT JxtaSocket and IOException
1061 DEFECT Incorrect Handling of Threshold element
1062 PATCH Add Serialization to MimeMediaType
1063 DEFECT ConfigDialog appears upon boot if endpoint is loopback
1064 DEFECT ext:config permits transports w/o addresses
1065 PATCH Login fails if principal name contains 2 consecutive
1066 ENHANC Disable Pipe Service in World Peer Group
1070 DEFECT Empty Elements don't work in LiteXML
1071 ENHANC Improved Performance for StringMessageElement
1072 DEFECT Proxy doesn't start new service in subgroup
1073 TASK remove deprecated net.jxta.util.config pkg
1074 TASK add install.xml, remove bootstrap/tag/etc from build.xml
1075 DEFECT NPE during endp listener removal
1076 PATCH hashCode in ext.config.Address
1077 PATCH Minor changes to ext.config.Transport
1078 PATCH Minor changes to ext.config.Protocol
1079 DEFECT Need to set "lazy checkpoint" as the Cm default mode
1081 DEFECT StringMessageElement failure
1082 PATCH ext:config improvements
1083 DEFECT Spelling corrections in platform
1084 DEFECT ext:config reports exceptions in log
1085 DEFECT ext:config uri special char encode/decode
1086 DEFECT ext:config Trace.get(String) always returns Trace.ERROR
1087 DEFECT incorrect parsing of params in several services
1088 ENHANC minor cleanups for WireFormatMessageBinary
1089 ENHANC Threadgroup for cm
1090 DEFECT Assignment in QueryDestinationMetric as no effect
1091 DEFECT Better toString() for RendezvousEvent
1092 ENHANC Better discovery service rdv event/state interaction
1093 ENHANC Rendezvous Service Refactored
1094 ENHANC Improve handling of TCP ServerSocket.
1095 DEFECT TimeUtils.AbsoluteTimeMillis( 0 ) generates bad value
1096 DEFECT Configurator dialog always showing
1097 ENHANC Improvments to PeerAdvertisment diagnostics
1098 DEFECT Generic PeerGroup redundantly calls clearSrdi
1099 PATCH Resolve net.jxta.util.config deprecation
1100 ENHANC URI Extensions for ID and EndpointAddress
1101 DEFECT NPE in DiscoveryResponse
1102 DEFECT remove ext:service from jxtaext.jar, make src configurabl
1103 DEFECT ext:config - profile enabler field typo, scheme typo
1104 DEFECT The 'run' target of build.xml is broken.
1106 DEFECT cm delta caching broken
1108 ENHANC Narrow exception for IDFactory.fromURI()
1109 ENHANC Remove deprecations and improve diagnostics in Srdi
1110 DEFECT Blocking Msgr self destruct mechanism conter productive
1111 ENHANC Primitive SignedAdvertisement Feature
1112 DEFECT http generates wrong urls with IPV6 addresses
1113 DEFECT router getmessenger timeout too short
1114 DEFECT expensive toString at warn level
1115 PATCH rm bogus "myproxy.mydomain:8080" from ext:config
1116 DEFECT Regression: Cm delta tracking mechanism leaks memory
1118 DEFECT Insufficient cleanup after failure to start group
1119 DEFECT AdvertisementUtilities makes incompatible impl adv
1120 DEFECT RelayClient may cache discovery service when still null
1121 DEFECT Restore PSE Autologin functionality
1122 DEFECT None Membership Service does not initialize PCL Support
1123 DEFECT Perform PSE Initialization when configuring via properties
1125 DEFECT Hidden Exceptions generated during failed newNetPeerGroup
1126 ENHANC Don't Srdi Replicate Propagate Pipe entries or propagate
1127 DEFECT blocking msngr channel uses protected method from ctor.
1128 DEFECT RuntimeException at dequeueMessage()
1130 ENHANC remove deprecations for peergroup
1131 ENHANC StringMessageElement cleanup
1132 ENHANC boot program cleanup
1133 ENHANC Removes broken cygwin and javadoc support from Makefile
1134 DEFECT First message of un-resolved messenger remains unsend
1135 ENHANC remove deprecations from DiscoveryQuery/Response
1136 DEFECT package Endpoint in test
1137 PATCH Remove deprecations in ResolverServiceImpl
1138 DEFECT enable relay client if any transport has incoming disabled
1139 DEFECT Can't open TLS connections
1140 DEFECT NPE in Router
1141 DEFECT NonBlockingOutputPipe migrate too aggressive
1143 DEFECT Multicast resolution no longer function on edge peers
1144 DEFECT ListenerAdaptor does not support more than one listener
1145 DEFECT Possible to create infinite nb of channels and messages
1146 ENHANC Move getParentGroup() from RefPeerGroup to PeerGroup
1147 DEFECT RdvConfigAdv written without type attribute by ext:config
1149 DEFECT Rdv Seeding can produce peerview islands
1150 DEFECT Un-named Thread
1151 DEFECT Failure in router
1152 ENHANC Better debug info when upgrading PSE config
1153 ENHANC Diagnostic improvements in GenericPeerGroup
1154 DEFECT Nagle ON in Tcp transport has perceptible effect.
1155 DEFECT Raise TTL of wire pipe messages back to 200
1156 DEFECT tcp incoming server does not terminate promptly
1157 DEFECT Input Pipe is removed if a duplicate is attempted
1158 DEFECT Tcp connection needs an output buffer
1159 DEFECT TcpConnection shows stack for non-error at info level
1160 DEFECT metering initialization broken in rdv
1161 DEFECT relay messengers survive the client lease
1162 DEFECT Resolver assumes that rendezvous.walk does a propagate
1163 DEFECT StdPeerGroup.initFirst causes NPE if group ID is null
1165 DEFECT router makes transport connection to self
1166 DEFECT TTL problem in Limited Range Walk
1167 DEFECT EndpointRouter.findReachableEndpoint fails
1169 PATCH When saving a document in the cm it is possible
1170 DEFECT ext:config port detection fails for any/all transports
1172 DEFECT A Rendezvous peer always repropagate a message of ttl 1
1173 DEFECT Propagate pipes do not work in pure ad-hoc
1174 DEFECT JxtaSocket should throw an IOException when specifying
1177 DEFECT ext:config PC gen order processing
1178 DEFECT NPE in JxtaSocket when establishing TLS connection
Known issues in JXTA 2.3
====================================================================
For a complete list of known issues follow the link:
* JXTA 2.3 issues
Full change log @
Sun Blogs