gpt4 book ai didi

java - 微文件客户端返回null

转载 作者:行者123 更新时间:2023-12-01 16:14:24 24 4
gpt4 key购买 nike

我创建了一个在 openliberty 中运行的简单 eclipse microprofile 服务。我的客户端文件是这样的。

@RegisterRestClient(configKey = "ra-api") 
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public interface MyClient extends AutoCloseable {

@POST
@Path("/user")
CompletionStage<JsonObject>createUser(String userInfo);
}

然后我从我的服务类中调用它,如下所示。

@Stateless(name="MyClientFunctions")
public class MyClientFunctionsImpl implements MyClientFunctions {

@Inject
@RestClient
protected MyClient raClient;

@Override
public Map<String, Object> createRemoteUser(final Map<String, Object> parameters, final Connection connection) {
String body = Json.createObjectBuilder()
.add("name", guid)
.add("email", userEmail)
.add("role", "User")
.add("invite", false)
.add("send_email", false)
.add("license", "expert")
.add("username", guid).build().toString();
try {

CompletionStage<JsonObject> userInfoFuture = raClient.createUser(body);
jsonResult = ((CompletableFuture<JsonObject>) userInfoFuture).join();
retMap.put("UserInfo", jsonResult);
}
catch (Exception e) {
Logger.getLogger(MyClientFunctionsImpl.class.getName()).log(Level.SEVERE, null, e.getMessage());
}

CompletionStage<JsonObject> userInfoFuture = raClient.createUser(body);之后行它直接转到 catch并打印

[ERROR ] null

当我检查raClient时也为空。这是什么原因?请帮我。谢谢`

最佳答案

  Logger.getLogger(MyClientFunctionsImpl.class.getName()).log(Level.SEVERE, null, e.getMessage());

这个方法调用是错误的。事实证明,如果您告诉记录器记录“null”,它就会记录“null”,这通常不是很有帮助。试试这个:

Logger.getLogger(MyClientFunctionsImpl.class.getName()).log(Level.SEVERE, "Error while creating remote user", e);

然后,您将收到一条实际的错误消息。

关于java - 微文件客户端返回null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62442767/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com