diff --git a/VerteilteSysteme-Examples/build/RMIEchoServer.jar b/VerteilteSysteme-Examples/build/RMIEchoServer.jar index aae6d68..ee6eae5 100644 Binary files a/VerteilteSysteme-Examples/build/RMIEchoServer.jar and b/VerteilteSysteme-Examples/build/RMIEchoServer.jar differ diff --git a/VerteilteSysteme-Examples/build/RMIMandelbrotCalculationsServer.jar b/VerteilteSysteme-Examples/build/RMIMandelbrotCalculationsServer.jar index d82b569..8c86c85 100644 Binary files a/VerteilteSysteme-Examples/build/RMIMandelbrotCalculationsServer.jar and b/VerteilteSysteme-Examples/build/RMIMandelbrotCalculationsServer.jar differ diff --git a/VerteilteSysteme-Examples/build/TCPPerfServer.jar b/VerteilteSysteme-Examples/build/TCPPerfServer.jar index db15e26..2e47a2c 100644 Binary files a/VerteilteSysteme-Examples/build/TCPPerfServer.jar and b/VerteilteSysteme-Examples/build/TCPPerfServer.jar differ diff --git a/VerteilteSysteme-Examples/build/TCPServer.jar b/VerteilteSysteme-Examples/build/TCPServer.jar index 9c43c8e..7fca5c5 100644 Binary files a/VerteilteSysteme-Examples/build/TCPServer.jar and b/VerteilteSysteme-Examples/build/TCPServer.jar differ diff --git a/VerteilteSysteme-Examples/build/TCPServerMulti.jar b/VerteilteSysteme-Examples/build/TCPServerMulti.jar index 51b955b..8667fa9 100644 Binary files a/VerteilteSysteme-Examples/build/TCPServerMulti.jar and b/VerteilteSysteme-Examples/build/TCPServerMulti.jar differ diff --git a/VerteilteSysteme-Examples/build/TCPTimeCounterRESTServer.jar b/VerteilteSysteme-Examples/build/TCPTimeCounterRESTServer.jar index bb814ba..ccbcf69 100644 Binary files a/VerteilteSysteme-Examples/build/TCPTimeCounterRESTServer.jar and b/VerteilteSysteme-Examples/build/TCPTimeCounterRESTServer.jar differ diff --git a/VerteilteSysteme-Examples/build/TCPTimeCounterServer.jar b/VerteilteSysteme-Examples/build/TCPTimeCounterServer.jar index 3487177..9dc816e 100644 Binary files a/VerteilteSysteme-Examples/build/TCPTimeCounterServer.jar and b/VerteilteSysteme-Examples/build/TCPTimeCounterServer.jar differ diff --git a/VerteilteSysteme-Examples/build/UDPServer.jar b/VerteilteSysteme-Examples/build/UDPServer.jar index 587561b..ffb9e0a 100644 Binary files a/VerteilteSysteme-Examples/build/UDPServer.jar and b/VerteilteSysteme-Examples/build/UDPServer.jar differ diff --git a/VerteilteSysteme-Examples/build/UDPServerMulti.jar b/VerteilteSysteme-Examples/build/UDPServerMulti.jar index c19a685..e972b12 100644 Binary files a/VerteilteSysteme-Examples/build/UDPServerMulti.jar and b/VerteilteSysteme-Examples/build/UDPServerMulti.jar differ diff --git a/VerteilteSysteme-Examples/build/UDPTimeCounterServer.jar b/VerteilteSysteme-Examples/build/UDPTimeCounterServer.jar index a12d0fd..875700c 100644 Binary files a/VerteilteSysteme-Examples/build/UDPTimeCounterServer.jar and b/VerteilteSysteme-Examples/build/UDPTimeCounterServer.jar differ diff --git a/VerteilteSysteme-Examples/src/verteiltesysteme/aws/TCPTimeCounterRESTServer.java b/VerteilteSysteme-Examples/src/verteiltesysteme/aws/TCPTimeCounterRESTServer.java index 894f966..5e71b6a 100644 --- a/VerteilteSysteme-Examples/src/verteiltesysteme/aws/TCPTimeCounterRESTServer.java +++ b/VerteilteSysteme-Examples/src/verteiltesysteme/aws/TCPTimeCounterRESTServer.java @@ -1,32 +1,52 @@ /* Beispiel angelehnt an http://www.torsten-horn.de/techdocs/jee-rest.htm */ package verteiltesysteme.aws; +import java.io.ByteArrayOutputStream; import java.io.IOException; +import java.io.PrintStream; import java.net.URI; + +import org.glassfish.grizzly.http.server.ErrorPageGenerator; import org.glassfish.grizzly.http.server.HttpServer; +import org.glassfish.grizzly.http.server.Request; import org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpServerFactory; import org.glassfish.jersey.server.ResourceConfig; -public class TCPTimeCounterRESTServer -{ - public static void main( String[] args ) throws IOException, InterruptedException - { - String baseUrl = ( args.length > 0 ) ? args[0] : "http://0.0.0.0:36042"; - - final HttpServer server = GrizzlyHttpServerFactory.createHttpServer( - URI.create( baseUrl ), new ResourceConfig( TCPTimeCounterRESTService.class ), false ); - Runtime.getRuntime().addShutdownHook( new Thread( new Runnable() { - @Override - public void run() { - server.shutdownNow(); - } - } ) ); - server.start(); - - System.out.println("Grizzly-HTTP-Server gestartet"); - System.out.println("Stoppen des Grizzly-HTTP-Servers mit: Strg+C\n"); - System.out.println("RESTful Web Service URL: " + baseUrl + TCPTimeCounterRESTService.webContextPath); - - Thread.currentThread().join(); - } +public class TCPTimeCounterRESTServer { + public static void main(String[] args) throws IOException, InterruptedException { + String baseUrl = (args.length > 0) ? args[0] : "http://0.0.0.0:36042"; + + final HttpServer server = GrizzlyHttpServerFactory.createHttpServer(URI.create(baseUrl), + new ResourceConfig(TCPTimeCounterRESTService.class), false); + Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() { + @Override + public void run() { + server.shutdownNow(); + } + })); + + ErrorPageGenerator epg = new ErrorPageGenerator() { + @Override + public String generate(Request request, int status, String reasonPhrase, String description, + Throwable exception) { + StringBuilder sb = new StringBuilder(); + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + PrintStream ps = new PrintStream(baos); + exception.printStackTrace(ps); + ps.close(); + sb.append(new String(baos.toByteArray())); + System.out.println(sb.toString()); + return sb.toString(); + } + }; + server.getServerConfiguration().setDefaultErrorPageGenerator(epg); + + server.start(); + + System.out.println("Grizzly-HTTP-Server gestartet"); + System.out.println("Stoppen des Grizzly-HTTP-Servers mit: Strg+C\n"); + System.out.println("RESTful Web Service URL: " + baseUrl + TCPTimeCounterRESTService.webContextPath); + + Thread.currentThread().join(); + } } \ No newline at end of file