title: AWS Lambda getting null value as querystring
body: <p>I have defined my <code>AWS::ApiGateway::Method</code> like this</p>
  
  <pre><code>GetOrdersMethod:
          Type: "AWS::ApiGateway::Method"
          Properties:
              ApiKeyRequired: true
              AuthorizationType: "AWS_IAM"
              HttpMethod: "GET"
              RequestParameters:
                  method.request.querystring.orderId: false
              ResourceId:
                  Ref: "GetOrdersPathResource"
              RestApiId:
                  Ref: "GetOrders"
              Integration:
                  Type: "AWS_PROXY"
                  IntegrationHttpMethod: "POST"
                  RequestTemplates:
                      application/json: !Join ["", ["{","\"orderId\": \"$input.params('orderId')\"","}"]]
                  Uri: !Join ["", ["arn:aws:apigateway:", !Ref "AWS::Region", ":lambda:path/2015-03-31/functions/",!GetAtt GetProgramsLambdaFunction.Arn, "/invocations"]]
  </code></pre>
  
  <p>My handler is defined like this</p>
  
  <pre><code>public class ProgramHandler implements RequestHandler&lt;Request, String&gt;{
      private LambdaLogger logger;
  
      @Override
      public String handleRequest(Request request, Context context) {
          logger = context.getLogger();
  
          logger.log("FROM LOGGER: ======= LAMBDA INVOKED ======");
          logger.log("Input value: " +request.getOrderId());
          System.out.println("======= LAMBDA INVOKED ======");
          System.out.println("Input value: " +request.getMarketplaceId());
  
          return "Lambda Invoked successfully";
      }
  }
  </code></pre>
  
  <p>And the <em>Request</em> is a simple java pojo with <code>orderId</code> as only fields which has necessary GETTERS and SETTERS</p>
  
  <p>When i tested the API Gateway, I saw that in my lambda logs, order id was null. However, I do see it being passed as querystring in over logs ... here it is</p>
  
  <pre><code>Tue Apr 25 21:57:31 UTC 2017 : Endpoint request body after transformations: {"resource":"/xxxx","path":"/xxxx","httpMethod":"GET","headers":null,"queryStringParameters":{"orderId":"32"},"pathParameters":null,"stageVariables":null,"requestContext":{"accountId":"xxxxxxx","resourceId":"xxxxx","stage":"test-invoke-stage", ... }
  </code></pre>
  
  <p>Why I am getting null <code>orderId</code> in my <code>handler</code>?</p>