private String communicationErrorMessage;
private String communicationErrorUrl;
private boolean useDebugIdInDom = true;
+ private boolean usePortletURLs = false;
+ private String portletActionURLBase;
private Class<? extends Paintable>[] classes = new Class[1024];
private static ArrayList<ApplicationConnection> unstartedApplications = new ArrayList<ApplicationConnection>();
private static ArrayList<ApplicationConnection> runningApplications = new ArrayList<ApplicationConnection>();
+ public boolean usePortletURLs() {
+ return usePortletURLs;
+ }
+
+ public String getPortletActionURLBase() {
+ return portletActionURLBase;
+ }
+
public String getRootPanelId() {
return id;
}
this.@com.vaadin.terminal.gwt.client.ApplicationConfiguration::communicationErrorMessage = jsobj.comErrMsg.message;
this.@com.vaadin.terminal.gwt.client.ApplicationConfiguration::communicationErrorUrl = jsobj.comErrMsg.url;
}
-
+ if (jsobj.usePortletURLs) {
+ this.@com.vaadin.terminal.gwt.client.ApplicationConfiguration::usePortletURLs = jsobj.usePortletURLs;
+ }
+ if (jsobj.portletActionURLBase) {
+ this.@com.vaadin.terminal.gwt.client.ApplicationConfiguration::portletActionURLBase = jsobj.portletActionURLBase;
+ }
} else {
$wnd.alert("Vaadin app failed to initialize: " + this.id);
}
final String rd = uidl_security_key + VAR_BURST_SEPARATOR + requestData;
console.log("Making UIDL Request with params: " + rd);
- String uri = getAppUri() + "UIDL" + configuration.getPathInfo();
+ String uri;
+ if (configuration.usePortletURLs()) {
+ uri = configuration.getPortletActionURLBase() + "&UIDL=true";
+ } else {
+ uri = getAppUri() + "UIDL" + configuration.getPathInfo();
+ }
if (repaintAll) {
// collect some client side data that will be sent to server on
// initial uidl request
// TODO figure out how client and view size could be used better on
// server. screen size can be accessed via Browser object, but other
// values currently only via transaction listener.
- uri += "?repaintAll=1&" + "sh=" + screenHeight + "&sw="
+ if (configuration.usePortletURLs()) {
+ uri += "&";
+ } else {
+ uri += "?";
+ }
+ uri += "repaintAll=1&" + "sh=" + screenHeight + "&sw="
+ screenWidth + "&cw=" + clientWidth + "&ch="
+ clientHeight + "&vw=" + offsetWidth + "&vh="
+ offsetHeight + "&fr=" + token;
}
}
if (windowName != null && windowName.length() > 0) {
- uri += (repaintAll ? "&" : "?") + "windowName=" + windowName;
+ uri += (repaintAll || configuration.usePortletURLs() ? "&" : "?") + "windowName=" + windowName;
}
if (!forceSync) {