2014-11-21 59 views
0

我試圖派遣故障事件GraniteDS的服務什麼是GraniteDS的服務調度故障事件

方法調用(柔性)simpliest方式:

userService.addUser(user, null, function addUserFault(e:TideFaultEvent):void { 
       Alert.show(e.fault.faultString); 
      }); 

服務器方法(春季):

@Override 
    public User addUser(User user) throws Exception{ 
     if(findUserByName(user.getUsername()) != null) 
      throw new Exception("Username Already Exist"); 
     entityManager.persist(user); 
     return user; 
    } 

但是我得到的是客戶端的沉默和服務器控制檯中的java.lang.NoSuchMethodException
如何使用默認graniteds異常轉換器將錯誤事件傳遞給客戶端(Flex)?

回答

0

已解決。我不知道它是否是一個錯誤,但你不能將結果函數設置爲null並僅指定錯誤函數 - 這不會工作。我的電話的方法應該是這樣的:

userService.addUser(user, function addUserResult(e:TideResultEvent){ 
       // do nothing 
      }, function addUserFault(e:TideFaultEvent):void { 
       Alert.show(e.fault.faultString); 
      }); 
在遠程方法這種情況下,Java異常

將被髮回成彎曲TideFaultEvent。