1

在扩展我的应用程序功能的过程中,我在 applicationContext 中的现有 bean 定义中添加了一些额外的 bean 引用。我在我的 java 类中包含了他们的 getter 和 setter。A类现在新引用了B类和C类,在A类中,我为B和C添加了getter和setter,并在A类内部的方法中使用了这些getter。Bean B和C无非是Maps,还有一个D类我将值放入这些 bean 中。现在,我没有在生产机器上再次生成整个战争文件,而是在我的本地副本中生成了战争文件。从这场战争中,我选择了 A 类和 D 类,并用这些新类替换了生产机器上的类。另外,我替换了 applicationContext.xml。在生产机器上重新启动tomcat后,我在A类中得到了一个N​​PE,这是因为bean B的getter。

我能做些什么来解决这个问题?我不想在我的生产机器上重新部署整个战争。

4

1 回答 1

0

如果你重新启动 tomcat,它将解压所有存在的 war 文件,覆盖你手动完成的任何更改。如果我理解正确,您正试图将类文件复制到您的爆炸战争中。不是一个特别好的主意。

您不必在部署战争文件的同一台机器上生成战争文件(实际上这很不寻常)。您可能需要注意应用特定的设置。

于 2012-08-14T13:57:37.423 回答