100 lines
4.0 KiB
Java
Raw Normal View History

2019-10-03 08:42:09 +02:00
package com.wasteinformationserver.website;
2019-09-20 16:46:13 +02:00
2019-09-13 15:41:40 +02:00
import com.sun.net.httpserver.HttpServer;
2019-10-03 08:42:09 +02:00
import com.wasteinformationserver.basicutils.Log;
import com.wasteinformationserver.website.datarequests.AdminRequests;
import com.wasteinformationserver.website.datarequests.NewDateRequest;
import com.wasteinformationserver.website.datarequests.login.CheckLoginState;
2019-11-08 10:42:22 +01:00
import com.wasteinformationserver.website.datarequests.DataRequest;
import com.wasteinformationserver.website.datarequests.login.LoginRequest;
2019-11-08 10:42:22 +01:00
import com.wasteinformationserver.website.datarequests.RegisterRequest;
2019-09-13 15:41:40 +02:00
import java.io.IOException;
import java.net.InetSocketAddress;
2019-10-02 21:42:04 +02:00
2019-09-13 15:41:40 +02:00
public class Webserver {
public void startserver() {
Log.info("starting Webserver");
2019-09-13 15:41:40 +02:00
HttpServer server = null;
try {
server = HttpServer.create(new InetSocketAddress(8000), 0);
} catch (IOException e) {
e.printStackTrace();
}
2019-09-20 16:46:13 +02:00
server.createContext("/", new MainPage());
server.createContext("/senddata/loginget", new LoginRequest());
server.createContext("/senddata/registerpost", new RegisterRequest());
server.createContext("/senddata/checkloginstate", new CheckLoginState());
server.createContext("/senddata/wastedata", new DataRequest());
server.createContext("/senddata/admindata", new AdminRequests());
server.createContext("/senddata/newdate", new NewDateRequest());
2019-09-13 15:41:40 +02:00
server.setExecutor(null); // creates a default executor
server.start();
2019-10-02 21:42:04 +02:00
Log.info("Server available at http://127.0.0.1:8000 now");
/*
try {
server = HttpsServer.create(new InetSocketAddress(8000), 0);
// initialise the HTTPS server
SSLContext sslContext = SSLContext.getInstance("TLS");
// initialise the keystore
char[] password = "password".toCharArray();
KeyStore ks = KeyStore.getInstance("JKS");
FileInputStream fis = new FileInputStream("testkey.jks");
ks.load(fis, password);
// setup the key manager factory
KeyManagerFactory kmf = KeyManagerFactory.getInstance("SunX509");
kmf.init(ks, password);
// setup the trust manager factory
TrustManagerFactory tmf = TrustManagerFactory.getInstance("SunX509");
tmf.init(ks);
// setup the HTTPS context and parameters
sslContext.init(kmf.getKeyManagers(), tmf.getTrustManagers(), null);
server.setHttpsConfigurator(new HttpsConfigurator(sslContext) {
public void configure(HttpsParameters params) {
try {
// initialise the SSL context
SSLContext context = getSSLContext();
SSLEngine engine = context.createSSLEngine();
params.setNeedClientAuth(false);
params.setCipherSuites(engine.getEnabledCipherSuites());
params.setProtocols(engine.getEnabledProtocols());
// Set the SSL parameters
SSLParameters sslParameters = context.getSupportedSSLParameters();
params.setSSLParameters(sslParameters);
} catch (Exception ex) {
System.out.println("Failed to create HTTPS port");
}
}
});
} catch (IOException e) {
e.printStackTrace();
} catch (CertificateException e) {
e.printStackTrace();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
} catch (UnrecoverableKeyException e) {
e.printStackTrace();
} catch (KeyStoreException e) {
e.printStackTrace();
} catch (KeyManagementException e) {
e.printStackTrace();
}
*/
2019-09-13 15:41:40 +02:00
}
}