问题标签 [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 回答
346 浏览

java - 无法从浏览器访问嵌入式 Glassfish 的运行实例

我正在尝试使用嵌入式 Glassfish 来运行一些单元测试。我已设法配置并启动服务器,但我无法从浏览器访问管理控制台。我也不能从 java 代码访问 REST 接口。我的问题是:是否可以使用 REST 从浏览器或 Java 代码访问嵌入式 Glassfish 服务器?如果是,我做错了什么?

使用的代码是这样的:

非常感谢!

0 投票
3 回答
3617 浏览

java - 如何处理类路径冲突

在我的项目中,我同时使用 glassfish-embedded 3.1.1 和 guava lib...问题是 glassfish 带有番石榴的旧实现(即 google-collections)...

这会在运行时导致 NoSuchMethodError,例如使用 Lists.reverse() 或稍后在 guava 中引入的 Sets.newIdentityHashSet() 时。

我没有找到任何解决方案来解决这个问题......(唯一的方法是手动丢弃 glassfish jar 中的 com/google 类目录......)

0 投票
1 回答
187 浏览

java - 使用嵌入式容器测试 EJB。如何登录?

我正在尝试使用嵌入式容器测试我的 EJB。

但是我的一些方法仅限于某些角色。所以,我的问题是。如何登录到容器,以便可以测试这些模拟将调用 Session Bean 的用户的方法?

谢谢

0 投票
0 回答
334 浏览

maven - Maven 和嵌入式 Glassfish 插件 - 如何提供 derby jdbc 驱动程序

运行嵌入式 glassfish 插件时,我收到以下消息。

如何提供 javadb 客户端 jar 文件?

0 投票
1 回答
692 浏览

maven - maven-embedded-glassfish-plugin 抛出 ClassNotFoundException

我已将我的 pom 文件配置为使用 maven-embedded-glassfish-plugin。事实上,这是生成项目的 jersey-webapp 工件。pom的插件部分如下:-

org.glassfish maven-embedded-glassfish-plugin ${glassfish.version} 嵌入式-glassfish /Users/vdevigere/Projects/ShoppingSite/shoppingsite-ws/target/${project.build.finalName}.war 测试真 8080 com.sun .jersey jersey-servlet ${jersey.version} javax.servlet javax.servlet-api 3.0.1

当我执行 mvn embedded-glassfish:run 时,我得到一个堆栈跟踪,通知我找不到 javax.ejb.Stateless。堆栈跟踪如下

EVERE:调用 com.sun.enterprise.web.WebApplication 类启动方法时出现异常 java.lang.Exception: java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: org.apache.catalina.LifecycleException : java.lang.NoClassDefFoundError: javax/ejb/Stateless at com.sun.enterprise.web.WebApplication.start(WebApplication.java:138) at org.glassfish.internal.data.EngineRef.start(EngineRef.java:130)在 org.glassfish.internal.data.ModuleInfo.start(ModuleInfo.java:269) 在 org.glassfish.internal.data.ApplicationInfo.start(ApplicationInfo.java:294) 在 com.sun.enterprise.v3.server.ApplicationLifecycle .deploy(ApplicationLifecycle.java:462) 在 com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:240) 在 org.glassfish.deployment.admin.DeployCommand。在 com.sun.enterprise.v3.admin.CommandRunnerImpl 执行 (DeployCommand.java:382)$1.execute(CommandRunnerImpl.java:355) 在 com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:370 ) 在 com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1064) 在 com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1200(CommandRunnerImpl.java:96) 在 com.sun.enterprise .v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1244) 在 com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1232) 在 com.sun.enterprise.admin.cli .embeddable.DeployerImpl.deploy(DeployerImpl.java:129) 在 com.sun.enterprise.admin.cli.embeddable.DeployerImpl.deploy(DeployerImpl.java:105) 在 org.glassfish.maven.PluginUtil.doDeploy(PluginUtil.java :106) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 在 java.lang.reflect .Method.invoke(Method.java:597) 在 org.glassfish.maven.AbstractDeployMojo.doDeploy(AbstractDeployMojo.java:239) 在 org.glassfish.maven.RunMojo.execute(RunMojo.java:68) 在 org.apache。 maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java: 569)在 org.apache.maven.lifecycle.DefaultLifecycleExecutor。executeGoal(DefaultLifecycleExecutor.java:539) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:348) at org.apache .maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180) 在 org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328) 在 org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138) 在org.apache.maven.cli.MavenCli.main(MavenCli.java:362) 在 org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method ) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 在 sun.reflect。DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) at org.codehaus.classworlds .Launcher.launch(Launcher.java:255) 在 org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) 在 org.codehaus.classworlds.Launcher.main(Launcher.java:375)

我已经确认 javax.ejb.Stateless 是 glassfish-embedded-web 的一部分,它作为测试范围依赖项包含在内。

org.glassfish.extras glassfish-embedded-web ${glassfish.version} 测试

我不知道为什么这不起作用。我能够将应用程序部署到实际的 glassfish 应用服务器。

0 投票
0 回答
279 浏览

java - 使用 Maven 启动多个 Glassfish 服务器

我有一个多模块 Maven 项目,如下所示:

  • 父级(POM 项目)
    • Module1(Web 服务)- 部署在端口 1001
    • Module2 (Web Service) - 部署在端口 2001
    • Module3 (Web Service) - 部署在端口 3001

我正在使用 maven 嵌入式 glassfish 插件来部署 Web 服务。但是,我需要通过在父项目中运行 (mvn clean install) 将服务部署到多个 glassfish 实例。

我在所有模块中使用以下配置

目前,我为了运行所有服务,我必须手动进入每个服务并运行“mvn install”,因为当我在父项目中运行 mvn install 时,它会构建第一个模块并等待退出代码“输入‘X’退出...”。只有当我键入“X”并按 Enter 时,才会部署并启动第二个模块。我希望模块中的所有服务同时启动。

0 投票
0 回答
182 浏览

resources - activeMq rar 自动部署在 glassfish 中

是否可以将activeMq rar自动部署到嵌入的glassfish中?我尝试了很多使用 glassfish-embedded-all-3.1b11 到 3.2b06 的方法,但没有运气。特别是,我想使用 javax.ejb.embeddable.EJBContainer api,而不是动态部署到 org.glassfish.embeddable.GlassFish。

0 投票
0 回答
113 浏览

glassfish-3 - Embedded Glassfish 3.1.1 的授权问题

我正在使用 Embedded Glassfish 部署 Java EE 5 Web 应用程序。使用 3.1 版我成功地:

将其部署在普通(非嵌入式)环境中;

在第一步的基础上,创建一个嵌入式部署。

然后,事情发生了变化,我再也不能成功了。每次我尝试登录时,我都会收到 403 错误,这意味着我的环境正在运行(可以进行身份​​验证)但我的授权规则不好!好的。您可以认为这显然是一个编码/配置问题,但事实是,当我不在嵌入式环境(现在是 3.1.1 版本)时,相同的 .WAR 可以部署并顺利运行。我刚刚尝试将上述两个步骤重复到 3.1.1 版本,但出现相同的错误。

我对这个新的 GlassFish 版本做错了什么?

0 投票
1 回答
391 浏览

cobertura - Glassfish 嵌入式 + maven cobertura 插件

我通过以下方式使用了嵌入式 glassfish:

问题是嵌入式 glassfish 使用“target/classes”中的类,而 maven cobertura 使用“target/generated-classes/cobertura”。然后,第一次运行测试没问题,但是在第二次运行 cobertura 时,我收到 java.lang.RuntimeException: javax.naming.NamingException (可能是因为 cobertura 正在处理“目标/生成的类/cobertura ”而 glassfish 正在研究“目标/类”)。

有什么想法可以解决这个问题???

0 投票
2 回答
2524 浏览

jakarta-ee - 如何开始使用嵌入式 GlassFish 和 Java DB/Derby 对 Java EE JAX-RS 应用程序进行单元测试,最好是在没有 Maven 的 NetBeans 中?

我对 JAX-RS、JPA、GlassFish、Java DB 和 NetBeans 比较陌生,我想为我的代码编写单元测试。[版本号在底部。] 但是,我不知道从哪里开始。我已经做了很多搜索,但我还没有清楚地了解如何设置我的代码的嵌入式测试。我正在使用 NetBeans,但我的问题很笼统。我希望我能更清楚地提出我的问题,但这是我能做的最好的。到目前为止,我已经找到了以下可能的部分(此时更像是提示)。

o 我想在没有 Maven 的情况下进行设置,但这意味着我必须手动安装嵌入式 jar。问:我在哪里可以找到它们?

o 创建我的配置 xml 文件(glassfish-resources.xml 和 persistence.xml)的版本,指定 GlassFish 和 Java DB 的嵌入式版本。问:但是您如何告诉 NetBeans 使用那些进行测试而不是依赖于已安装版本的生产?

我认为 persistence.xml 看起来像这样(通过使用带有嵌入式 derby 的 hibernate):

o 创建自定义 Glassfish 域配置文件(嵌入式 GlassFish 忽略 Maven 测试资源)。问:这应该是什么样子?我有来自使用我的 NetBeans 安装创建的默认 domain1 的 domain.xml,但它有很多内容。

o 一旦我的项目可以访问嵌入的文件,并且它被配置为使用它们,我的 JUnit 工具应该是什么样子?http://jersey.java.net/nonav/documentation/latest/client-api.html#d4e759说:

但是,我也见过提到 EJBContainer,例如(来自http://docs.oracle.com/javaee/6/tutorial/doc/gkcqz.html):

o 我正在使用 JPA,所以我需要访问 PersistenceContext/EntityManager。目前我通过以下方式查找:

但我也见过:

问:掌握这个的正确方法是什么?

我将衷心感谢您的帮助。

  • 版本:
    • GlassFish Server 开源版 3.1.2(内部版本 23)
    • Java DB/德比:10.8.1.2 - (1095077)
    • NetBeans IDE 7.1(内部版本 201112071828)