Kinesis putrecord () throwing Невозможно демаршалировать исключение

Я пытаюсь поместить запись в Kinesis с помощью следующего фрагмента кода:

  AmazonKinesisClientBuilder clientBuilder = AmazonKinesisClientBuilder.standard();
  clientBuilder.setCredentials(new EnvironmentVariableCredentialsProvider());
  clientBuilder.setEndpointConfiguration(new AwsClientBuilder.EndpointConfiguration(
      "http://localhost:4568",
      Regions.US_WEST_2.getName()));

  AmazonKinesis kinesisClient = clientBuilder.build();

  PutRecordRequest putRecordRequest = new PutRecordRequest();
  putRecordRequest.setStreamName("test");
  putRecordRequest.setData(ByteBuffer.wrap(String.format("testData-%d", 1).getBytes()));
  putRecordRequest.setPartitionKey(String.format("partitionKey-%d", 1));
  kinesisClient.putRecord(putRecordRequest);

Но в журнале появляется следующая ошибка:

Unable to unmarshall exception response with the unmarshallers provided (Service: AmazonKinesis; Status Code: 502; Error Code: null; Request ID: null)

В моем pom.xml соответствующие зависимости следующие:

     <dependency>
        <groupId>com.fasterxml.jackson.datatype</groupId>
        <artifactId>jackson-datatype-hibernate5</artifactId>
        <version>2.11.0</version>
    </dependency>
    <dependency>
        <groupId>com.fasterxml.jackson.datatype</groupId>
        <artifactId>jackson-datatype-hppc</artifactId>
        <version>2.11.0</version>
    </dependency>
    <dependency>
        <groupId>com.fasterxml.jackson.datatype</groupId>
        <artifactId>jackson-datatype-jsr310</artifactId>
        <version>2.11.0</version>
    </dependency>
    <dependency>
        <groupId>com.fasterxml.jackson.module</groupId>
        <artifactId>jackson-module-afterburner</artifactId>
        <version>2.11.0</version>
    </dependency>
    <dependency>
        <groupId>com.fasterxml.jackson.datatype</groupId>
        <artifactId>jackson-datatype-jdk8</artifactId>
        <version>2.11.0</version>
    </dependency>
     <dependency>
        <groupId>com.fasterxml.jackson.dataformat</groupId>
        <artifactId>jackson-dataformat-csv</artifactId>
        <version>2.11.0</version>
    </dependency>
    <dependency>
        <groupId>com.fasterxml.jackson.dataformat</groupId>
        <artifactId>jackson-dataformat-xml</artifactId>
        <version>2.11.0</version>
    </dependency>
    <dependency>
        <groupId>com.fasterxml.jackson.dataformat</groupId>
        <artifactId>jackson-dataformat-cbor</artifactId>
        <version>2.11.0</version>
    </dependency>
    <dependency>
        <groupId>com.amazonaws</groupId>
        <artifactId>aws-java-sdk-kinesis</artifactId>
        <version>1.11.863</version>
    </dependency>

Я понятия не имею, как это исправить. Может ли кто-нибудь помочь?

ИЗМЕНИТЬ:

Я запускаю Kinesis через localstack. На стороне localstack я получаю следующую ошибку:

2020-09-17T14:34:42:ERROR:localstack.services.generic_proxy: Error forwarding request: 'utf-8' codec can't decode byte 0xbf in position 0: invalid start byte Traceback (most recent call last):
  File "/opt/code/localstack/localstack/services/generic_proxy.py", line 247, in forward
    listener_result = listener.forward_request(method=method,
  File "/opt/code/localstack/localstack/services/kinesis/kinesis_listener.py", line 28, in forward_request
    data = json.loads(to_str(data or '{}'))
  File "/opt/code/localstack/localstack/utils/common.py", line 735, in to_str
    return obj.decode(encoding, errors) if isinstance(obj, six.binary_type) else obj
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbf in position 0: invalid start byte

В этом контексте я прошел через это: Получение кода состояния AmazonKinesisException: 502 при использовании LocalStack из Java

После этого я внес следующие изменения:

  1. Добавлен export AWS_CBOR_DISABLE=true в .bash_profile

  2. В ~ / .aws / config добавлена ​​следующая строка:

    cborEnabled = ложь

Даже после этого я продолжаю получать ту же ошибку.


person Joy    schedule 17.09.2020    source источник