digitalmars.D.announce - HessianD
- Radu (42/42) May 28 2007 HessianD (http://www.dsource.org/projects/hessiand/)
- Simen Haugen (4/46) Jun 05 2007 I cannot compile it. You're using tango.util.time.Utc, and in my tango t...
- Radu (6/69) Jun 05 2007 I've updated the project to use:
- Simen Haugen (62/62) Jun 05 2007 charset="iso-8859-1"
- Simen Haugen (67/67) Jun 05 2007 charset="iso-8859-1"
- Radu (2/86) Jun 05 2007
- Radu (4/82) Jun 05 2007 can you compile the client example with -version=Debug
- Simen Haugen (70/70) Jun 05 2007 charset="iso-8859-1"
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;
}
May 28 2007
I cannot compile it. You're using tango.util.time.Utc, and in my tango trunk
that file doesn't exist.
"Radu" <radu.racariu void.space> wrote in message
news:f3f7n3$1r10$1 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;
}
Jun 05 2007
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 void.space> wrote in message news:f3f7n3$1r10$1 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; }
Jun 05 2007
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
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 void.space> wrote in message =
news:f43gc1$2qa$1 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:=20
I cannot compile it. You're using tango.util.time.Utc, and in my tango =
trunk=20
that file doesn't exist.
"Radu" <radu.racariu void.space> wrote in message=20
news:f3f7n3$1r10$1 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 =3D new =
HttpProxy("http://localhost:5667/hessiantest");
// create a proxy method that will do the Hessian serialization
and deserialization
auto _echo =3D &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 =3D new Server(5667);
// attach a context with the Http endpoint and the class
implementing the method
auto context =3D 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;
}
=20
=20
Jun 05 2007
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
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 norstat.no> wrote in message =
news:f43i4t$6ej$1 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 void.space> wrote in message =
news:f43gc1$2qa$1 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:=20
I cannot compile it. You're using tango.util.time.Utc, and in my tango =
trunk=20
that file doesn't exist.
"Radu" <radu.racariu void.space> wrote in message=20
news:f3f7n3$1r10$1 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 =3D new =
HttpProxy("http://localhost:5667/hessiantest");
// create a proxy method that will do the Hessian serialization
and deserialization
auto _echo =3D &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 =3D new Server(5667);
// attach a context with the Http endpoint and the class
implementing the method
auto context =3D 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;
}
=20
=20
Jun 05 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 norstat.no <mailto:simen norstat.no>> wrote
in message news:f43i4t$6ej$1 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 void.space
<mailto:radu.racariu void.space>> wrote in message
news:f43gc1$2qa$1 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 void.space> wrote in message
news:f3f7n3$1r10$1 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;
}
Jun 05 2007
can you compile the client example with -version=Debug
then paste the "response:" line.
As a note I'm compiling with dmd 1.014, rebuild 0.65 on Windows XP
Simen Haugen wrote:
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 void.space <mailto:radu.racariu void.space>>
wrote in message news:f43gc1$2qa$1 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 void.space> wrote in message
news:f3f7n3$1r10$1 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;
}
Jun 05 2007
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
I just tried to reproduce it, but it worked now... I must have done =
something else, but I don't know what.
"Radu" <radu.racariu void.space> wrote in message =
news:f43k2n$9d6$1 digitalmars.com...
can you compile the client example with -version=3DDebug
then paste the "response:" line.=20
As a note I'm compiling with dmd 1.014, rebuild 0.65 on Windows XP
Simen Haugen wrote:=20
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 void.space> wrote in message =
news:f43gc1$2qa$1 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:=20
I cannot compile it. You're using tango.util.time.Utc, and in my tango =
trunk=20
that file doesn't exist.
"Radu" <radu.racariu void.space> wrote in message=20
news:f3f7n3$1r10$1 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 =3D new =
HttpProxy("http://localhost:5667/hessiantest");
// create a proxy method that will do the Hessian serialization
and deserialization
auto _echo =3D &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 =3D new Server(5667);
// attach a context with the Http endpoint and the class
implementing the method
auto context =3D 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;
}
=20
=20
Jun 05 2007









Radu <radu.racariu void.space> 