问题标签 [thorntail]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 为什么 CORSFilter 与 ExceptionMapper 冲突?
我有这个 Java thorntail 应用程序,我想在其中捕获所有未捕获的异常。
我想回复 500 而不是 JAXRS 提供的默认错误页面,所以我只使用了ExceptionMapper<Throwable>
.
使用 Postman 进行测试没有问题,但是一旦我尝试在浏览器中进行 AJAX 调用,我最终发送了 OPTIONS 请求,但失败了。
CORS 部分也是通过实现在应用端实现的ContainerResponseFilter
。
我有一种感觉 MATCHING 发生在请求的早期阶段,只有后来 CORSFilter 才会对响应产生影响。
我已经尝试过的几件事:
- @PreMatching
- @优先
- 试图导入 jboss.resteasy CorsFilter
- 试图通过 过滤掉异常
exception instanceof DefaultOptionsMethodException
,但最终发现DefaultOptionsMethodException
它不在类路径中,它的内部(?)包包含在 thorntails 类路径(??) - ...
示例存储库:https ://github.com/trimpirim/cors-filter-conflict-exception-mapper
interface - 通过代理接口从另一个微服务访问 thorntail 微服务抛出 java.util.ServiceConfigurationError
两个 thorntail 微服务已部署在我的 localhost 端口 8080 [作为 rest api 服务器] 和 8180 [作为 rest-client 之一]。$java -jar client-thorntail.jar
如果客户端项目已部署并且一切正常,则客户端微服务可以访问服务器上的其余 API 。但是,如果使用客户端项目部署,$mvn thorntail:run
则客户端服务部署没有错误;但是当rest api本身通过服务器微服务上的代理接口内部调用rest api时抛出以下异常:
我尝试使用 thorntail 版本 2.5.0.Final 和 2.6.0.Final。但是,不固定。任何修复或解决方法都会有所帮助。
wildfly - Thorntail 升级后的 ModuleNotFoundException
我刚刚将我的应用程序的 Thorntail 版本从 2.5.0.Final 升级到了 2.6.0。最后。我的应用程序正在使用一个模块(用于授权),它位于一个单独的 git repo 中,所以我将它包含在我的 pom.xml 中。
由于升级我在调用模块时收到 ModuleNotFoundException (触发授权)
问题是,模块的org.apache.santuario.xmlsec依赖项没有捆绑在 thorntail jar 中,而所有其他依赖项都存在于 jar 中。
这是使用的模块的 module.xml:
有谁知道我如何“强制”Thorntail 包含这种依赖关系?我还尝试在我的 pom.xml 中简单地添加最新版本的缺失依赖项,但不幸的是这没有帮助。
任何帮助表示赞赏 - 谢谢!
quarkus - Quarkus 中的自定义 CDI 范围
如何在 Quarkus 中创建自定义 CDI 范围?我需要创建一个 bean,其范围存在于 rest 端点的整个 http 请求期间。这正是 ConversationScoped 在 Thorntail 应用程序中的工作方式。由于它没有在 Quarkus 中实现,我需要创建一个。CDI 指南的第 6.11 节非常简洁地介绍了如何创建自定义上下文。例如,它没有提到 BuildStep 注释需要哪个依赖项。
java - 如何在全局配置中设置传输以定义集群缓存 - infinispan
尝试在 thorntail project-defaults.yaml 上配置缓存,但是在尝试在 wildfly 上启动或部署时遇到了以下问题。
错误 必须在全局配置中设置传输才能定义集群缓存。
我不确定我是否可以通过standalone.xml 或project-defaults yaml 中的配置解决这个问题,或者我是否需要使用java 代码。
我该如何解决这个问题。
查看堆栈跟踪
这可能与修复有关吗?
java - org.jgroups 中的 Wildfly 18 NoSuchMethodError
我正在尝试在 wildfly 18 上配置缓存-但是我面临的问题是我认为它与 jgroups 中的依赖项版本或删除的方法以及 infinispan 模块有关。错误
并且
WildFly 18.0.1 包含以下 Infinispan 罐子:
JGroups 也有:
似乎 Infinispan 9.4.16 依赖于不同版本的 JGroups:
请参阅链接 https://github.com/infinispan/infinispan/blob/9.4.16.Final/build-configuration/pom.xml#L180
结果,当我尝试启动服务器时,出现以下错误
java - 如何使用 project-defaults yaml 配置消息传递 activemq - thorntail 或 swarm
如何使用 project-defaults yaml 配置消息传递 activemq - thorntail 或 swarm
我目前收到以下异常
资源“/subsystem=messaging-activemq/connection-factory=RemoteConnectionFactory”所需的功能不可用:org.wildfly.messaging.activemq.connector.external.http-connector;此功能的可能注册点:
启动时完全异常。
maven - 排除 Thorntail 依赖项不起作用,导致 WELD-001408
我有一个基于 Thorntail 的项目 A,它使用 Thorntail bom-all 和许多 Thorntail 依赖项:
pom.xml
那里的一切都在项目 A 中运行良好。
我想在项目 B 中使用项目 A 的一些类。为此,我在项目 A 中配置了 maven-war-plugin,如下所示,另外还创建了一个 classes-jar:
我的项目 B 的设置与项目 A 非常相似,使用相同的 Thorntail 版本以及 Thorntail bom-all 和许多 Thorntail 依赖项。为了使用项目 A 中的类,我将其添加到项目 B 的 pom.xml 中:
但是,当我想运行项目 B 的 Thorntail uberjar 时,我得到了典型的 WELD-001408 异常,问题始终是某种 Thorntail 依赖项:
在项目 B 的 pom.xml 中,我尝试使用排除元素从项目 A 依赖项中排除 Thorntail 依赖项(单独使用 * 作为 artifactId),但在 Thorntail 启动时我仍然遇到相同的错误。
有人知道如何处理这个问题吗?任何帮助表示赞赏 - 谢谢!
java - (De) 在 Thorntails 上序列化 JSON 使用 JSON-B 而不是 Jackson
我有一个基于 Thorntail 和 Microprofile 的小型服务。看起来很简单——在 POST 请求中获取 JSON 做一些事情,返回响应。但是问题是,在 POJO 中,我有一个LocalDateTime
字段并且出现了问题,这是我得到的响应
为什么它使用 Jackson 而不是 Jsonb provider ?
在日志中,我收到以下消息(除其他外)
我在哪里设置这个resteasy.preferJacksonOverJsonB
属性?
我试图在 中设置属性project-defaults.yml
,我试图作为-D
参数提供,但似乎没有任何效果,我仍然收到此消息,并且(反)序列化仍然存在问题。
修复它的方法是什么?我查看了文档、示例甚至源代码,仍然想知道什么会起作用。
更新:
相关部分来自dependency:tree
vuejs2 - 使用 KEYCLOAK 确保 thorntail 服务
我看到很多关于此的主题,但似乎所有主题都使用相同的 URL 访问 KEYCLOAK。解释。我尝试建立一个由 KC 架构保护的前端+微服务。
看图:
如果每个人都可以使用相同的 url 看到 keycloak (kc),那么一切都会正常工作,即对于 JS:
对于服务(project-default.yml):
见https://github.com/lbroque/test-kc
但在现实世界中,前端处于网络的黑暗面,而 KC 和服务应该处于受保护的环境中。所以前端通过反向代理和 HTTPS 方案看到 KC,而服务通过 HTTP 方案看到它。
据我所知,该服务尝试使用 SSL 访问 KC:
这意味着它尝试使用 https 方案,不是吗?所以我想它使用在前端发送的 TOKEN 中找到的 URL,它使用 HTTPS 方案获得它,因为我配置了我的服务(所以它应该使用 HTTP 方案):
最后一点:KC 在 DOCKER 容器中。我尝试了几种环境变量 KEYCLOAK_FRONTEND_URL、KEYCLOAK_HOSTNAME 的组合。它似乎没有任何效果。
我想我不明白 auth-server-url 的目的。如果可以在令牌中找到信息有什么用????
我敢肯定这是我看不到或不理解的非常明显的事情……请帮忙。