THRIFT-5013: Replace NullPointerException with RequireNonNull

Co-Authored-By: Christopher Tubbs <ctubbsii@apache.org>

Client: java

This closes #1934.
diff --git a/compiler/cpp/src/thrift/generate/t_java_generator.cc b/compiler/cpp/src/thrift/generate/t_java_generator.cc
index 7254e12..581e1cf 100644
--- a/compiler/cpp/src/thrift/generate/t_java_generator.cc
+++ b/compiler/cpp/src/thrift/generate/t_java_generator.cc
@@ -1060,11 +1060,15 @@
     }
     indent(out) << "public void set" << get_cap_name(field->get_name()) << "("
                 << type_name(field->get_type()) << " value) {" << endl;
-    if (type_can_be_null(field->get_type())) {
-      indent(out) << "  if (value == null) throw new java.lang.NullPointerException();" << endl;
-    }
+
     indent(out) << "  setField_ = _Fields." << constant_name(field->get_name()) << ";" << endl;
-    indent(out) << "  value_ = value;" << endl;
+
+    if (type_can_be_null(field->get_type())) {
+      indent(out) << "  value_ = java.util.Objects.requireNonNull(value,\"" << "_Fields." << constant_name(field->get_name()) << "\");" << endl;
+    } else {
+      indent(out) << "  value_ = value;" << endl;
+    }
+
     indent(out) << "}" << endl;
   }
 }