[Info-vax] Simple Pascal question

Arne Vajhøj arne at vajhoej.dk
Thu Sep 5 13:30:48 EDT 2024


On 8/7/2024 5:35 PM, Lawrence D'Oliveiro wrote:
> Trying to do select/poll? There’s something like 4 different classes and I
> don’t know how many methods involved.

There are several ways to do that in Java:
* java.nio
* Netty
* RxJava
* ...

All of them require a bit of documentation reading.

But so does the same problem in languages like
C# and C.

And the typical Java application works at a higher
level - it asks some framework to listen at a given
port and call some code to process requests.

SOAP example:

         Endpoint.publish("http://localhost:8080/test/Test", new Test());

XML-RPC example:

         WebServer srv = new WebServer(8001);
         XmlRpcServer xmlrpc = srv.getXmlRpcServer();
         srv.start();
         PropertyHandlerMapping phm = new PropertyHandlerMapping();
         phm.addHandler("Test", Test.class);
         xmlrpc.setHandlerMapping(phm);

RestFul example:

         Server server = new Server(PORT);
         ServletContextHandler ctx = new 
ServletContextHandler(ServletContextHandler.NO_SESSIONS);
         ctx.setContextPath(CONTEXT);
         server.setHandler(ctx);
         ServletHolder srvlet = ctx.addServlet(ServletContainer.class, API);
         srvlet.setInitOrder(1);
  
srvlet.setInitParameter("com.sun.jersey.config.property.packages", 
"server");
  
srvlet.setInitParameter("com.sun.jersey.api.json.POJOMappingFeature", 
"true");
         server.start();
         server.join();

Thrift:

         TServerTransport transport = new TServerSocket(PORT);
         Test.Iface handler = new TestHandler();
         TServer server = new TThreadPoolServer(new 
TThreadPoolServer.Args(transport).processor(new 
Test.Processor<Test.Iface>(handler)));
         server.serve();

GRPC:

         Server srv = ServerBuilder.forPort(JAVA_PORT).addService(new 
TestServer()).build();
         srv.start();

Arne




More information about the Info-vax mailing list