小编Mat*_*ano的帖子

spring-boot w/embedded tomcat不会向控制器发送请求

我有一个使用spring-boot和嵌入式Tomcat容器的应用程序.

据我所知,我的代码与spring-boot 示例项目相同.但是,当我运行我的测试时,我得到的是404而不是200(在我尝试发布的情况下,而不是让我收到405,这与Tomcat设置错误一致):

Failed tests:
UserControllerTest.testMethod:45 Status expected:<200> but was:<404>
Run Code Online (Sandbox Code Playgroud)

我的基于Java的配置(省略了一些配置类):

@Configuration
@ComponentScan
@EnableAutoConfiguration
@Import({ ServiceConfig.class, DefaultRepositoryConfig.class })
public class ApplicationConfig {

    private static Log logger = LogFactory.getLog(ApplicationConfig.class);

    public static void main(String[] args) {
        SpringApplication.run(ApplicationConfig.class);
    }

    @Bean
    protected ServletContextListener listener() {
        return new ServletContextListener() {
            @Override
            public void contextInitialized(ServletContextEvent sce) {
                logger.info("ServletContext initialized");
            }

            @Override
            public void contextDestroyed(ServletContextEvent sce) {
                logger.info("ServletContext destroyed");
            }
        };
    }
}
Run Code Online (Sandbox Code Playgroud)

UserController.java:

@RestController
@RequestMapping("/")
public class UserController {

    @Autowired
    UserService userService;

    @RequestMapping(method = RequestMethod.GET) …
Run Code Online (Sandbox Code Playgroud)

java spring tomcat spring-boot

11
推荐指数
1
解决办法
8628
查看次数

使用Jackson和Mockito序列化对象时的无限递归

我在使用MockMvc,Mockito和Jackson测试Spring控制器时遇到了这个问题,所以我做了一个简单的类来测试杰克逊的表现.我使用的是jackson-databind:2.3.1和mockito-core:1.9.5.

鉴于此类:

import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.Serializable;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;

public class Person implements Serializable {
    private String name;
    private int age;

    // Public getters and setters...

    public static void main(String[] args) {
        String name = "Bob";
        int age = 21;
        ObjectMapper objectMapper = new ObjectMapper();

        // attempt serialization with real object
        Person person = new Person();
        person.setName(name);
        person.setAge(age);
        try {
            System.out.println(objectMapper.writeValueAsString(person));
        } catch (JsonProcessingException e) {
            e.printStackTrace();
            System.err.println("Failed to serialize real object");
        }

        // attempt …
Run Code Online (Sandbox Code Playgroud)

java serialization json mockito jackson

11
推荐指数
2
解决办法
6693
查看次数

标签 统计

java ×2

jackson ×1

json ×1

mockito ×1

serialization ×1

spring ×1

spring-boot ×1

tomcat ×1