<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content=text/html;charset=ISO-8859-1>
<META content="MSHTML 6.00.6000.16441" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY text=#000000 bgColor=#ffffff>
<DIV><FONT face=Arial size=2>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.</FONT></DIV>
<BLOCKQUOTE dir=ltr
style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
<DIV>"Simen Haugen" <<A
href="mailto:simen@norstat.no">simen@norstat.no</A>> wrote in message <A
href="news:f43i4t$6ej$1@digitalmars.com">news:f43i4t$6ej$1@digitalmars.com</A>...</DIV>
<DIV><FONT face=Arial size=2>Compiling works fine now, but I cannot get your
examples to work. When trying to run the client, I get the following
error:</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>hessian.Input.HessianError: invalid reply,
expected 'r' instead of<</FONT></DIV>
<BLOCKQUOTE
style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
<DIV>"Radu" <<A
href="mailto:radu.racariu@void.space">radu.racariu@void.space</A>> wrote
in message <A
href="news:f43gc1$2qa$1@digitalmars.com">news:f43gc1$2qa$1@digitalmars.com</A>...</DIV>I've
updated the project to
use:<BR>tango.util.time.WallClock,<BR>tango.util.time.Clock,<BR><BR>it works
with tango 0.98 RC2.<BR><BR>Please download hessiand again.<BR><BR><BR>Simen
Haugen wrote:
<BLOCKQUOTE cite=mid:f43evc$96$1@digitalmars.com type="cite"><PRE wrap="">I cannot compile it. You're using tango.util.time.Utc, and in my tango trunk
that file doesn't exist.
"Radu" <A class=moz-txt-link-rfc2396E href="mailto:radu.racariu@void.space"><radu.racariu@void.space></A> wrote in message
<A class=moz-txt-link-freetext href="news:f3f7n3$1r10$1@digitalmars.com">news:f3f7n3$1r10$1@digitalmars.com</A>...
</PRE>
<BLOCKQUOTE type="cite"><PRE wrap="">HessianD (<A class=moz-txt-link-freetext href="http://www.dsource.org/projects/hessiand/">http://www.dsource.org/projects/hessiand/</A>)
A D implementation of the Hessian (<A class=moz-txt-link-freetext href="http://caucho.com/hessian">http://caucho.com/hessian</A>) 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(<A class=moz-txt-link-rfc2396E href="http://localhost:5667/hessiantest">"http://localhost:5667/hessiantest"</A>);
// 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;
}
</PRE></BLOCKQUOTE><PRE wrap=""><!---->
</PRE></BLOCKQUOTE><BR></BLOCKQUOTE></BLOCKQUOTE></BODY></HTML>