title: grpc: server failed to encode response: rpc error: code = Internal desc = grpc: error while marshaling: proto: Marshal called with nil
body: <p>The following RPC should ideally receive a message and marshal to JSON. But, the following error is encountered: <code>ERROR: 2018/08/12 13:43:07 grpc: server failed to encode response:  rpc error: code = Internal desc = grpc: error while marshaling: proto: Marshal called with nil</code></p>
  
  <pre><code>func (s *beaconServer) Transmit(ctx context.Context, batch *pb.Batch) (*pb.Empty, error) {
      var empty *pb.Empty
  
      var messageJSON bytes.Buffer
      marshaler := &amp;jsonpb.Marshaler{
          OrigName: true,
      }
      err := marshaler.Marshal(&amp;messageJSON, batch)
      if err != nil {
          return empty, err
      }
  
      log.Println(string(messageJSON.Bytes()))
      return empty, nil
  }
  </code></pre>
  
  <p>.. returns</p>
  
  <pre><code>2018/08/12 14:24:09 beacon.go:34: {"stream_id":"abc11","event_type":"e","events":[{"file_path":"/tmp/python.py","location":"256","count":"30"},{"file_path":"/tmp/temp.py","location":"253","count":"305"}],"start_time":"2038-01-19 03:14:07","end_time":"2038-01-19 03:14:27"}
  ERROR: 2018/08/12 14:24:09 grpc: server failed to encode response:  rpc error: code = Internal desc = grpc: error while marshaling: proto: Marshal called with nil
  </code></pre>