code: protected Method resolveTargetMethod(Message message,
                                           FieldDescriptor payloadField) {
          Method targetMethod = fieldToMethod.get(payloadField);
  
          if (targetMethod == null) {
              // look up and cache target method; this block is called only once
              // per target method, so synchronized is ok
              synchronized (this) {
                  targetMethod = fieldToMethod.get(payloadField);
                  if (targetMethod == null) {
                      String name = payloadField.getName();
                      for (Method method : service.getClass().getMethods()) {
                          if (method.getName().equals(name)) {
                              try {
                                  method.setAccessible(true);
                              } catch (Exception ex) {
                                  log.log(Level.SEVERE,"Error accessing RPC method",ex);
                              }
  
                              targetMethod = method;
                              fieldToMethod.put(payloadField, targetMethod);
                              break;
                          }
                      }
                  }
              }
          }
  
          if (targetMethod != null) {
              return targetMethod;
          } else {
              throw new RuntimeException("No matching method found by the name '"
                      + payloadField.getName() + "'");
          }
      }
docs: Find out which method to call on the service bean.