aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-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())