Я работаю со средой knopflerfish, где я пытаюсь использовать функции из удаленного объекта с помощью ServiceRegistration. Я объясню в качестве примера.
Я создал две связки, A и B . Пакет B имеет класс C , где я реализовал два метода:
public void printIt(JSONObject toPrint) {
logger.debug(toPrint);
}
public void printIt(String toPrint) {
logger.debug(toPrint);
}
public JSONObject returnedJ() {
return (new JSONObject());
}
public String returnedM() {
return "hello";
}
Этот класс C инициализируется в активаторе B и регистрируется с помощью ServiceRegistration, поэтому его можно использовать в качестве удаленного объекта из пакета A .
Активатор A просто получает зарегистрированный объект C , чтобы использовать его методы, и здесь возникает проблема. Удаленный объект может использоваться, но только методы, которые используют String, работают, а JSONObject - нет. Это случилось с кем-нибудь? Что может быть объяснением?
Я протестировал это поведение, отлаживая и используя try / catch, и ошибки не отображаются. Также нужно сказать, что при использовании методов JSONObject пакет A зависает и в методе нет сигнала из класса C . Сейчас я буду анализировать объекты из JSONObject в String в комплекте A и из String в JSONObjects в комплекте B , но это все еще меня раздражает.
PD: я использую org.codehaus.jettison.json.JSONObject .
Заранее спасибо.