v.io/x/jni: fix the discovery call

Change-Id: I0100d3e28705031e7b3a02d356cc5f2d1d8fb3cf
diff --git a/impl/google/discovery/jni.go b/impl/google/discovery/jni.go
index 6a0b4d2..77dab52 100644
--- a/impl/google/discovery/jni.go
+++ b/impl/google/discovery/jni.go
@@ -27,7 +27,8 @@
 import "C"
 
 var (
-	updateSign = jutil.ClassSign("io.v.v23.discovery.Update")
+	updateSign  = jutil.ClassSign("io.v.v23.discovery.Update")
+	contextSign = jutil.ClassSign("io.v.v23.context.VContext")
 
 	// Global reference for java.util.UUID class.
 	jUUIDClass jutil.Class
@@ -128,8 +129,12 @@
 		jutil.DeleteGlobalRef(env, jDoneCallback)
 		return jutil.NullObject, err
 	}
+	jContext, err := jcontext.JavaContext(env, ctx, nil)
+	if err != nil {
+		return jutil.NullObject, err
+	}
 	listenableFutureSign := jutil.ClassSign("com.google.common.util.concurrent.ListenableFuture")
-	jDoneFuture, err := jutil.CallObjectMethod(env, jDoneCallback, "getFuture", nil, listenableFutureSign)
+	jDoneFuture, err := jutil.CallObjectMethod(env, jDoneCallback, "getFuture", []jutil.Sign{contextSign}, listenableFutureSign, jContext)
 	if err != nil {
 		jutil.DeleteGlobalRef(env, jDoneCallback)
 		return jutil.NullObject, err