Обработка пользовательских исключений Java с вызываемой причиной в flex - PullRequest
0 голосов
/ 08 марта 2012

Я использую пользовательское исключение Java, чтобы предоставить гибкому клиенту больше информации, чем само исключение. Мое исключение расширяет исключение, и оно имеет атрибут с необходимой информацией для клиента.

Что ж, моя проблема в следующем: когда я создаю свое исключение, если я вызываю super () или super ("message"), гибкий клиент может получить доступ ко всей информации должным образом. Но если я создаю исключение по причине Throwable, супер (причине), то гибкий клиент может получить доступ только к stackTrace.

public class MyException extends Exception {

    private String errorCode;

 public String getErrorCode() {
        return errorCode;
    }

    public void setErrorCode(String errorCode) {
        this.errorCode = errorCode;
    }

 public MyException(String msg) {
        super(msg);
    }

public MyException(Throwable cause) {
        super(cause);
    }
}

Используя MyException (String msg), гибкий клиент может получить доступ к errorCode Используя MyException (Throwable причина), гибкий клиент не может получить доступ к errorCode

На гибкой стороне код:

var faultEvent : FaultEvent = FaultEvent( event );
var errorMessage:ErrorMessage = faultEvent.message as ErrorMessage;
var codeError:String = errorMessage.rootCause.errorCode;

Знаете ли вы, что происходит?

1 Ответ

0 голосов
/ 08 марта 2012

Проблема в том, что вы используете final.Не используйте ключевое слово final.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...