问题标签 [open-liberty]

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.

0 投票
1 回答
167 浏览

openapi - 使用具有开放自由的 openapi v3

我是开放自由的新手,但对该功能印象深刻。但我确实错过了使用 openApi v3 开始我的开发的可能性。实际上我找不到如何使用 openapi.yaml 并生成存根以及实现类。有人管理过这个吗?最好的问候,伊戈尔

0 投票
0 回答
167 浏览

websphere-liberty - OpenLiberty server.xml 布尔变量数据类型

OpenLiberty 似乎不支持布尔数据类型的变量替换。我有一个要标记的 MicroProfile JWT 配置元素 (ignoreApplicationAuthMethod)。是否有将 server.xml 中所需的布尔参数外部化的最佳实践?为了解决这个问题,我将整个 mpJwt 配置元素拉到了父环境特定的 xml 中,但这并不理想,因为并非每个服务器都需要这个 mpJwt 配置。

我想做的事:

0 投票
2 回答
1239 浏览

java - Websphere Liberty 上的 JAX-RS 异常处理

我需要一些帮助来了解 Websphere Liberty (18.0.0.1) 如何处理在 JAX-RS 端点调用中引发的异常。我正在使用 Liberty 功能jaxrs-2.0,因此应该由 WLP 提供实现。

现在,我的应用程序有一个接受 JSON 有效负载的 POST HTTP 端点,我想为所有可能的错误客户端输入提供自定义错误消息。

这是一个以我期望的方式起作用的案例:

  1. 客户端发送application/xml而不是application/json
  2. ClientErrorException容器抛出了一个
  3. 我可以使用我自己的异常映射器(实现ExceptionMapper<WebApplicationException>来处理这个异常(实际上是处理所有的 web 应用程序异常,我很好)
  4. 这样我可以格式化错误消息,用 ID 标记错误,无论需要什么。那挺好的

这是对我不起作用的情况:

  1. 客户端发送application/json,但正文为空
  2. 在这种情况下,核心例外是java.io.EOFException: No content to map to Object due to end of input- 是的,这看起来很准确
  3. 现在我无法弄清楚 - WLP 不是将其包装EOFException成某种WebApplicationException(我可以轻松处理),而是将异常问题包装成JaxRsRuntimeException

这里有几点:

  • 我不想创建一个映射器实现ExceptionMapper<JaxRsRuntimeException>,因为该异常不是 JAX-RS 2.0 规范的一部分,我必须提供对 JaxRsRuntimeException 的导入并将应用程序与一些特定于 Liberty 的库连接。
  • 一个可能的解决方案是让我的映射器实现一个通用ExceptionMapper<RuntimeException>和字符串检查,如果它发现类名“JaxRsRuntimeException”的异常,然后处理它。但这对我来说似乎不正确。

那么,在这种情况下,WLP 设计是否不会给我 WebApplicationException 呢?处理这种情况的优雅解决方案是什么?

谢谢


编辑:添加了源代码的某些部分。

REST 端点和资源方法:

带有 JAXB 注释的实体:

异常堆栈跟踪:

0 投票
1 回答
2205 浏览

jakarta-ee - 在将应用程序从传统的 WebSphere Application Server 迁移到 Liberty 时,如何正确重构 ibm-ejb-jar-bnd.xmi 文件?

在将应用程序从 WebSphere Application Server 传统 v9.0.0.7 迁移到 Liberty base v18.0.0.1 时遇到错误

控制台中的异常说:

似乎 EJB 绑定存在问题。我一直在阅读 Liberty 不支持 WAS 9 EJB 绑定,并且仅将 EJB 绑定到java : 命名空间语法。

ibm-ejb-jar-bnd.xmi文件如下所示:

我应该如何重构 ibm-ejb-jar-bnd.xmi 文件?请帮我解决问题。

0 投票
1 回答
125 浏览

timer - IBM Liberty Profile 18.0.0.1 上的非持久性 timerService 注入失败

我尝试在 IBM Liberty Profile 18.0.0.1 中使用 EJB 编程计时器。这是我的 service.xml:

这是我的基本代码片段。

这是我的客户调用计时器的方式:

但是,我在注入的 TimerService 上遇到了一个非指针错误。TimerService 未成功注入。任何人都可以对此有所了解吗?欣赏它!

0 投票
2 回答
1672 浏览

java - WAS Liberty 配置文件 - 使用 ClassLoader.getSystemResourceAsStream 读取属性

我们正在将我们的应用程序从 WAS 6.1 迁移到 Liberty。我们的应用程序使用第三方 jars 来读取属性文件InputStream is = ClassLoader.getSystemResource("myproperty.properties")。在 WAS 6.1 中,我们将服务器类路径设置为 myproperty.properties 的位置。我们尝试了以下方法在 Liberty 中设置类路径,但没有任何效果

方法 1:在 jvm.options 中设置以下内容(D:\ConfigFiles\DEV\ - 包含 myproperty.properties 的路径)

方法二:在 server.xml 中设置类加载器,

请让我们知道是否有任何其他方法可以在 Liberty 配置文件中覆盖/设置类路径?

0 投票
1 回答
871 浏览

maven - 如何在 openLiberty maven 构建中包含第三方库

我目前正在运行一个带有开放式 Liberty 的 PoC,但我在使用库时遇到了一些麻烦。

简而言之,我们的项目有一些需要作为库包含的第三方 jar,但是当我mvn install在我的 Open Liberty 项目中运行时,我不知道如何包含它们。

我正在尝试在 server.xml 中配置它们,如下所示:

我曾希望它们会被 maven 构建所接受,但显然不是。

我需要采取哪些步骤来确保我的库 jar 在运行时放置在正确的位置mvn install

0 投票
1 回答
965 浏览

websphere - WebSphere Liberty 在 message.log 中自定义时间戳

我不喜欢 Liberty Server 显示元数据的方式。您可以选择在 console.log 中根本不使用 MetaData,或者在 message.log 中有效地使用它。

我在 message.log 中的当前格式如下所示:

这看起来并没有那么糟糕,但是一旦输出更长并且需要换行,它就只是一堵难以阅读的杂乱文本的大墙。

我想将时间戳自定义为如下所示:

我也想交换月份和日期 [dd/mm/yy]

我的 server.xml 看起来像这样

我决定使用isoDateFormat="false"它,因为它只会用更多的字符使输出变得混乱。

如何自定义 message.log 输出以仅显示没有类信息的简单(欧洲)日期和时间格式?

0 投票
1 回答
1594 浏览

jpa - 如何在 WebSphere Liberty 上将 H2 数据库与 JPA 一起使用

我有一个非常简单的 Web 应用程序在WebSphere Application Server 18.0.0.2. 该应用程序被打包到 WAR 中并放在下面dropins(为简单起见)。

我的server.xml样子是这样的:

我有一个非常简单的实体和服务(无状态 EJB):

而我persistence.xml在 META-INF 下的样子是这样的:

我认为这些简单的配置应该足以部署和运行这个 hello-world 类型的应用程序。但我在运行时遇到错误:

EntityManager 注入失败。从 IBM 的文档中还不清楚还应该做什么。

我的应用程序中没有其他 XML 文件(配置文件)。

我错过了什么吗?

0 投票
0 回答
452 浏览

spring-boot - Liberty中的Spring Boot应用程序部署抛出Class cast异常

当我尝试将已构建的 Spring Boot 应用程序部署到Liberty 8.5. 我们正在使用maven& Spring boot 1.5.7

POM.XML:

Application.xml - 自由:

当我启动服务器时,我遇到了异常。

CWWKZ0002E: 启动应用程序提供程序时发生异常。异常消息是:java.lang.ClassCastException: com.ibm.ws.app.manager.springboot.internal.SpringBootModuleInfo 无法转换为 com.ibm.ws.container.service.app.deploy.WebModuleInfo