问题标签 [glassfish-embedded]

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 回答
945 浏览

jakarta-ee - Heroku 应用服务器或 servlet 容器上的 Java 完整 EE(最佳实践)

假设我需要 Heroku 上的“完整”Java EE 应用程序。什么是“更好”的方法?(在性能和内存使用方面)

  1. 嵌入式 glassfish 服务器

  2. 使用嵌入式码头并使用框架等构建“EE功能”。

希望我的问题足够清楚,并提前感谢。

0 投票
0 回答
673 浏览

logging - 使用 maven-embedded-glassfish-plugin 在嵌入式 Glassfish 中指定 logging.properties

我使用包含嵌入式 Glassfish 的 Maven 配置的项目模板(使用 maven-embedded-glassfish-plugin)。我需要启用日志记录,但我什至不知道 Glassfish 中启用了哪个日志记录引擎(因为我没有创建模板)。

该模板使用slf4j-log4j12作为依赖项,但我不确定 slf4j 或 java.util.logging 是否执行实际的日志记录。因此,我创建了两个日志文件,一个logging.properties和一个log4j.properties,并将它们都放入src/main/resourcesand /src/main/resources/META-INF,这两个似乎都不起作用。

我添加java.util.logging.config.file=logging.properties了 Maven Glassfish 系统属性(也适用于 log4j),但也没有成功。我检查了属性文件是否在 JAR 文件中。

如何确定哪个后端负责记录?

如何使用 Maven 嵌入式 Glassfish 插件为嵌入式 Glassfish 指定日志记录配置?

目前,我在默认情况下获得 INFO 级别的日志记录输出。我想这是默认设置。

0 投票
1 回答
2222 浏览

jboss-arquillian - 当我使用 tomee 设置 arquillian 时,我应该如何指向我的 resource.xml?

使用 glassfish 嵌入式服务器,我在 arquillian.xml 中使用以下行来指定我的 resource.xml

arquillian.xml

glassfish-resources.xml

现在我正在尝试使用 tomee,但我无法连接到我的数据库,因为我无法以与 glassfish 相同的方式指出我的 resource.xml。

这是表示 Tomee 不支持 resourcesXml 属性的警告(在 Arquillian.xml 中)

我想知道使用 arquillian 在 tomee 中指定资源的替代设置。在这方面我将不胜感激。

0 投票
2 回答
599 浏览

glassfish - 使用与 glassfish-embedded-web 中捆绑的不同的 eclipselink

我在 Maven 项目中使用 glassfish-embedded-web 进行集成测试:

glassfish-embedded-web 带有 Eclipselink 2.2.0,但该项目需要 2.4 的功能。对于常规部署,通过将 je 所需的 jar 添加到 glassfish 的模块目录和此依赖项来解决此问题:

我也尝试了编译范围,仍然使用嵌入式 EL 2.2.0。添加对 EL 2.4.1 的测试范围依赖项没有帮助。有没有办法解决这个问题?

0 投票
0 回答
714 浏览

cdi - 使用 CDI 在嵌入式 glassfish 上注入 jndi 字符串资源不起作用

所以我在 domain.xml 中创建了一个自定义引用

@Resource(lookup = "jndi/myResource")并通过@ApplicationScoped bean引用它。

我还使用背书目录(包含背书的 api.jar)启动服务器。仍然当我引用资源时,它不会注入和抛出空值。

看起来一切都设置正确,不确定我在这里缺少什么。是的,我在 Meta-inf 目录中也有 beans.xml。

0 投票
2 回答
1100 浏览

unit-testing - 如何使用嵌入式企业 bean 容器(GlassFish)过滤(替换)ebj-jar.xml 中的 env-entry 值以进行单元测试?

我需要几个配置文件进行部署。在 Maven POM 中,我定义了一个配置文件“dev”和一个属性“theHost”(作为 localhost):

我已经filterDeploymentDescriptor在 maven-ejb-plugin 上激活,以便告诉它过滤(替换)ejb-jar.xml 中的值:

最后,在 ejb-jar.xml 中,我指的是${theHost}为 @Resource 属性“主机”获取所需的特定于配置文件的值:

这一切都适用于常规的 Maven 构建。但是当我使用 GlassFish [EJBContainer.createEJBContainer()] 的嵌入式企业 Bean 容器运行 EJB 单元测试时,maven-ejb-plugin 似乎忽略了 filterDeploymentDescriptor=true。尽管我使用相同的“dev”配置文件运行 maven,但 EJB 看到的是“${theHost}”而不是“localhost”。

有谁知道为什么在运行单元测试时替换不起作用?还有什么我必须特别为单元测试定义的东西,以便对 ejb-jar.xml 进行过滤吗?或者如果存在不同的配置文件,是一种更好的对 EJB 进行单元测试的方法?

0 投票
1 回答
1086 浏览

glassfish - 运行 Embedded Glassfish 4.0 时相同但不同的 domain.xml

显然,使用现有的 domain.xml 文件并不是一个好主意,该文件是在使用 asadmin create-domain new_domain 创建新域时生成的,然后在运行 Glassfish 的嵌入式实例时使用它。找不到数据源等等。

这在这个线程上得到了证实:GLASSFISH-20270

但是,我的问题是,有没有办法获得 Glassfish 4.0 的 domain.xml 文件的“嵌入式版本”?

0 投票
1 回答
371 浏览

login - ProgrammaticLogin 在 arquillian 测试中不起作用

我正在尝试在嵌入式 glassfish 的 arquillian 测试中使用 ProgrammaticLogin 类模拟登录。我的代码如下:

我收到以下异常:

我添加了一个包含登录名和密码的属性文件 users.properties。

0 投票
1 回答
1016 浏览

dependency-injection - 无法使用 GlassFish 将 @Resource 字符串注入 @Singleton EJB

我拼命地尝试将一个简单的字符串注入到 Glassfish 上的单例 EJB 中。

bean 类被打包为 EJB。这是我的META-INF/ejb-jar.xml

我不确定我是否需要这个烂摊子。

接下来,我通过 Jersey Test Framework 1.17.1 在 Embedded GlassFish 3.1.1 上运行 JerseyTest。但是,没有注入任何东西,我得到的只是NullPointerExceptionconfigurationUri()方法中得到的。

我还尝试忽略失败的测试,将 bean JAR 打包到 WAR 中,并将其部署到独立的 GlassFish 4.0,结果相同。接下来,我将 env-entry 复制粘贴到web.xmlWAR 并重新部署它,结果相同。

我究竟做错了什么?通过搜索 Internet,我得到可能需要调整 a domain.xml,但似乎没有 XML 模式,并且 asadmin 命令的文档是......压倒性的。

非常感谢任何提示!

编辑:我问为什么我不简单地为字符串字段设置一个默认值。这是因为我想通过ejb-jar.xml. 否则它将只是隐藏在代码中。

0 投票
1 回答
2467 浏览

java - 在 Glassfish 4.0 中使用嵌入式 EJBContainer 的问题

我正在做 Junit 测试来验证我的项目中的 SessionBeans。有一个没有接口的本地会话 bean,我想在我的测试中查找它。

所以,我把这个依赖放在我的 ejb 模块的 pom.xml 中(与测试相同):

所以,我已经建立了我的测试方法:

执行测试后,我收到了这个异常堆栈跟踪:

我还尝试将 EJBContainer 属性设置为提供程序、应用程序名称或模块。但是会发生同样的错误。任何想法如何解决这个问题?谢谢!