Details
-
Bug
-
Resolution: Cannot Reproduce
-
Normal
-
5.0.6
-
None
-
None
-
tomcat 6
Description
original thread:
http://sourceforge.net/tracker/?func=detail&aid=3346492&group_id=152762&atid=785191
While uploading larger files (from around 100 - 150 Megabyte) via standard zk upload mechanism a NullPointerException is thrown in AuUploader line 103. This mostly happens when one uploads a file over the network. The try of reproduction on a local machine failed.
22.06.2011 17:25:06 org.zkoss.zk.au.http.AuUploader handleError:217
SCHWERWIEGEND: Failed to upload
>>java.lang.NullPointerException
>> at org.zkoss.zk.au.http.AuUploader.service(AuUploader.java:103)
>> at org.zkoss.zk.au.http.DHtmlUpdateServlet.doGet(DHtmlUpdateServlet.java:431)
>> at org.zkoss.zk.au.http.DHtmlUpdateServlet.doPost(DHtmlUpdateServlet.java:471)
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>> at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>> at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
>>...
Propably this defect goes into the same direction like this here: https://sourceforge.net/tracker/index.php?func=detail&aid=3313630&group_id=152762&atid=785191
I used the following zuml code and composer in a fresh eclipse project:
zuml:
<?page title="Auto Generated index.zul"?>
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit"?>
<zk>
<window id="picWin"
title="Hello World!! (ZK Version: ${desktop.webApp.version})"
border="normal" width="100%" apply="upload.UploadComposer">
<button id="upload" label="App-Load File"
upload="true,maxsize=${desktop.webApp.configuration.maxUploadSize}" />
<button id="clear" label="Clear" disabled="true"></button>
You see:
<label id="imgName"
value="@
" />
<vbox id="pics" width="600px" height="300px">
</vbox>
</window>
</zk>
Composer:
package upload;
import org.zkoss.util.media.Media;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.event.UploadEvent;
import org.zkoss.zk.ui.util.GenericForwardComposer;
import org.zkoss.zul.Button;
import org.zkoss.zul.Image;
import org.zkoss.zul.Messagebox;
import org.zkoss.zul.Vbox;
public class UploadComposer extends GenericForwardComposer {
private static final long serialVersionUID = -7909962998642083404L;
private Media media;
private final Image image = new Image();
private Vbox picWin$pics;
private Button picWin$clear;
private final static String PIC_ID = "thisPic";
public Media getMedia() {
return media;
}
public void setMedia(Media med) {
this.media = med;
}
public void onClick$clear() {
setMedia(null);
picWin$pics.removeChild(picWin$pics.getFellow(PIC_ID));
picWin$clear.setDisabled(true);
}
public void onUpload$upload(UploadEvent event) throws Throwable {
setMedia(event.getMedia());
if (event.getMedia() instanceof org.zkoss.image.Image) {
image.setContent((org.zkoss.image.Image) media);
image.setId(PIC_ID);
final Component first = picWin$pics.getFirstChild();
if (null != first)
else {
try {
Messagebox.show("Not an image: " + media, "Error", Messagebox.OK, Messagebox.ERROR);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}