diff --git a/object_detection/ObjectDetectionServer.java b/object_detection/ObjectDetectionServer.java
new file mode 100644
index 0000000000000000000000000000000000000000..53fc15b37c1a015a6c43404bf7d38460b3958741
--- /dev/null
+++ b/object_detection/ObjectDetectionServer.java
@@ -0,0 +1,47 @@
+package object_detection;
+
+import java.net.ServerSocket;
+import java.net.Socket;
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.OutputStream;
+import java.io.FileWriter; // file writing support
+import java.nio.charset.StandardCharsets;
+
+public class ObjectDetectionServer {
+
+    public static void main(String[] args) throws Exception {
+        final ServerSocket server = new ServerSocket(80); // port 80
+        System.out.println("Listening for connection on port 80...");
+        while (true) {
+            try (Socket clientSocket = server.accept();
+                 FileWriter fw = new FileWriter("blank.txt", true); // open file in append mode
+            ) {
+                InputStreamReader isr = new InputStreamReader(clientSocket.getInputStream());
+                BufferedReader reader = new BufferedReader(isr);
+                String line = reader.readLine();
+                while (!line.isEmpty()) {
+                    System.out.println(line);
+                    fw.write(line + "\n"); // write line to file
+                    line = reader.readLine();
+                }
+                fw.flush(); // ensure all data is written to file
+
+                // at this point, run ObjectDetector
+                ObjectDetector.run(fw.toString());
+
+                // HTTP response
+                String httpResponse = "HTTP/1.1 200 OK\r\n\r\n" + "<html><body><h1>Hello, World!</h1></body></html>";
+
+                // dispatching HTTP response to the client
+                OutputStream outputStream = clientSocket.getOutputStream();
+                outputStream.write(httpResponse.getBytes(StandardCharsets.UTF_8));
+                outputStream.flush();
+            } catch (IOException e) {
+                e.printStackTrace(); // handle exceptions appropriately
+            }
+        }
+    }
+}
+
diff --git a/object_detection/ObjectDetector.java b/object_detection/ObjectDetector.java
index 72342370511abdd4b4b5b756d9722105a24b8be5..03a4a411af3b107e3fed4acd7bffee77e876ecc6 100644
--- a/object_detection/ObjectDetector.java
+++ b/object_detection/ObjectDetector.java
@@ -1,9 +1,10 @@
 package object_detection;
 
 public class ObjectDetector {
+
     static ObjectSet os;
 
-    public static void main(String[] args){
+    public static void run(String pathname){
 
         /* infinite loop of running system:
         1) Get new info from system