Многие объяснения уже присутствуют, чтобы объяснить, как это происходит и как это исправить, но вы также должны следовать рекомендациям, чтобы избежать NullPointerException
вообще.
См. также: A хороший список лучших практик
Я бы добавил, очень важно, хорошо использовать модификатор final
. Использование "окончательной" модификатор, когда это применимо в Java
Сводка:
final
для обеспечения хорошей инициализации. @NotNull
и @Nullable
if("knownObject".equals(unknownObject)
valueOf()
поверх toString (). StringUtils
StringUtils.isEmpty(null)
. Прежде, чем назвать LogManager. GetLogger ("")
необходимо назвать log4net. Конфигурация. XmlConfigurator. Настройте (); В приложении ASP.NET Вы, вероятно, хотите поместить этот вызов в Application_Start
Да, сделайте это как Anson сказало. Кроме того, если Вы звоните, Настраивают в библиотеке классов, можно сделать это путем добавления атрибута к классу:
[assembly: XmlConfigurator(Watch = true)]
и если Вы используете log4net.config
файл, используйте его как этот вместо этого:
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]