Java Microprofile@Fallback在本机映像模式下不工作

Java Microprofile@Fallback在本机映像模式下不工作,java,quarkus,microprofile,graalvm-native-image,smallrye,Java,Quarkus,Microprofile,Graalvm Native Image,Smallrye,在Quarkus上运行以下代码: @Singleton @RegisterForReflection public class StoreService { private static final Logger LOGGER = Logger.getLogger(StoreService.class); @Inject @RestClient StoresApiClient client; @CacheResult(cacheName = "sto

在Quarkus上运行以下代码:

@Singleton
@RegisterForReflection
public class StoreService {

    private static final Logger LOGGER = Logger.getLogger(StoreService.class);

    @Inject
    @RestClient
    StoresApiClient client;

    @CacheResult(cacheName = "stores")
    @Fallback(fallbackMethod = "allFallbackStores")
    public List<Store> allStores() {
        // call REST API using client
    }

    @SuppressWarnings("unused")
    public List<Store> allFallbackStores() {
        try {
            LOGGER.info("Falling back to internal stores list");
            ...
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }
}
@Singleton
@寄存器反射
公共类存储服务{
私有静态最终记录器=Logger.getLogger(StoreService.class);
@注入
@RestClient
StoresAPI客户机;
@CacheResult(cacheName=“stores”)
@回退(fallbackMethod=“allFallbackStores”)
公共列表所有商店(){
//使用客户端调用RESTAPI
}
@抑制警告(“未使用”)
公共列表所有FallbackStores(){
试一试{
LOGGER.info(“返回内部存储列表”);
...
}捕获(IOE异常){
抛出新的运行时异常(e);
}
}
}

回退机制在常规JDK模式下正常工作。另一方面,在本机映像模式下,
@Fallback
注释不受重视,并且在API调用失败后引发异常。如果有
@RegisterForReflection
注释,原因可能是什么?

您好,您能告诉我们在本机模式下发生的异常吗?没有与
@Fallback
本身相关的异常。如果
allStores
调用在任何异常情况下结束,则流不会重定向到
allFallbackStores
方法(在常规JDK模式下,它工作正常,并且执行了
allFallbackStores
)OK,这似乎是一个错误,您能在Quarkus Github repo中打开问题吗?理想情况下使用复制机?我无法使用
Quarkus 1.2.1.Final
复制问题,可能此版本中已经修复了该问题。谢谢你的时间@loicmathieu