MappableContainerException中包含的异常

时间:2012-06-28 16:04:26

标签: java web-services jersey

您好我的网络服务代码中的异常可以在此

中提供任何帮助
Jun 28, 2012 8:49:46 PM com.sun.jersey.spi.container.ContainerResponse mapMappableContainerException  
SEVERE: The exception contained within MappableContainerException could not be mapped to a response, re-throwing to the HTTP container  
java.lang.NoClassDefFoundError: Could not initialize class com.ibm.toro.utility.tenantconfig.DBManager  
    at com.ibm.toro.utility.tenantconfig.TenantConfigDB.getAllHotwords(TenantConfigDB.java:88)  
    at com.ibm.toro.utility.tenantconfig.TenantConfigDB.getAnalysisConf(TenantConfigDB.java:99)  
    at com.ibm.toro.utility.tenantconfig.GetTenantConfig.getTenantConfig(GetTenantConfig.java:58)  
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)  
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)  
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)  
    at java.lang.reflect.Method.invoke(Unknown Source)  
    at com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60)  
    at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$TypeOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:185)  
    at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75)  
    at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:288)  
    at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)  
    at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108)  
    at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)  
    at com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84)  
    at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1469)  
    at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1400)  
    at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1349)  
    at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1339)  

2 个答案:

答案 0 :(得分:3)

看起来你在类路径上遗漏了一些东西。您需要修复的例外是来自TenantConfigDB.getAllHotwords()的NoClassDefFoundException。 MappableContainerException只是一个包装器异常,如果底层代码抛出了一些不能映射到响应的东西(在这种情况下它是NoClassDefFoundException)。似乎DBManager类的某些依赖项无法加载,因为它不在类路径上。

答案 1 :(得分:0)

当您使用new启动对象并尝试打印或对其执行任何操作时,会发生这种情况。下面是抛出堆栈溢出错误的示例:

JSONObject outerMostObj = new JSONObject();
outerMostObj.put("authFailure", outerMostObj);
System.out.println("Rretrun vaklueeee" + outerMostObj);

解决 - >您需要为对象指定适当的值并打印或执行您想要的任何操作。简单! :)

JSONObject outerMostObj = new JSONObject();
JSONObject outerMostObj = fetch.getJSONValue(); //added this one
outerMostObj.put("authFailure", outerMostObj);
System.out.println("Rretrun vaklueeee" + outerMostObj);