@@ -0,0 +1,2785 @@
+/*%0A * Licensed to the Apache Software Foundation (ASF) under one or more%0A * contributor license agreements.  See the NOTICE file distributed with%0A * this work for additional information regarding copyright ownership.%0A * The ASF licenses this file to You under the Apache License, Version 2.0%0A * (the %22License%22); you may not use this file except in compliance with%0A * the License.  You may obtain a copy of the License at%0A *%0A *      http://www.apache.org/licenses/LICENSE-2.0%0A *%0A * Unless required by applicable law or agreed to in writing, software%0A * distributed under the License is distributed on an %22AS IS%22 BASIS,%0A * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.%0A * See the License for the specific language governing permissions and%0A * limitations under the License.%0A */%0Apackage org.apache.camel.component.servlet.springboot.test;%0A%0Aimport org.apache.camel.CamelContext;%0Aimport org.apache.camel.builder.RouteBuilder;%0Aimport org.junit.Assert;%0Aimport org.junit.Before;%0Aimport org.junit.Test;%0Aimport org.junit.runner.RunWith;%0Aimport org.springframework.beans.factory.annotation.Autowired;%0Aimport org.springframework.boot.autoconfigure.SpringBootApplication;%0Aimport org.springframework.boot.test.context.SpringBootTest;%0Aimport org.springframework.boot.test.web.client.TestRestTemplate;%0Aimport org.springframework.test.annotation.DirtiesContext;%0Aimport org.springframework.test.context.ContextConfiguration;%0Aimport org.springframework.test.context.junit4.SpringRunner;%0A%0A/**%0A * Testing HttpMessage used with Servlet component.%0A */%0A@RunWith(SpringRunner.class)%0A@SpringBootApplication%0A@DirtiesContext%0A@ContextConfiguration(classes = ServletHttpMessageTest.class)%0A@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)%0Apublic class ServletHttpMessageTest %7B%0A%0A    @Autowired%0A    private TestRestTemplate restTemplate;%0A%0A    @Autowired%0A    private CamelContext context;%0A%0A    @Before%0A    public void setup() throws Exception %7B%0A        context.addRoutes(new RouteBuilder() %7B%0A            @Override%0A            public void configure() throws Exception %7B%0A%0A                rest().get(%22/outMessageNullBody%22)%0A                        .produces(%22text/plain%22)%0A                        .route()%0A                        // read body at least once%0A                        .log(%22$%7Bbody%7D%22)%0A                        // simulate endpoints that may put null to out message body%0A                        .process(e -%3E e.getOut().setBody(null))%0A                        // ensure reading body again does not cause an exception%0A                        .log(%22$%7Bbody%7D%22);%0A            %7D%0A        %7D);%0A    %7D%0A%0A    @Test%0A    public void testOutMessageNullBody() %7B%0A        Assert.assertNull(restTemplate.getForEntity(%22/camel/outMessageNullBody%22, String.class).getBody());%0A    %7D%0A%0A%7D%0A%0A

Add integration test to camel-servlet-starter