Once the address is found, you can safely interact with the server using SOAP over HTTP.
Le 30 mai 05 � 22:19, Francesco Munari a �crit :
I'm alredy using UDDI4j. The idea is that I don't know where the UDDI registry can be in the LAN. I assume that the client knows only two things: 1) the network (of course) 2) a "search key" for a particular tipe of service and that's all. The client should send a broadcast SOAP (or XML-RPC) request containing the search method to call on the server with the "key" passed as a parameter and somewhere into the LAN should be a server (or more) with its private UDDI registry that should reply with a response containing the result of the invoking of the method contained in the sender's RPC request. The response should contain just the URL of the WSDL file related to the service found. The need of the broadcast message is that the client don't know where (or if) there could be any UDDI registry in the network. With this framework a client can change network configuration (for example, going from a floor to another with a Palm in a wireless LAN) and, after leaving the service provided in the first network, find anothe one similar on the other network only by pressing the button "Refresh" :) Francesco 2005/5/30, Martin Gainty <[EMAIL PROTECTED]>:The side effect of a broadcast without authentication is flooding the network with unwanted disovery packetsI guess this is OK if you're utilising a high datarate transmission i guessIn your case your SOAP Request should look like <?xml version="1.0"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" > <SOAP-ENV:Body> <getTest> <Test>Test</Test> </getTest> </SOAP-ENV:Body> </SOAP-ENV:Envelope> If you want to discover a "SOAP based" web-service based on some characteristic such as Business Service Category why not use UDDI4J? Take a look at http://sourceforge.net/projects/uddi4j Martin- ----- Original Message ----- From: "Francesco Munari" <[EMAIL PROTECTED]> To: "Martin Gainty" <[EMAIL PROTECTED]> Cc: <[email protected]> Sent: Monday, May 30, 2005 12:44 PM Subject: Re: SOAP-over-UDP Martins, It is for this reason that I'd like to broadcast a SOAP request instead of a simple XML-RPC message. The goal of my framework is to keep the "context awareness" offered by XML language.If you are sure that there is no way to send a broadcast SOAP request,the last solution, I think, it could be XML-RPC. So, two questions: 1) are you sure ther's no way to send a broadcast SOAP request? 2) In order to send a broadcast XML-RPC message I've to cerate a StringWriter like this (for example)? <?xml version="1.0" ?> <methodCall> <methodName>getTest</methodName> <params> <param> <value> <string>Test</string> </value> </param> </params> </methodCall> Thank's Martin. Francesco 2005/5/30, Martin Gainty <[EMAIL PROTECTED]>:Francesco-You can Broadcast XML-RPC assuming you dont mind flooding your network The question is can you confine your application to using the more basicdatatypes supported by XML-RPCvs implementing SOAP features (user-defined datatypes, namespace URI)?Anyone else? Martin- ----- Original Message ----- From: "Francesco Munari" <[EMAIL PROTECTED]> To: "Martin Gainty" <[EMAIL PROTECTED]> Cc: <[email protected]> Sent: Monday, May 30, 2005 6:45 AM Subject: Re: SOAP-over-UDP Grazie! :) Could someone tell me if a simple XML-RPC message may be sent to abroadcast address? A simple message with the medthod to be invoked. In this way I should be able to send a broadcast XML-RPC request with the appropriate UDDI inquiry method; a server (containing a UDDI registry)should receive it, invoke that method and send a reply in XML format to the sender. It could be a good idea? thank you again! Francesco 2005/5/29, Martin Gainty <[EMAIL PROTECTED]>:benvenuto! Martin- ----- Original Message ----- From: "Francesco Munari" <[EMAIL PROTECTED]> To: <[email protected]> Sent: Saturday, May 28, 2005 5:41 PM Subject: Re: SOAP-over-UDP Thank you all for your very quick reply! I've heard about this SOAP-over-UDP spec(http://msdn.microsoft.com/library/default.asp?url=/library/en- us/dnglobspec/html/soap-over-udp.asp). So, Martin, you say that it could not be a solution? Perhaps it shouldbe an idea using Mark's solution (with DNS). I thought to resolve the problem putting a SOAP envelope into a UDP datagram, send the datagram to a broadcast ip and that's all folks...but I don't know how and, as you, Martins, wrote, I was not able to find anybody who has implemented this yet. Can you suggest me another solutions? Thank you very much again!! Cheers, Francesco 2005/5/28, Martin Gainty <[EMAIL PROTECTED]>:Mark/FrancescoI would caution on use of UDP as the SOAP Portocols (e.g. HTTP) is/aredecidely not UDP but instead a connection-oriented TCPTo date I have not seen UDP Ports used for SOAP transmission althoughsincethere is no requirement for verifiable connection and or handshakes I would venture to guess UDP is available as the transmission mediumbut I have not seen any UDP Ports used for SOAP thus far Anyone else ??? Ciao- Martin- ----- Original Message ----- From: "mdonaghue" <[EMAIL PROTECTED]> To: <[email protected]>; "'Francesco Munari'" <[EMAIL PROTECTED]> Sent: Saturday, May 28, 2005 3:14 PM Subject: RE: SOAP-over-UDPHi Franceso,I've worked briefly with the apache soap api, not that familiar withit. Typically a soap message is sent to a single soap server address, which is specified by a url or an ip address, as well as a port. So your serveraddress on the LAN might be something like 192.168.100.2:8080. (I'mnot surewhat the port is for UDDI, so just using standard TomCat Web Serverport).IIRC, you there's a point at which you specify that address in thesetup foryour soap call. One thing you could try is to change the address tothesubnet's broadcast address, 255.255.255.0:8080, assuming a class cnetworkwhere the first 3 quads specify the network portion of the submask.However, this may not a scalable solution, since the broadcast wouldn't carry beyond the physical subnet on which you are located. Using UDDI to discover services is one thing, but dynamically discovering UDDI servers isobviously a different problem. It also doesn't address the issue ofmore than one UDDI server running on the same subnet. A more generalized solution might involve a distributed ip lookup service, namely DNS. For example when DNS looks up the ip address of Yahoo.com, at some point the actual ip address that serves the request is dynamically assigned to one of dozens (or hundreds) of servers based on a scheduling scheme. You could locally enable DNS lookup, and create an entry based on some url like "myuddpsever.com", and give it your local UDDI server's ip address, and the rest would be handled within the network. The advantage to this is your UDDP server could be anywhere and your message would still reach it. hth, Mark -----Original Message----- From: Francesco Munari [mailto:[EMAIL PROTECTED] Sent: Saturday, May 28, 2005 4:58 AM To: [email protected] Subject: SOAP-over-UDP Hi, I'm desperate! I'm trying to find out how to send a broadcast SOAP request to a UDDIregistry in a LAN, but I'm not able to do this. I've looked for someexample but I've not found anithing. Please...could anybody help me? I'm making a thesis for the University of Florence (Italy) and I haveto discovery dinamically web service published in some UDDI registry somewhere in a LAN. I have to send a broadcast SOAP request to theseUDDI registry (as I wrote few lines above). Of course I'm using Java language. Thank you very much for your help...I'm in a great hurry...thanks very very much to everyone could help me! Best reguards, Francesco
