aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArtur Signell <artur@vaadin.com>2012-12-19 09:39:45 +0000
committerVaadin Code Review <review@vaadin.com>2012-12-19 09:39:45 +0000
commit2f20812215b28d4589722dd25f149abefa1d8e91 (patch)
tree82b655a2f6eb18295b28cf21d94592875f47ba9b
parent15f8c34c25a3a39d149311d78b9338d4eefce34b (diff)
parent55142ffc2fe177505d284ef5285f4766714935b2 (diff)
downloadvaadin-framework-2f20812215b28d4589722dd25f149abefa1d8e91.tar.gz
vaadin-framework-2f20812215b28d4589722dd25f149abefa1d8e91.zip
Merge "Fix regressions in RPC handling (#10549)"
-rw-r--r--client-compiler/src/com/vaadin/server/widgetsetutils/metadata/ServerRpcVisitor.java2
-rw-r--r--client/src/com/vaadin/client/ApplicationConnection.java9
2 files changed, 9 insertions, 2 deletions
diff --git a/client-compiler/src/com/vaadin/server/widgetsetutils/metadata/ServerRpcVisitor.java b/client-compiler/src/com/vaadin/server/widgetsetutils/metadata/ServerRpcVisitor.java
index e14e8234d5..f444abf0ad 100644
--- a/client-compiler/src/com/vaadin/server/widgetsetutils/metadata/ServerRpcVisitor.java
+++ b/client-compiler/src/com/vaadin/server/widgetsetutils/metadata/ServerRpcVisitor.java
@@ -38,7 +38,7 @@ public class ServerRpcVisitor extends TypeVisitor {
for (JMethod method : methods) {
ClientRpcVisitor.checkReturnType(logger, method);
bundle.setNeedsDelayedInfo(type, method);
- bundle.setNeedsParamTypes(subType, method);
+ bundle.setNeedsParamTypes(type, method);
JType[] parameterTypes = method.getParameterTypes();
for (JType paramType : parameterTypes) {
diff --git a/client/src/com/vaadin/client/ApplicationConnection.java b/client/src/com/vaadin/client/ApplicationConnection.java
index 00b0d75c6c..2e8387c5da 100644
--- a/client/src/com/vaadin/client/ApplicationConnection.java
+++ b/client/src/com/vaadin/client/ApplicationConnection.java
@@ -2396,7 +2396,8 @@ public class ApplicationConnection {
JSONArray paramJson = new JSONArray();
Type[] parameterTypes = null;
- if (!isLegacyVariableChange(invocation)) {
+ if (!isLegacyVariableChange(invocation)
+ && !isJavascriptRpc(invocation)) {
try {
Type type = new Type(invocation.getInterfaceName(),
null);
@@ -2457,6 +2458,12 @@ public class ApplicationConnection {
makeUidlRequest(req.toString(), extraParams, forceSync);
}
+ private boolean isJavascriptRpc(MethodInvocation invocation) {
+ String connectorId = invocation.getConnectorId();
+ ServerConnector connector = connectorMap.getConnector(connectorId);
+ return connector instanceof HasJavaScriptConnectorHelper;
+ }
+
private boolean isLegacyVariableChange(MethodInvocation invocation) {
return ApplicationConstants.UPDATE_VARIABLE_METHOD.equals(invocation
.getInterfaceName())