ExceptionTranslator的异常不会返回flex

时间:2013-02-02 22:00:37

标签: java spring flex spring-security blazeds

我正在使用Flex + Blazeds + Spring Security。我的ExceptionTranslator会发生一些奇怪的事情。

public class ProjectExceptionTranslator implements ExceptionTranslator {

   @Override
   public boolean handles(Class<?> arg0) {
        return true;
   }

   @Override
   public MessageException translate(Throwable throwable) {
        MessageException exception = new MessageException();

        if (throwable instanceof BadCredentialsException) {
            exception.setCode("08");
            exception.setMessage("Login error.");
        }

        if (throwable instanceof HibernateException) {
            exception.setCode("16");
            exception.setMessage("Data base error.");
        }

    return exception;
  }

}

春天抛出的所有消息,例如:BadCredentialsException,返回flex。但是如果我的服务抛出了一些ex:HibernateException,它就不会返回flex。

这是我的配置:

<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping" />

<bean
    class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" />

<flex:message-broker>                       
    <flex:exception-translator ref="projectExceptionTranslator" />
    <flex:secured />
</flex:message-broker>

我错过了什么吗?感谢。

1 个答案:

答案 0 :(得分:0)

我通过重新安装Flash Builder解决了这个问题。