Class UninitializedMessageException

java.lang.Object
java.lang.Throwable
java.lang.Exception
java.lang.RuntimeException
com.google.protobuf.UninitializedMessageException
All Implemented Interfaces:
Serializable

public class UninitializedMessageException extends RuntimeException
Thrown when attempting to build a protocol message that is missing required fields. This is a RuntimeException because it normally represents a programming error: it happens when some code which constructs a message fails to set all the fields. parseFrom() methods do not throw this; they throw an InvalidProtocolBufferException if required fields are missing, because it is not a programming error to receive an incomplete message. In other words, UninitializedMessageException should never be thrown by correct code, but InvalidProtocolBufferException might be.
See Also:
  • Constructor Details

    • UninitializedMessageException

      public UninitializedMessageException(MessageLite message)
    • UninitializedMessageException

      public UninitializedMessageException(List<String> missingFields)
  • Method Details

    • getMissingFields

      public List<String> getMissingFields()
      Get a list of human-readable names of required fields missing from this message. Each name is a full path to a field, e.g. "foo.bar[5].baz". Returns null if the lite runtime was used, since it lacks the ability to find missing fields.
    • asInvalidProtocolBufferException

      public InvalidProtocolBufferException asInvalidProtocolBufferException()
      Converts this exception to an InvalidProtocolBufferException. When a parsed message is missing required fields, this should be thrown instead of UninitializedMessageException.