IMPORTANT NOTE: These examples are written to demonstrate how to use some of the features of QuickServer. These examples were written to be simple and easy to understand and not as a production versions. So the author/s have not taken security or performance has his main criteria.
Execute ant from the Examples root folder.
Execute .sh or .bat file from the bin folder. Make sure you have built the examples using ant.
Eg: $sh EchoServer.sh Eg: d:\QuickSerer-Example-Folder\bin>EchoServer.bat
Simple Server - Sends back "Echo :"+MSG where MSG is the message sent by the client socket. Uses:-
- QuickAuthenticator, ServerAuthenticator extended classes to add authentication.
- Txt Logging - Separate log files for application and base quickserver.
- Xml configuration file used to load configuration.
- XML Based JDBC Mapping - EchoServerAuthenticatorDBBased
- Remote Administration port - QSAdminServer
- QSAdmin Shell
- Init Server Hooks
Bonus:
- Client code: Helps to test EchoServer.
A simple HTTP server that generates a Web page showing all the data that it received from the Web client (browser). Uses:-
- Simple txt logging.
- Xml configuration file used to load configuration.
- ClientData implementation class to store client data.
- PoolableObject implemented ClientData
- QSAdmin Shell
- Server Hooks
A remote command shell (cmd.exe or command.com or any console program) Uses:-
- ClientData implementation class to store client data.
- StoreObjects feature of QuickServer.
- Remote Administration - QSAdminServer
Basic ftp server implementation. un: anonymous
Uses:-
- Xml configuration file used to load configuration.
- ServerAuthenticator extended class to add authentication.
- ClientData implementation class to store client data.
- Remote Administration port - QSAdminServer
- XML Logging - Separate log files for application and base quickserver and remote AdminServer - QSAdminServer
- CommandPlugin implementation class to add custom commands to remote AdminServer - QSAdminServer.
- QSAdmin Shell
- to load config.
- Init Server Hooks
- PoolableObject implemented ClientData
Demonstrates how to send java object over the socket using QuickServer, it exchanges java.util.Date object. Uses:-
- Simple txt logging.
- ClientObjectHandler implementation class to handle client objects.
Demonstrates how to find another client connected and send String to it. Uses:-
- ClientIdentifiable and QuickServer.findFirstClientById().
- QSAdmin Shell
- Xml configuration file used to load configuration.
- Init Server Hooks
- PoolableObject implemented ClientData Bonus:
- Client GUI: GUI for chatserver testing
- Load Client code: Helps to load test ChatServer.
A simple HTTPS server that generates a Web page showing all the data that it received from the Web client (browser). Uses:-
- Secure Mode - SSL
- Simple txt logging.
- Xml configuration file used to load configuration.
- ClientData implementation class to store client data.
- PoolableObject implemented ClientData
- QSAdmin Shell
- Server Hooks
A simple xml server that adds 2 integers. Demonstrates how to use BYTE mode. Uses:-
- Xml configuration file used to load configuration.
- BYTE data mode.
- Simple txt logging.
- XML data used
- QSAdmin Shell
- Remote Administration - QSAdminServer
A simple redirection server. Demonstrates how to use BINARY mode. Uses:-
- Xml configuration file used to load configuration.
- BINARY data mode.
- Simple txt logging.
- to load configuration.
- ClientData implementation class to store client data.
- QSAdmin Shell
- Remote Administration - QSAdminServer
A simple http file download server. Will listen at 8821, so use your web browser as a client. URL: http://localhost:8821/ Uses:-
- Non blocking mode
- Xml configuration file used to load configuration.
- STRING, BYTE and BINARY data mode.
- ClientWriteHandler implementation class to do non-blocking write.
- Init-server-hooks.
- AdvancedSettings
- QSAdmin Shell
- Remote Administration - QSAdminServer
- Simple txt logging.
a) All source code from the example that contain the following phrase "This file is part of the QuickServer library" may be used as a starting point in your development.
b) chatserver.client.InfiniteProgressPanel is subjected to the BSD license.
Copyright (C) 2003-2017 QuickServer.org http://www.quickserver.org/ https://github.com/QuickServerLab/QuickServer-Examples