有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java无法使用Spring转换器将枚举转换为int

我的应用程序使用BlazeDS在Flex和Java之间进行通信。我使用Spring在Java中集成BlazeDS

我有一个名为TransactionStatus的枚举。在flex端,相应的属性设置为整数。我试图用custom converters来处理这个转换。以下是我的转换器:

public class TransactionStatusIntConverter implements Converter<TransactionStatus, Integer> {

    @Override
    public Integer convert(TransactionStatus src) {
        if(src == null){
            return 0;
        } else {
            return src.getValue();
        }
    }

}

public class IntTransactionStatusConverter implements Converter<Integer, TransactionStatus> {

    @Override
    public TransactionStatus convert(Integer src) {
        return TransactionStatus.fromInt(src);
    }

}

当从Flex客户端向Java发送数据时,转换成功,我得到了一个TransactionStatus实例。但当从Java向Flex发送数据时,转换函数永远不会执行。这两个转换器都已在我的ConfigProcessor类中注册

@Override
protected void configureConverters(ConverterRegistry registry) {
    registry.addConverter(new IntTransactionStatusConverter());
    registry.addConverter(new TransactionStatusIntConverter());
}

这是怎么回事


共 (0) 个答案