1

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 に戻ります。しかし、私のサービスが HibernateException などの何かをスローした場合、それはフレックスに戻りません。

これは私の設定です:

<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>

何か不足していますか?ありがとう。

4

1 に答える 1

0

Flash Builder を再インストールすることで問題が解決しました。

于 2013-02-04T11:39:49.560 に答える