У меня есть веб-приложение на Java SEAM2, работающее на JBOSS.
В моем приложении я пытаюсь создавать каталоги на лету / во время выполнения.
Что происходит, когда эти каталоги создаются, но когда я пытаюсь записать в них файл, возникает исключение нулевого указателя.Итак, перезапустил мой сервер, и тогда все работает хорошо, почему?
if(ClassName.class.getClassLoader().getResource("roles/" + role ) == null)
{
//create directory with role name
String rolePath = ClassName.class.getClassLoader().getResource("roles").getPath();
rolePath = rolePath.substring(1, rolePath.length());
rolePath = rolePath.replace("/", "\\");
rolePath = rolePath + "\\" + role;
if( !(new File(rolePath).mkdir()))
{
this.addMessage(FacesMessage.SEVERITY_ERROR, "Error Creating Role Directory");
return;
}
}
if(ClassName.class.getClassLoader().getResource("roles/" + role + "/" + app ) == null)
{
String appPath = ClassName.class.getClassLoader().getResource("roles/" + role).getPath();
appPath = appPath.substring(1, appPath.length());
appPath = appPath.replace("/", "\\");
appPath = appPath + "\\" + app;
File appFolder = new File(appPath);
if( !(appFolder.mkdir()))
{
this.addMessage(FacesMessage.SEVERITY_ERROR, "Error Creating Role Directory");
return;
}
}
Я предполагаю, что, поскольку я использую getClassLoader, он не обновляется новыми созданными файлами