<!-- Love localstack? Please consider supporting our collective:
:point_right:  https://opencollective.com/localstack/donate -->

# Type of request: This is a ...
[x] bug report
[ ] feature request

# Detailed description
Currently when using [software.amazon.awssdk:kinesis:2.15.27](https://search.maven.org/artifact/software.amazon.awssdk/kinesis/2.15.27/jar) and attempting to use [getRecords](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/services/kinesis/KinesisAsyncClient.html#getRecords-java.util.function.Consumer-) we end up getting a general aws client exception `software.amazon.awssdk.core.exception.SdkClientException: Unable to parse date : 1.605283809962E9`. This doesn't happen when using a live kinesis stream.

## Expected behavior
Should be able to get a response from localstack with the correct data.

## Actual behavior
An exception is thrown from inside aws sdk v2 with the message `software.amazon.awssdk.core.exception.SdkClientException: Unable to parse date : 1.605283809962E9`.

# Steps to reproduce
## Command used to start LocalStack
`docker run -d -p 4566:4566 -e "SERVICES=kinesis" localstack/localstack:0.12.2`

## Client code (AWS SDK code snippet, or sequence of "awslocal" commands)
https://github.com/lukecollier/localstack-jvm-aws-sdk-v2



┆Issue is synchronized with this [Jira Task](https://localstack.atlassian.net/browse/LOC-53) by [Unito](https://www.unito.io/learn-more)

return True
    def return_response(self, method, path, data, headers, response):
        action = headers.get('X-Amz-Target')
        data = self.decode_content(data or '{}')
        response._content = re.sub(r'arn:aws:kinesis:[^:]+:', 'arn:aws:kinesis:%s:' % aws_stack.get_region(),
            to_str(response.content or ''))
        records = []
        if action in (ACTION_CREATE_STREAM, ACTION_DELETE_STREAM):
            event_type = (event_publisher.EVENT_KINESIS_CREATE_STREAM if action == ACTION_CREATE_STREAM
                          else event_publisher.EVENT_KINESIS_DELETE_STREAM)
            payload = {'n': event_publisher.get_hash(data.get('StreamName'))}
            if action == ACTION_CREATE_STREAM:
                payload['s'] = data.get('ShardCount')
            event_publisher.fire_event(event_type, payload=payload)
        elif action == ACTION_PUT_RECORD:
            response_body = self.decode_content(response.content)
            event_record = {
                'approximateArrivalTimestamp': epoch_timestamp(),
                'data': data['Data'],
                'encryptionType': 'NONE',
                'partitionKey': data['PartitionKey'],
                'sequenceNumber': response_body.get('SequenceNumber')
            }
            event_records = [event_record]
            stream_name = data['StreamName']
            lambda_api.process_kinesis_records(event_records, stream_name)
        elif action == ACTION_PUT_RECORDS:
            event_records = []
            response_body = self.decode_content(response.content)
            if 'Records' in response_body: