protected void initMembers() {
   Class<?> dynamicType;
   if (javaObject != null) {
     dynamicType = javaObject.getClass();
   } else {
     dynamicType = staticType;
   }
   members = JavaMembers.lookupClass(parent, dynamicType, staticType, isAdapter);
   fieldAndMethods = members.getFieldAndMethodsObjects(this, javaObject, false);
 }
 static void reportConversionError(Object value, Class<?> type) {
   // It uses String.valueOf(value), not value.toString() since
   // value can be null, bug 282447.
   throw Context.reportRuntimeError2(
       "msg.conversion.not.allowed", String.valueOf(value), JavaMembers.javaSignature(type));
 }