diff --git a/generator/src/googleapis/codegen/java_generator.py b/generator/src/googleapis/codegen/java_generator.py index 609f1782a20..f017edb7ada 100755 --- a/generator/src/googleapis/codegen/java_generator.py +++ b/generator/src/googleapis/codegen/java_generator.py @@ -261,12 +261,10 @@ def _GetTypeInfo(self, def_dict): if result: return result - # TODO(user): Uncomment this and update golden files. - # result = self.type_map.get((json_type, None)) - # if result: - # return result - # - # raise ValueError('Unknown type: %s format: %s' % (json_type, json_format)) + # Fallback to the unformatted base type if exact format mapping is not found. + result = self.type_map.get((json_type, None)) + if result: + return result return (utilities.CamelCase(json_type), None, None) diff --git a/generator/tests/java_generator_test.py b/generator/tests/java_generator_test.py index 99cd443690f..d9b9e766909 100755 --- a/generator/tests/java_generator_test.py +++ b/generator/tests/java_generator_test.py @@ -84,6 +84,7 @@ def testGetCodeTypeFromDictionary(self): ['java.lang.Integer', {'type': 'integer', 'format': 'int32'}], ['java.lang.Long', {'type': 'string', 'format': 'int64'}], ['java.lang.Object', {'type': 'any'}], + ['java.lang.Object', {'type': 'any', 'format': 'google.protobuf.Value'}], ['java.lang.Boolean', {'type': 'boolean'}], ['java.lang.String', {'type': 'string'}], ['java.lang.Long', {'type': 'integer', 'format': 'uint32'}],