[Gambas-user] XMLRPC-Server

T Lee Davidson t.lee.davidson at ...626...
Wed May 24 17:39:54 CEST 2017


On 05/24/2017 04:52 AM, Hans Lehmann wrote:
> 
> Hello Lee,
>> RpcServer.Listen relies on ServerSocket which is part of the gb.net component. The documentation does not specify that gb.net is
>> required for gb.xml.rpc, but it apparently is.
> That's exactly. The missing components were added. Thanks for the hint.
> The source code for the XMLRPC client and the XMLRPC server is attached. The project works - but unfortunately not as a web 
> service - only locally. Where is the error? What should I do?
> 
> Sincerely
> Hans

Hi Hans,

The commonly used term, "web service", can be a bit misleading since not all services accessible over the web (internet) are 
necessarily served by a _web_ server.

The gb.xml.rpc component is not designed to run 'through' a web server in the same manner that PHP web services do. This means 
that, in this case, the RPC service cannot be called simply by fetching a file. The service must _first_ be started on whatever 
machine is acting as the server. Then, a request can be made to the service, already listening on a specific port, by making a 
call to it in the form of http://ip_address:port.

(PHP scripts must be executed by a web server which means the server is already running.)

If you are wanting to be able to access an actual web service (PHP-style), then I believe you are using the wrong component(s). 
In that case, you should probably use gb.web for the server side and gb.net.curl's HttpClient for the client side.

Your client/server application does indeed work just fine (even without gb.web and gb.net.curl), provided the server is started 
prior to making the call.


-- 
Lee




More information about the User mailing list