|
|
## [Home](https://git.opendfki.de/delight/delight/wikis/Home) | [Documentation](https://git.opendfki.de/delight/delight/wikis/Documentation) | [People / Contact](https://git.opendfki.de/delight/delight/wikis/people)
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
XML-RPC Delight is meant for: All users that want to have their java components connected using a web-based protocol but don't want to waste time with defining the interfaces a second time in another language-independend description format and then generate stubs and skeletons and so on.
|
|
|
|
|
|
XML-RPC Delight is an addon to the XML-RPC specification (http://www.xmlrpc.com/spec) and builds on apache's implementation (http://ws.apache.org/xmlrpc/), version 1.1 (Download here, patched to handle UTF-8, long strings containing control characters and XML markup correctly; transfer full exception stacktrace).
|
|
|
|
|
|
#### Design Objectives
|
|
|
|
|
|
* have java components interact over internet wire with a minimum of programming and configuration effort
|
|
|
* preserve XML-RPC compliance
|
|
|
* make EVERY type XML-RPC transportable with minimal coding effort (ideally, not a single line of extra code!)
|
|
|
* do not interfere with design of remote interfaces. Within the remote calls, one should be able to use any type or interface he wants.
|
|
|
* neither the client nor the server has to be forced to load configuration files or register factories programatically in order to use non XML-RPC compliant types in remote calls.
|
|
|
|
|
|
#### Overview
|
|
|
|
|
|
XML-RPC Delight creates remote clients to java APIs that are supposed to be used remotely. XML-RPC Delight does this at runtime, not at compile time!
|
|
|
In case the API uses types which are not XML-RPC compliant, java annotations and user-defined conversion methods allow for automatic transformation of types to and from a XML-RPC compliant representation. Optimally, one can use non-compliant java classes in XML-RPC calls without having to code a single line of code!!
|
|
|
|
|
|
While all the automatic conversion is done, communication with the server is still XML-RPC compliant so that remote methods can still be called by non-java languages. |
|
|
\ No newline at end of file |