问题标签 [glassfish-3]
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 - Servlet 请求在 Glassfish v3 中无明显原因按顺序执行
我正在使用 Glassfish 3 Web 配置文件,无法让 http 工作人员在 servlet 上同时执行请求。
这就是我观察到问题的方式。我制作了一个非常简单的 servlet,它将当前线程名称写入标准输出并休眠 10 秒:
当我同时运行多个请求时,我在日志中清楚地看到请求是按顺序执行的(每 10 秒跟踪一次)。
等等
我所有的 GF 设置都保持不变——这是开箱即用的配置(默认线程池最少 2 个线程,如果我没记错的话,最多 5 个线程)。
我真的不明白为什么 sleep() 会阻塞所有其他工作线程。任何见解将不胜感激!
authentication - 可以从自定义 LoginModule 访问远程 EJB?
我发现了一些关于如何编写自定义领域和 loginModule 的很好的提示。我想知道是否可以在自定义 loginModule 中访问远程 EJB。
就我而言,我有远程 EJB 提供对用户实体的访问(通过 JPA)——我可以使用它们(例如通过 @EJB 注释)吗?
security - EJB 3.1 中使用 JAX-WS 的基本身份验证的部署说明
有很好的教程 Basic Authentication with JAX-WS
但它描述了基于 Web 的应用程序(战争)的部署描述。在 ejb jar 部署描述中描述是否可以通过?
对于 web.xml
我通过注释找到了安全规则的描述 -
GlassFish 和 Java EE 5 SDK 中的安全注释和授权
但这足够了吗?
比你!
java - Glassfish 3:如何获取和使用开发人员构建,以便可以浏览包括 Glassfish 代码的堆栈跟踪?
我正在将 JSF 1.1 应用程序迁移到 Java EE 6 Web 配置文件,并分步进行。我正在使用 JSF 1.2 的 jsf-facelets.jar 从 JSP 与 JSF 1.1 移动到 JSF 1.2 下的 Facelets,并在尝试使用“{Bean”在 Map 中查找键时收到“有趣的”堆栈跟踪.foo.map.key}”,其中堆栈跟踪抱怨“key”不是有效的整数。(在代码自省之后,我正在使用数字作为键来解决它)。这个错误不是这个问题的内容。
在这种情况下,必须能够导航堆栈跟踪中每一行的源。在 Eclipse 中,我通常将源 jar 附加到构建路径上的每个 jar,但在这种特殊情况下,Glassfish 服务器适配器会自动创建一个包含这些 jar 的库。此外,据我所知,捆绑包中没有包含源的 Glassfish 调试版本。
Glassfish 是一个不平凡的 Maven 项目,也有点挑剔。我对 maven 不是很熟悉,但设法从 Subversion 签出代码并根据http://wiki.glassfish.java.net/Wiki.jsp?page=V3FullBuildInstructions#section-V3FullBuildInstructions-为 3.0 标记构建它CheckoutTheWorkspace——貌似是官方发布的3.0版本对应的代码。
完成“mvn -U install”部分后,我尝试通过首先使用“mvn -DdownloadSources=true eclipse:eclipse”创建 Eclipse 项目,然后将它们导入 Eclipse Java EE 3.5.2 并指定 M2_REPO 变量,但很多的项目仍然存在编译错误,我无法找到 Oracle 提供的有关如何执行此操作的任何说明。
我很感激在获得反映 Glassfish 3.0 版本的功能性 IDE 工作区方面的一些帮助。我有 Eclipse 3.5.2、Netbeans 6.8 和 6.9 beta 以及 IntelliJ IDEA 9,并且 Linux/Windows/OS X 可以做到这一点。
java - 新的有状态会话 bean 实例,无需调用查找
设想:
我有@Singleton UserFactory
(@Stateless
可能是),它的方法是通过手动查找createSession()
生成bean。@Stateful UserSession
如果我通过 DI 注入@EJB
- 我将在调用方法期间获得相同的实例fromFactory()
(应该如此)
我想要的 - 是在UserSession
不进行查找的情况下获得新实例。
Q1:如何调用@Stateful
会话 bean 的新实例?
代码:
据我了解,调用
不是最好的主意
Q2:是真的吗?
#
更新
目标
实际上,目标是创建一些 SessionsFactory 来管理用户的会话(这是 Web 服务用户)
会话@Statefull bean:
在工厂方法中,我只想创建 @Statefull UserSession 的新实例并管理为每个用户创建的会话数,并在一段时间(30 分钟)后调用 destroySession()
我需要跟踪用户会话请求的历史记录,并在以后保留历史记录..
所以我认为@Statefull bean 应该满足我的需求。但看起来通过 JNDI 名称查找是支持创建新 ejb 的唯一机会。我正在寻找在
没有查找的情况下注入新的 ejb 实例的可能性,并且可能有可能获取我的 @Statefull UserSession 当前创建的实例的集合,而不是将 thrm 保存在某个映射/集合中。
Q3:所以.. 只有 JNDI 会帮助我创建新的 ejb 实例?
Q4:是否可以从容器中获取一些 ejb 实例的集合?
我正在使用 glassfish v3,ejb 3.1。
java - 是否可以从容器中收集一些 ejb 的实例?
场景:我有一些@Statefull
用于用户会话的 bean(不是 HTTP 会话,它是 Web 服务会话)。我需要管理每个用户的用户会话。
目标:我需要有可能收集@Statefull UserSession
实例并控制每个用户的最大会话数以及会话的生命周期。
问题:是否可以从 EJB 容器中获取 EJB 实例的集合,而不是将它们存储在某些集合、映射等中?
我正在使用 GlassFish v3、EJB 3.1、JAX-WS。
java - GlassFish 构建失败
每次我尝试部署服务器端代码时,构建都会失败。如果我尝试重新启动我的机器,构建会成功,但稍后在我尝试构建后续时间时会失败。尝试构建时收到以下严重消息:
以下是严重方法的详细信息:
java - Glassfish (v3) 应用程序部署中的 java.util.zip.ZipException
我的 EJB3.1 应用程序出现了一个奇怪的异常,ZipException
在应用程序部署期间抛出了一个异常:
我真的不知道如何调查这个错误;我知道这与 Glassfish 安装无关(在 Ubuntu 和 Mac 上也有同样的问题)。
编辑:( 类路径细节似乎没用)
.../WebAlbums3-ea/dist/gfdeploy/WebAlbums3-Service.jar 的问题是这个文件实际上并不存在于 Glassfish 正在寻找它的地方......相反,我有一个名为 WebAlbums3-Service_jar的文件夹
(我正在使用 Netbeans 6.8、Glassfish v3、Servlet3、EJB 3.1、JPA/Hibernate)
谢谢您的帮助
编辑:通过在定义实现的位置之外提取 EJB 接口解决了问题(ZipException 和已加载的 EJB)(实现类与每个模块一起加载,因此 EJB 异常)
jakarta-ee - Glassfish webapp 中的 EJB 注入
我有一个应用程序正在尝试使用 @EJB 注释在我的 ejb.jar 文件中注入对 EJB 的远程引用。我得到不一致的结果。在一种情况下,我在 web.xml 中有一个侦听器,它被调用并且显然正确注入了 EJB,因为我可以看到它连接到 EJB 并在其上调用方法。在另一个类(struts2 操作)中,当它尝试访问 EJB 引用时,我得到了 NPE。据我所知,它们是相同的调用,位于同一个 .war 文件中的 Java 类中。
作为一种变通方法,我在构造函数中添加了代码以通过全局 JNDI 名称查找 EJB,它工作正常。我只是无法弄清楚为什么一个@EJB 有效,而不是另一个。
glassfish - Glassfish3 中的远程接口查找问题
我在 glassfish3 上部署了一个带有 actionclasses 和一个外观的 war 文件,以及一个带有 ejb 组件(一个无状态 bean、几个实体和一个 persistence.xml)的 jar 文件。我的问题是我无法从我的门面找到到无状态 bean 的远程接口。
我的 bean 和界面如下所示:
如果我查看 server.log 便携式 jndi 看起来像:
和我的门面:
当外观第一次调用时,会发生此异常:
第二个电话:
我还测试了使用@EJB-annotation 注入bean:
但这也不起作用。我错过了什么?我尝试使用 ejb-jar.xml 但这不应该是必要的。有没有人可以告诉我如何解决这个问题?