Modernization: Using NIO2 instead of IO
diff --git a/jaxrs-api/src/main/java/jakarta/ws/rs/client/FactoryFinder.java b/jaxrs-api/src/main/java/jakarta/ws/rs/client/FactoryFinder.java
index 237e3f7..d6545ff 100644
--- a/jaxrs-api/src/main/java/jakarta/ws/rs/client/FactoryFinder.java
+++ b/jaxrs-api/src/main/java/jakarta/ws/rs/client/FactoryFinder.java
@@ -16,9 +16,10 @@
 
 package jakarta.ws.rs.client;
 
-import java.io.File;
-import java.io.FileInputStream;
 import java.io.IOException;
+import java.io.InputStream;
+import java.nio.file.Files;
+import java.nio.file.Path;
 import java.security.AccessController;
 import java.security.PrivilegedAction;
 import java.util.Properties;
@@ -123,15 +124,14 @@
         }
 
         // try to read from $java.home/lib/jaxrs.properties
-        FileInputStream inputStream = null;
-        String configFile = null;
+        InputStream inputStream = null;
+        Path configFile = null;
         try {
             String javah = System.getProperty("java.home");
-            configFile = javah + File.separator + "lib" + File.separator + "jaxrs.properties";
-            File f = new File(configFile);
-            if (f.exists()) {
+            configFile = Path.of(javah, "lib", "jaxrs.properties");
+            if (Files.exists(configFile)) {
                 Properties props = new Properties();
-                inputStream = new FileInputStream(f);
+                inputStream = Files.newInputStream(configFile);
                 props.load(inputStream);
                 String factoryClassName = props.getProperty(factoryId);
                 return newInstance(factoryClassName, classLoader);
diff --git a/jaxrs-api/src/main/java/jakarta/ws/rs/ext/FactoryFinder.java b/jaxrs-api/src/main/java/jakarta/ws/rs/ext/FactoryFinder.java
index bd46f79..b3081bd 100644
--- a/jaxrs-api/src/main/java/jakarta/ws/rs/ext/FactoryFinder.java
+++ b/jaxrs-api/src/main/java/jakarta/ws/rs/ext/FactoryFinder.java
@@ -16,9 +16,10 @@
 
 package jakarta.ws.rs.ext;
 
-import java.io.File;
-import java.io.FileInputStream;
 import java.io.IOException;
+import java.io.InputStream;
+import java.nio.file.Files;
+import java.nio.file.Path;
 import java.security.AccessController;
 import java.security.PrivilegedAction;
 import java.util.Properties;
@@ -123,15 +124,14 @@
         }
 
         // try to read from $java.home/lib/jaxrs.properties
-        FileInputStream inputStream = null;
-        String configFile = null;
+        InputStream inputStream = null;
+        Path configFile = null;
         try {
             String javah = System.getProperty("java.home");
-            configFile = javah + File.separator + "lib" + File.separator + "jaxrs.properties";
-            File f = new File(configFile);
-            if (f.exists()) {
+            configFile = Path.of(javah, "lib", "jaxrs.properties");
+            if (Files.exists(configFile)) {
                 Properties props = new Properties();
-                inputStream = new FileInputStream(f);
+                inputStream = Files.newInputStream(configFile);
                 props.load(inputStream);
                 String factoryClassName = props.getProperty(factoryId);
                 return newInstance(factoryClassName, classLoader);
diff --git a/jaxrs-api/src/main/java/jakarta/ws/rs/sse/FactoryFinder.java b/jaxrs-api/src/main/java/jakarta/ws/rs/sse/FactoryFinder.java
index a9d2415..8622d63 100644
--- a/jaxrs-api/src/main/java/jakarta/ws/rs/sse/FactoryFinder.java
+++ b/jaxrs-api/src/main/java/jakarta/ws/rs/sse/FactoryFinder.java
@@ -16,9 +16,10 @@
 
 package jakarta.ws.rs.sse;
 
-import java.io.File;
-import java.io.FileInputStream;
 import java.io.IOException;
+import java.io.InputStream;
+import java.nio.file.Files;
+import java.nio.file.Path;
 import java.security.AccessController;
 import java.security.PrivilegedAction;
 import java.util.Properties;
@@ -123,15 +124,14 @@
         }
 
         // try to read from $java.home/lib/jaxrs.properties
-        FileInputStream inputStream = null;
-        String configFile = null;
+        Path configFile = null;
+        InputStream inputStream = null;
         try {
             String javah = System.getProperty("java.home");
-            configFile = javah + File.separator + "lib" + File.separator + "jaxrs.properties";
-            File f = new File(configFile);
-            if (f.exists()) {
+            configFile = Path.of(javah, "lib", "jaxrs.properties");
+            if (Files.exists(configFile)) {
                 Properties props = new Properties();
-                inputStream = new FileInputStream(f);
+                inputStream = Files.newInputStream(configFile);
                 props.load(inputStream);
                 String factoryClassName = props.getProperty(factoryId);
                 return newInstance(factoryClassName, classLoader);