XINS is a powerful technology for writing web applications and web services. While the current 2.1 version already sports a lot of functionality and flexibility, here's my wishlist for a 3.0 version:
- Support for Java 5 generics. If this will make the framework Java 5+ only, so be it.
- Support for XML-type parameters, both in and out.
- A XINS service caller engine; a separation between the XINSServiceCaller and the actual protocol used, possibly with a (static, non-final) inner class Engine.
- Provide an alternative front-end calling convention that sports clear URLs, path-based instead of parameter-based.
- Combine multiple function invocations in one call, avoiding the network overhead of multiple calls.
- Multi-implementations: Allow a single API implementation to implement multiple API interfaces.
- Allow API inheritance, so that one API can inherit the functions defined in another.
- After some thorough analysis, apply some secure defaults. E.g. only allow metafunctions to be called from localhost.
- An SMTP caller that supports load-balancing and fail-over (see RFE 1859843).
- A similar SMS caller (see RFE 1864472) that allows the sending of SMSes via different gateways.
Updated December 24, 2007: Added #8.
Updated January 5, 2008: Added #9 and #10.