Hello people!
Have question about rewind
I trying to write simple app with two pages
Home page - for entering directory path
List page - for list files of directoryfor loop i use ListEdit and ListEditMap, which i init in pageBeginRender in List template i show list of files, each file has delete button task is very simple - on press delete button remove file from directory. but after pressing delete button i receive NullPointerExceptionproblem is in rewind - in rewind form invoke pageBeginRender for init ListEditMap but in that time variable path is not defined yet and list cann't initialized
So how to solve such problem without saving directory path in session? Full app without tapestry 3.0 libs as attachment. _____________________ |Source of List page | --------------------------------------public abstract class ListPage extends BasePage implements PageRenderListener{
/* (non-Javadoc)
* @see
org.apache.tapestry.event.PageRenderListener#pageBeginRender(org.apache.tapestry.event.PageEvent)
*/
public void pageBeginRender(PageEvent event) {
if(!event.getRequestCycle().isRewinding()) {
File dir=new File(getPath());
String[] files=dir.list();
System.out.println(files);
ListEditMap editMap=new ListEditMap();
for (int i = 0; i < files.length; i++) {
editMap.add(files[i], files[i]);
}
setListEditMap(editMap);
}
}
public void formSubmit(IRequestCycle cycle) {
File fileName=new
File(getFile()+File.pathSeparator+getDelete());
if(fileName.isFile())
fileName.delete();
System.out.println(getFile());
}
public void synchronize(IRequestCycle cycle)
{
ListEditMap map = getListEditMap();
String fileName = (String) map.getValue();
if (fileName == null)
{
throw new PageRedirectException(this);
}
setFile(fileName);
}
public abstract void setPath(String path);
public abstract String getPath();
public abstract void setFile(String file);
public abstract String getFile();
public abstract void setDelete(String file);
public abstract String getDelete();
public abstract void setListEditMap(ListEditMap editMap);
public abstract ListEditMap getListEditMap();
test_app.tar.bz2
Description: application/bzip
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
