json - Jersey 2.0 和 Moxy 内部服务器错误但没有服务器日志

标签 json jersey jax-rs pojo moxy

我遵循 Jersey 2.0 文档( https://jersey.java.net/documentation/latest/user-guide.html#json.moxy ),修改 pom.xml,包含 jersey-media-moxy 工件,编译安装。我可以为 Produces 和 Consumes 案例获得基本的 POJO 到 JSON 映射工作。

但是,当我尝试使用一些具有复杂数据类型作为资源返回类型的 POJO 时,我收到了很多状态 500 内部服务器错误,但没有任何服务器日志。这很烦人。有谁知道这是一个错误还是我错过了配置?

顺便说一句,为了对 POJO 对象使用 Moxy 映射,POJO 需要有一个空参数构造函数。还有其他要求吗?

最佳答案

我遇到了同样的问题,并找到了这篇文章:

  • http://jersey.576304.n2.nabble.com/Missing-MOXy-Log-Messages-In-Tomcat-td7580992.html

  • 作者实现了 ApplicationEventListener 来记录 Moxy 抛出的异常。这是我的实现(需要在您的应用程序中注册):
    public class ExceptionListener implements ApplicationEventListener {
    
        @Override
        public void onEvent(ApplicationEvent event) {
    
        }
    
        @Override
        public RequestEventListener onRequest(RequestEvent requestEvent) {
            return new ExceptionRequestEventListener();
        }
    
        public static class ExceptionRequestEventListener implements RequestEventListener{
            private final Logger logger;
    
            public ExceptionRequestEventListener(){
                logger = Logger.getLogger(getClass());
            }
    
            @Override
            public void onEvent(RequestEvent event) {
                switch (event.getType()){
                    case ON_EXCEPTION:
                        Throwable t = event.getException();
                        logger.error("Found exception for requestType: "+event.getType(), t);
                }
            }
        }
    }
    

    关于json - Jersey 2.0 和 Moxy 内部服务器错误但没有服务器日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17667442/

    相关文章:

    java - html 服务器 grizzly+jersey(.jar 存档中的 .html)

    java - 在 jax-rs Web 服务中使用 java 接口(interface)的好处?

    php - 解析文本文档的最佳方式

    javascript - 如何更改嵌套( Mongoose )回调中的 json 值

    java - 将 Jetty 与 JAX-RS-Jersey 集成

    java - 未找到 Jersey 类...但它就在那里

    http - 使用 JAX-RS 的 "fake"DELETE 和 PUT 方法的最佳方法是什么?

    java - 如何创建带有可选参数的 REST API?

    java - 使用 jackson wtih java 将 json 字符串转换为 pojo 时如何处理空值或 null 值

    php - PHP JSON解码数组中的数组到字符串的转换错误