【问题标题】:Spring injection for REST servlet - java.lang.NullPointerException errorREST servlet 的 Spring 注入 - java.lang.NullPointerException 错误
【发布时间】:2014-03-01 12:01:51
【问题描述】:

我正在使用 Spring 注入 REST servlet,看起来注入出现问题。这是错误:

01/03/14 11:43:02:260 GMT] 0000001e ContainerResp E RuntimeException 无法映射到响应,重新抛出到 HTTP 容器 java.lang.NullPointerException

【问题讨论】:

  • 发布堆栈跟踪到问题。还将您的基本包更改为base-package="com.ibm.mt"

标签: java spring rest nullpointerexception code-injection


【解决方案1】:

您似乎有两个问题,不确定哪个对您影响最大。

  1. 您缺少应将后端异常类型映射到 HTTP 响应的 ExceptionMapper

  2. 无论代码在 REST 容器中运行的事实如何,您都会收到 NullPointerException。也许如果您查看此 NullPointerException 的堆栈跟踪,您可能会得到有关问题所在的提示。

【讨论】:

  • NullPinterException 发生在这一行: String result = transactionBo.save();看起来 transactionBo 没有正确注入。
  • 确实如此。似乎 TodosResource 类不是 Spring 管理的,因为在您的 applicationContext.xml 中您只扫描包 com.ibm.mt.model,而 TodosResource 在包 com.ibm.mt.resources 中。此外,您可能需要使用 Spring 的构造型注释来注释此类,例如@Component,以使其由 Spring 管理。
  • 非常感谢,原因是缺少@Component。
猜你喜欢
  • 1970-01-01
  • 2015-10-04
  • 2013-09-15
  • 2017-01-16
  • 1970-01-01
  • 2017-07-26
  • 1970-01-01
  • 1970-01-01
  • 2017-05-17
相关资源
最近更新 更多