diff --git a/.classpath b/.classpath
index 36b0e57..8dea696 100644
--- a/.classpath
+++ b/.classpath
@@ -1,12 +1,12 @@
-
+
-
+
@@ -35,5 +35,5 @@
-
+
diff --git a/.project b/.project
index adc4262..ba62aee 100644
--- a/.project
+++ b/.project
@@ -35,11 +35,6 @@
-
- org.eclipse.m2e.core.maven2Builder
-
-
-
com.gwtplugins.gdt.eclipse.core.webAppProjectValidator
@@ -50,6 +45,11 @@
+
+ org.eclipse.m2e.core.maven2Builder
+
+
+
org.eclipse.jem.workbench.JavaEMFNature
diff --git a/.settings/com.gwtplugins.gdt.eclipse.core.prefs b/.settings/com.gwtplugins.gdt.eclipse.core.prefs
index f039d30..54a4067 100644
--- a/.settings/com.gwtplugins.gdt.eclipse.core.prefs
+++ b/.settings/com.gwtplugins.gdt.eclipse.core.prefs
@@ -1,4 +1,4 @@
eclipse.preferences.version=1
-lastWarOutDir=/home/francesco-mangiacrapa/eclipse-workspace/performfish-analytics-portlet-TRUNK/target/performfish-analytics-portlet-0.0.1-SNAPSHOT
+lastWarOutDir=/home/francesco-mangiacrapa/eclipse-workspace/performfish-analytics-portlet/target/performfish-analytics-portlet-0.1.0-SNAPSHOT
warSrcDir=src/main/webapp
warSrcDirIsOutput=false
diff --git a/.settings/org.eclipse.wst.common.component b/.settings/org.eclipse.wst.common.component
index 90ab436..4777faf 100644
--- a/.settings/org.eclipse.wst.common.component
+++ b/.settings/org.eclipse.wst.common.component
@@ -1,5 +1,5 @@
-
+
diff --git a/src/main/java/org/gcube/portlets/user/performfishanalytics/client/controllers/PerformFishAnalyticsController.java b/src/main/java/org/gcube/portlets/user/performfishanalytics/client/controllers/PerformFishAnalyticsController.java
index 752627f..18892ac 100644
--- a/src/main/java/org/gcube/portlets/user/performfishanalytics/client/controllers/PerformFishAnalyticsController.java
+++ b/src/main/java/org/gcube/portlets/user/performfishanalytics/client/controllers/PerformFishAnalyticsController.java
@@ -29,6 +29,7 @@ import org.gcube.portlets.user.performfishanalytics.client.event.SelectedPopulat
import org.gcube.portlets.user.performfishanalytics.client.event.SubmitRequestEvent;
import org.gcube.portlets.user.performfishanalytics.client.event.SubmitRequestEventHandler;
import org.gcube.portlets.user.performfishanalytics.client.view.LoaderIcon;
+import org.gcube.portlets.user.performfishanalytics.client.view.util.DecodeParameterUtil;
import org.gcube.portlets.user.performfishanalytics.client.viewbinder.AnalyticsPanelResult;
import org.gcube.portlets.user.performfishanalytics.client.viewbinder.ShowResult;
import org.gcube.portlets.user.performfishanalytics.client.viewbinder.SubmitRequestPanel;
@@ -88,25 +89,39 @@ public class PerformFishAnalyticsController {
Scheduler.get().scheduleDeferred(new ScheduledCommand() {
@Override
public void execute() {
-
- final String batchtypeParam = Window.Location.getParameter(PerformFishAnalyticsConstant.BATCHTYPE_PARAM);
- final String farmidParam = Window.Location.getParameter(PerformFishAnalyticsConstant.FARMID_PARAM);
+
+ Map initParams = new HashMap();
+ for (String key : Window.Location.getParameterMap().keySet()) {
+ try {
+ String dKeY = DecodeParameterUtil.base64Decode(key);
+ String eValue = Window.Location.getParameter(key);
+ String dParam = DecodeParameterUtil.base64Decode(eValue);
+ initParams.put(dKeY, dParam);
+ } catch (Exception e) {
+ GWT.log("Error: "+e.getMessage());
+ }
+ }
+
+ GWT.log("Decoded parameters: "+initParams);
+
+ final String batchtypeParam = initParams.get(PerformFishAnalyticsConstant.BATCHTYPE_PARAM);
+ final String farmidParam = initParams.get(PerformFishAnalyticsConstant.FARMID_PARAM);
if(batchtypeParam==null || batchtypeParam.isEmpty()){
- Window.alert("You must pass a valid '"+PerformFishAnalyticsConstant.BATCHTYPE_PARAM+"' param");
+ Window.alert("Error: no '"+PerformFishAnalyticsConstant.BATCHTYPE_PARAM+"' param detected");
return;
}
if(farmidParam==null || farmidParam.isEmpty()){
- Window.alert("You must pass a valid '"+PerformFishAnalyticsConstant.FARMID_PARAM+"' param");
+ Window.alert("Error: no '"+PerformFishAnalyticsConstant.FARMID_PARAM+"' param detected");
return;
}
- PerformFishInitParameter initParams = new PerformFishInitParameter();
- initParams.addParameter(PerformFishAnalyticsConstant.BATCHTYPE_PARAM, batchtypeParam);
- initParams.addParameter(PerformFishAnalyticsConstant.FARMID_PARAM, farmidParam);
+ PerformFishInitParameter performFishInitParams = new PerformFishInitParameter();
+ performFishInitParams.addParameter(PerformFishAnalyticsConstant.BATCHTYPE_PARAM, batchtypeParam);
+ performFishInitParams.addParameter(PerformFishAnalyticsConstant.FARMID_PARAM, farmidParam);
- PerformFishAnalyticsServiceAsync.Util.getInstance().decryptAndValidParameters(initParams, new AsyncCallback() {
+ PerformFishAnalyticsServiceAsync.Util.getInstance().decryptAndValidParameters(performFishInitParams, new AsyncCallback() {
@Override
public void onSuccess(PerformFishInitParameter result) {
diff --git a/src/main/java/org/gcube/portlets/user/performfishanalytics/client/view/util/DecodeParameterUtil.java b/src/main/java/org/gcube/portlets/user/performfishanalytics/client/view/util/DecodeParameterUtil.java
new file mode 100644
index 0000000..cbe2204
--- /dev/null
+++ b/src/main/java/org/gcube/portlets/user/performfishanalytics/client/view/util/DecodeParameterUtil.java
@@ -0,0 +1,30 @@
+package org.gcube.portlets.user.performfishanalytics.client.view.util;
+
+
+
+// TODO: Auto-generated Javadoc
+/**
+ * The Class DecodeParameterUtil.
+ */
+public class DecodeParameterUtil {
+
+ /**
+ * Base 64 decode.
+ *
+ * @param valueToDecode the value to decode
+ * @return the long
+ * @throws Exception the exception
+ */
+ public static String base64Decode(String valueToDecode) throws Exception{
+ try {
+ return b64decode(valueToDecode);
+ }catch (Exception e) {
+ throw new Exception("Error on decoding the parameter: "+ valueToDecode, e);
+ }
+ }
+
+ private static native String b64decode(String a) /*-{
+ return window.atob(a);
+ }-*/;
+
+}