Changeset 10


Ignore:
Timestamp:
05/16/13 13:13:14 (11 years ago)
Author:
stoda
Message:

bug solved: invoke functions without params

Location:
trunk/objectmq/src/omq
Files:
7 added
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/objectmq/src/omq/client/proxy/Proxymq.java

    r9 r10  
    99import java.util.Map;
    1010import java.util.Properties;
    11 import java.util.Vector;
    1211
    1312import omq.Remote;
     
    159158                String corrId = java.util.UUID.randomUUID().toString();
    160159                String methodName = method.getName();
    161                 Vector<Object> args = new Vector<Object>();
    162 
    163                 if (arguments != null) {
    164                         for (Object o : arguments) {
    165                                 args.add(o);
    166                         }
    167                 }
    168160
    169161                // Since we need to know whether the method is async and if it has to
  • trunk/objectmq/src/omq/common/util/Serializer.java

    r9 r10  
    1111 *
    1212 * @author Sergi Toda <sergi.toda@estudiants.urv.cat>
    13  * @author Guillermo Guerrero <guillermo.guerrero@estudiants.urv.cat>
    1413 *
    1514 */
  • trunk/objectmq/src/omq/common/util/Serializers/GsonImp.java

    r9 r10  
    3636                List<Class<?>> types = obj.getParams(method);
    3737
    38                 JsonArray jsonArgs = (JsonArray) jsonObj.get("arguments");
     38                try {
     39                        JsonArray jsonArgs = (JsonArray) jsonObj.get("arguments");
    3940
    40                 // TODO: if (jsonArgs.size() == types.size())
    41                 int length = jsonArgs.size();
    42                 Object[] arguments = new Object[length];
     41                        // TODO: if (jsonArgs.size() == types.size())
     42                        int length = jsonArgs.size();
     43                        Object[] arguments = new Object[length];
    4344
    44                 int i = 0;
    45                 for (JsonElement element : jsonArgs) {
    46                         arguments[i] = gson.fromJson(element, types.get(i));
    47                         i++;
     45                        int i = 0;
     46                        for (JsonElement element : jsonArgs) {
     47                                arguments[i] = gson.fromJson(element, types.get(i));
     48                                i++;
     49                        }
     50
     51                        return new Request(id, method, arguments);
     52                } catch (NullPointerException e) {
     53                        return new Request(id, method, null);
    4854                }
    49 
    50                 return new Request(id, method, arguments);
    5155        }
    5256
  • trunk/objectmq/src/omq/server/remote/request/InvocationThread.java

    r9 r10  
    5454                                killed = true;
    5555                        } catch (Exception e) {
     56                                System.out.println("Error a l'Invocation Thread \nException: " + e);
    5657                                e.printStackTrace();
    57                                 System.out.println("Error a l'Invocation Thread \nException: " + e);
    5858                        }
    5959
  • trunk/objectmq/src/omq/server/remote/request/RemoteObject.java

    r9 r10  
    126126        }
    127127
    128         public Object invokeMethod(String methodName,Object[] arguments) throws Exception {
     128        public Object invokeMethod(String methodName, Object[] arguments) throws Exception {
    129129
    130130                // Get the specific method identified by methodName and its arguments
     
    134134        }
    135135
    136         private Method loadMethod(String methodName,Object[] args) throws NoSuchMethodException {
     136        private Method loadMethod(String methodName, Object[] args) throws NoSuchMethodException {
    137137                Method m = null;
    138138
    139139                // Obtain the class reference
    140140                Class<?> clazz = this.getClass();
    141                 Class<?>[] argArray = new Class<?>[args.length];
     141                Class<?>[] argArray = null;
    142142
    143                 for (int i = 0; i < args.length; i++) {
    144                         argArray[i] = args[i].getClass();
     143                if (args != null) {
     144                        argArray = new Class<?>[args.length];
     145                        for (int i = 0; i < args.length; i++) {
     146                                argArray[i] = args[i].getClass();
     147                        }
    145148                }
    146149
Note: See TracChangeset for help on using the changeset viewer.