我有一个有多个模块的Quarkus项目。
└── Parent module
└── Common module
└── child module
└── some module
在公共模块中,我添加了以下依赖项(遵循本指南 https://quarkus.io/guides/rest-client)。
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-rest-client</artifactId>
</dependency>
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-rest-client-jackson</artifactId>
</dependency>
子模块将公共模块作为依赖项。
以及我在子模块中使用的代码片段。
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
@ApplicationScoped
@RegisterRestClient(configKey = "URL")
@RegisterClientHeaders(AuthorizationHeaderFactory.class)
public interface MyRestClient {
@POST
@Path("/{id}")
FooResponse<FooResponseData> makeFooPayout(@PathParam("id") String accountId,
FooRequest<FooData> requestData);
}
}
并从另一个ApplicationScoped类调用它:
FooResponse<FooResponseData> fooResponse = myRestClient.makeFooPayout(
payoutDTO.id(),
fooRequest
);
当在纯模式下运行应用程序时,它会抛出类不被发现例外:组织
。
我偶然发现了这个(https://quarkus.io/guides/logging#logging-adapters),以为它会为我解决这个问题。
我按照指南尝试从父模块中的rest客户端依赖项中排除日志记录。
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-rest-client</artifactId>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-rest-client-jackson</artifactId>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
并按照文档中的建议添加了一个适配器:
<dependency>
<groupId>org.jboss.logging</groupId>
<artifactId>commons-logging-jboss-logging</artifactId>
</dependency>
为什么这不能解决问题?我错过了什么吗?我应该排除子级内部的日志记录依赖项pom.xml?
按照本指南,这一问题现已解决https://quarkus.io/guides/logging#logging-适配器。
在pom内部的公共模块中,我将此添加到所有依赖项中(不确定是否所有依赖项都需要排除< code>commons-logging)。
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
并且还添加了一个JBoss日志适配器,如Quarkus留档中建议的那样。
<dependency>
<groupId>org.jboss.logging</groupId>
<artifactId>commons-logging-jboss-logging</artifactId>
</dependency>
我有一个从服务器端抛出的异常,我希望在客户端捕捉到这个异常。异常应该使用Jersey通过REST发送。这是我目前所掌握的: 定义我的异常:
我有一个使用RESTEasy的简单客户端,如下所示: 服务器配置为在以及一条有用的信息。正在抛出一个。除了包装在中之外,我如何使捕获异常并以字符串形式返回响应的有用消息。我尝试了各种实现,但似乎都是正确的。上述代码从未调用。我错过了什么? 我目前的解决方法是使用,然后执行并将原始状态填充到响应实体中。这样我就避免了异常抛出。
我的项目是客户端/服务器,客户端发送一个对象到服务器,服务器响应,所有这些都是通过RMI 客户项目 //接口 //我需要把它发给的班级 //客户端 //服务器项目 //接口公共接口RMI_接口扩展了远程{ //类,我将发送和接收它公共类Employee实现可序列化的{int ID; //类来保存所有接收到的对象公共类Maneger{ //服务器公共类RMI_server扩展了UnicastRemo
问题内容: 到现在为止,我主要是利用,,用于构建Web应用程序技术堆栈。关键是,提到的堆栈使用服务器端模式。Web浏览器的主要作用仅限于请求/响应周期(+客户端验证)。数据检索,业务逻辑,接线和验证是服务器端的主要职责。 我对 AngularJS 框架有几个疑问,这些疑问是由我阅读过以下引号引起的: 从 AngularJS教程中 : 对于Angular应用,我们鼓励使用Model-View-Con
关于AngularJS框架,我有几个问题是从我读到的以下引用中得到启发的: 从AngularJS教程: 对于有角度的应用程序,我们鼓励使用Model-View-Controller(MVC)设计模式来解耦代码并分离关注点。 我知道我的问题有些奇怪,但我认为原因是,我对传统的服务器端MVC模式有些敏感。我确信有人已经做了同样的转变。