HessianD
Radu
radu.racariu at void.space
Tue Jun 5 05:17:16 PDT 2007
great!
Simen Haugen wrote:
> Sorry, my bad. I just implemented the interface in both the client and
> server code as a quick hack, and that didnt work. If I use the same
> interface file it works.. Nice work! Looking forward to trying it.
>
> "Simen Haugen" <simen at norstat.no <mailto:simen at norstat.no>> wrote
> in message news:f43i4t$6ej$1 at digitalmars.com...
> Compiling works fine now, but I cannot get your examples to work.
> When trying to run the client, I get the following error:
>
> hessian.Input.HessianError: invalid reply, expected 'r' instead of<
>
> "Radu" <radu.racariu at void.space
> <mailto:radu.racariu at void.space>> wrote in message
> news:f43gc1$2qa$1 at digitalmars.com...
> I've updated the project to use:
> tango.util.time.WallClock,
> tango.util.time.Clock,
>
> it works with tango 0.98 RC2.
>
> Please download hessiand again.
>
>
> Simen Haugen wrote:
>> I cannot compile it. You're using tango.util.time.Utc, and in my tango trunk
>> that file doesn't exist.
>>
>> "Radu" <radu.racariu at void.space> wrote in message
>> news:f3f7n3$1r10$1 at digitalmars.com...
>>
>>> HessianD (http://www.dsource.org/projects/hessiand/)
>>> A D implementation of the Hessian (http://caucho.com/hessian) binary web
>>> service protocol.
>>> Supports both the client and the server model.
>>>
>>> Client sample:
>>>
>>> import hessian.HttpProxy :
>>> HttpProxy;
>>> import tango.io.Stdout;
>>>
>>> char[] echo(char[] param);
>>>
>>> void main ()
>>> {
>>>
>>> // create a Http proxy on the given Http endpoint so we can post
>>> our Hessian stream
>>> scope service = new HttpProxy("http://localhost:5667/hessiantest");
>>>
>>> // create a proxy method that will do the Hessian serialization
>>> and deserialization
>>> auto _echo = &service.proxy!(echo);
>>>
>>> // we'll perform the remote call and display the result
>>> Stdout ("Remote result: ") ( _echo("Hello World!") ).newline.flush;
>>>
>>> }
>>>
>>> Server sample:
>>>
>>> import hessian.HttpServer:
>>> Server;
>>>
>>> class impl
>>> {
>>> char[] echo (char[] param)
>>> {
>>> return param;
>>> } }
>>>
>>> void main()
>>> {
>>> // create a Http server on the given port
>>> auto server = new Server(5667);
>>> // attach a context with the Http endpoint and the class
>>> implementing the method
>>> auto context = server.addContext!(impl)("/test/hessiantest");
>>> // bind the method to the context created
>>> context.bind!(impl.echo);
>>> // and finally start listenning to Http Post requests
>>> server.start;
>>> }
>>>
>>>
>>>
>>>
>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.puremagic.com/pipermail/digitalmars-d-announce/attachments/20070605/e0dbd1ec/attachment.htm
More information about the Digitalmars-d-announce
mailing list