import org.argeo.eclipse.ui.EclipseUiUtils;
import org.argeo.jcr.JcrUtils;
import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.rap.addons.fileupload.FileDetails;
-import org.eclipse.rap.addons.fileupload.FileUploadEvent;
-import org.eclipse.rap.addons.fileupload.FileUploadHandler;
-import org.eclipse.rap.addons.fileupload.FileUploadListener;
-import org.eclipse.rap.addons.fileupload.FileUploadReceiver;
+import org.eclipse.rap.fileupload.FileDetails;
+import org.eclipse.rap.fileupload.FileUploadEvent;
+import org.eclipse.rap.fileupload.FileUploadHandler;
+import org.eclipse.rap.fileupload.FileUploadListener;
+import org.eclipse.rap.fileupload.FileUploadReceiver;
import org.eclipse.rap.rwt.service.ServerPushSession;
import org.eclipse.rap.rwt.widgets.FileUpload;
import org.eclipse.swt.SWT;
// JCR : Model
node = ept.getNode();
String propName = ept.getPropertyName();
- if (FormUtils.notEmpty(txt)) {
+ if (EclipseUiUtils.isEmpty(txt)) {
if (node.hasProperty(propName))
node.getProperty(propName).remove();
} else {
if (name == null)
name = details.getFileName();
+
+ // TODO clean image name more carefully
+ String cleanedName = name.replaceAll("[^a-zA-Z0-9-.]", "_");
+
try {
- imageManager().uploadImage(context, name, stream);
+ imageManager().uploadImage(context, cleanedName, stream);
// TODO clean refresh strategy
section.getDisplay().asyncExec(new Runnable() {
@Override