나는 FlashBuilder 도구를 사용하여 젠드 AMF 서비스를 만들었습니다. 내가 시도하고 싶었던 것은 자동으로 생성 된 메소드 중 하나를 변경하여 예외를 throw하여 동작을 확인하는 것이 었습니다. 예외가 대신 내 플렉스 애플 리케이션에 연재되고있다 :젠드 AMF 및 예외 처리
[RPC 오류 faultString = "채널 연결 끊김"faultCode = "Client.Error.DeliveryInDoubt"faultDetail = "확인을 수신하기 전에 연결이 끊긴 채널" ] at mx.rpc :: AbstractInvoker/http : //www.adobe.com/2006/flex/mx/internal :: faultHandler() [E : \ dev \ 4.0.0 \ frameworks \ projects \ rpc \ src \ mx.rpc :: Responder/fault() [E : \ dev \ 4.0.0 \ frameworks \ projects \ rpc \ src \ mx \ rpc \ Responder.as : 68]에서을 mx \ rpc \ AbstractInvoker.as : (NetConnectionMessageResponder/channelDisconnectHandler()에서 mx.rpc :: AsyncRequest/fault() [E : \ dev \ 4.0.0 \ frameworks \ projects \ rpc \ src \ mx \ rpc \ AsyncRequest.as : 113] ) \ dev \ 4.0.0 \ frameworks \ projects \ rpc \ src \ mx \ messaging \ channels \ NetConnectionChannel.as : 684] at flash.events::EventDispatcher/dispatchEventFunction() at flash.events::EventDispatcher/dispatchEvent() at mx.messaging :: Channel/disconnectSuccess() [E : \ dev \ 4.0.0 \ frameworks] \ E \ \ dev \ 4.0.0 \ frameworks \ projects \ rpc \ src \ mx \ projects \ rpc \ src \ mx \ messaging \ Channel.as : 1214] at mx.messaging.channels :: NetConnectionChannel/internalDisconnect() \ MFC \ channel \ NetConnectionChannel.as : 175] at mx.messaging.channels :: AMFChannel/internalDisconnect() [E : \ dev \ 4.0.0 \ frameworks \ projects \ rpc \ src \ mx \ messaging \ channels \ AMFChannel .as : 355] at mx.messaging.channels :: AMFChannel/statusHandler() [E : \ dev \ 4.0.0 \ frameworks \ projects \ rpc \ src \ mx \ messaging \ channels \ AMFChannel.as : 445]
채널 연결이 끊어짐 ...
이것은 코드이다 RPC 오류 faultString으로는 = faultCode를 = "Client.Error.DeliveryInDoubt"faultDetail = "확인 응답이 수신되기 전에 채널이 끊어" "채널이 끊어"] :
공공 기능 getAllUser() {
$stmt = mysqli_prepare($this->connection, "SELECT * FROM $this->tablename");
$this->throwExceptionOnError();
mysqli_stmt_execute($stmt);
$this->throwExceptionOnError();
$rows = array();
mysqli_stmt_bind_result($stmt, $row->id, $row->user_group_id, $row->username, $row->password, $row->active, $row->activation_key, $row->timezone, $row->created_on, $row->modified_on);
while (mysqli_stmt_fetch($stmt)) {
$row->created_on = new DateTime($row->created_on);
$row->modified_on = new DateTime($row->modified_on);
$rows[] = $row;
$row = new stdClass();
mysqli_stmt_bind_result($stmt, $row->id, $row->user_group_id, $row->username, $row->password, $row->active, $row->activation_key, $row->timezone, $row->created_on, $row->modified_on);
}
mysqli_stmt_free_result($stmt);
mysqli_close($this->connection);
$errorCode = 1;
throw(new Exception('the error message you want', $errorCode));
return $rows;
}
공지 throw 문 :
throw (새 예외 ('원하는 오류 메시지', $ errorCode));
나는 이것을 정말로 기대하지 않았다. 어떻게 작동시킬 수 있습니까?
고맙습니다!