diff --git a/VerteilteSysteme-Examples/build/RMIEchoServer.jar b/VerteilteSysteme-Examples/build/RMIEchoServer.jar index aae6d68f838f7a9177de908f336149b137361c2f..ee6eae53ca6cf0663e4705094bd13dd9d6a312e7 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 d82b56935aa5c3136b9d057047d0c9b23873d2e6..8c86c859048323d62ac99e5e0e90dab7271bdecb 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 db15e26de51aec945f23eabca8feba24c59e7084..2e47a2ceb270b9d7bc440c803eef0764428bb2e7 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 9c43c8e2ed7deac49827d66c76334cc0dedf1a53..7fca5c5706adeaf66d8de06fe26629e30672be81 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 51b955b7197f8b87600f8195d3a3d290ea016c35..8667fa97bddef860fefe38457ca34ecf4939de9c 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 bb814ba6c07b82484e7f7308bcb2ed8ea2d3e18c..ccbcf696e18a206420081afbd65398b22108d7ba 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 3487177d67d857dbf2a30569d50241425e1315e0..9dc816eea9ffbb82c34071f261f09ada372cd748 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 587561b3d3cbc6e2ab924e0a77133562c01ce603..ffb9e0a8b3cf85b3e46f258365a474da53b56aaa 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 c19a685b0fc4b6a802ceffdc047867a9ae139f0a..e972b123a979fdb47de6ae0e0bb38518542e6d5b 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 a12d0fd41d1ff03307a77731cbabde3888f57f39..875700c73cdb4b9673a071a6219ba86bfd7c13c2 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 894f966a68d73442fa59c6b7e01bbfe6c277188e..5e71b6adfe7f60d764048f811b6d3141adbc159d 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