Protobuf - Missing toByteArray ()?

I probably just messed up something in my proto file, but I can't call the function toByteArray.

Using Java and the proto file was compiled with protoc.

What I call ...

BaseMessage.builder = baseMessage = BaseMessage.newBuilder();
Acknowledgement.builder = acknowledgeMessage = Acknowledgement.newBuilder();

acknowledgeMessage.setOk(true);

baseMessage.setAcknowledgement(acknowledgeMessage);
baseMessage.build();

byte[] send = baseMessage.toByteArray();

      

And BaseMessage is declared as ...

public static final class BaseMessage   
       extends com.google.protobuf.GeneratedMessage   
       implements BaseMessageOrBuilder {

      

Perhaps I am missing something ...

BaseMessage extends GeneratedMessage , which inheritsByteArray () from AbstractMessageLite , in which toByteArray is public ... So should I use it?

+3


source to share


2 answers


Yes, you probably meant:



baseMessage.build().toByteArray()

      

+4


source


Try the following:



baseMessage.build().toByteArray()

      

-1


source







All Articles