JXTA & Web Services Gateway




Related Links



Project on sourceFORGE

JXTA Services Description Language


JSDL (JXTA Service Description Language) is for JXTA what WSDL is for Web Services

WSDL describes what the service can do, where it resides and how to invoke it. It is like IDL but has lots flexibilities and extensibilities. WSDL defines binding for SOAP1.1, HTTP GET/POST and MIME. Its descriptions can be made available from an UDDI registry. Axis provides tools like WSDL2Java for generating client stubs and server skeletons for service invocation, development and deployment.

JXTA peers use "MCA" (ModuleClass Adv), "MSA" (ModuleSpec Adv), "MIA" (ModuleImple Adv) and "Pipe" (Pipe Adv) for services advertisements. But, JXTA doesn't define the "format" in which peers talk to each other, SOAP is an XML-based communication protocol and encoding format for inter-application communication. We adopt SOAP as the format of message sent between peers, that is, peers in JXTA can communicate by using SOAP/JXTA.

For developers to describe a JXTA service about what it can do, where it resides and how to invoke it. we create the JSDL (JXTA Service Description Language), the JSDL is originally from the concept of WSDL, everything is the same but the portion about "where the service resides", (<soap:address location=XXXX"/>).

The difficulty for locating a JXTA peer (service), because we peers never know "where" each peer is, There is no way of defining a "URL" for a JXTA Peer, the only way of finding a peer is through searching its advertisements, we're still finding a better solution for the problem. Currently,  we use MSID to describe where the service is. it looks like : <soap:address location=MSID"/>.