Tag: glassfish

当CDI注入POJO应该有效吗? (GlassFish v3)

当我将EJB 3.1 bean注入由@Inject创建的POJO时,注入工作。 当我自己构建POJO时,它不会(Glassfish v3)。 这是正确的行为吗? 我的类(在EJB模块中): @Singleton @LocalBean @Startup @Named public class NewSingletonBean { @PostConstruct public void init(){ System.out.println(“NewSingletonBean INIT”); } } _ public class MyPOJO { @Inject NewSingletonBean newSingletonBean; public void sth(){ System.out.println(“EJB injected into POJO: ” + (newSingletonBean != null)); } } 这不起作用 : @Singleton @LocalBean @Startup @DependsOn(value=”NewSingletonBean”) public class NewSingletonBean2 { […]

JAVA EE 7第一杯教程,无法安装Glassfish 4更新中心

好吧,我试图按照第一杯教程,但我遇到了Glassfish错误。 我应该这样: 1.2.4获取教程的最新更新 使用Java EE 7 SDK附带的更新中心检查本教程的任何更新。 1.2.4.1通过更新中心更新教程打开更新中心并检查教程的任何更新。 在NetBeans IDE中,选择“服务”选项卡,然后展开“服务器”节点。 右键单击GlassFish Server实例,然后选择“查看更新中心”以显示“更新工具”。 在树中,选择“可用更新”以显示更新的包列表。 查找First EE for Java EE 7(javaee-firstcup-tutorial)包的更新。 如果有First Cup的更新版本,请选择First Cup 7.0 for Java EE 7(javaee-firstcup-tutorial)并单击Install。 问题是,当我尝试打开更新中心时,这就是我得到的: The software needed for this command (updatetool) is not installed. If you choose to install Update Tool, your system will be automatically configured to periodically check for […]

为什么我的xml的JAXB名称空间设置为默认ns1?

我使用NetBeans 7.2(在Windows 7环境中)从我的Web应用程序构建war文件,该文件在NetBeans上下文中的GlassFish 3.1.2服务器的测试阶段正确运行。 package-info.java文件中定义的命名空间已正确添加到我的xml文件中。 但是,当我在Linux机器上单独运行GlassFish服务器部署war文件时,命名空间被设置为默认的ns1而不是package-info.java文件定义的那个? 我究竟做错了什么? 此致,杰拉德

从远程客户端使用Glassfish JMS

我在服务器上安装了glassfish,其中JMS ConnectionFactory设置了jms / MyConnectionFactory,其资源类型为javax.jms.ConnectionFactory。 我现在想从本地计算机上的客户端应用程序访问它,我有以下内容: public static void main(String[] args) { try{ Properties env = new Properties(); env.setProperty(“java.naming.factory.initial”, “com.sun.enterprise.naming.SerialInitContextFactory”); env.setProperty(“java.naming.factory.url.pkgs”, “com.sun.enterprise.naming”); env.setProperty(“java.naming.factory.state”, “com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl”); env.setProperty(“org.omg.CORBA.ORBInitialHost”, “10.97.3.74”); env.setProperty(“org.omg.CORBA.ORBInitialPort”, “3700”); InitialContext initialContext = new InitialContext(env); ConnectionFactory connectionFactory = null; try { connectionFactory = (ConnectionFactory) initialContext.lookup(“jms/MyConnectionFactory”); } catch (Exception e) { System.out.println(“JNDI API lookup failed: ” + e.toString()); e.printStackTrace(); […]

Glassfish服务器不适用于JDK 8

我在使用NetBeans的web项目中使用jdk 8和lambda,但是当它部署到glassfish时它会向我显示以下错误: java.lang.RuntimeException: Uncompilable source code – Erroneous tree type: 这是由包含lambda表达式的代码行引起的。 我尝试更改glassfish设置以使用jdk 8,但我没有让它工作。 有没有办法使它工作?

播放持有http线程的延续

我们在我们的网络应用程序中实现了一项function,通过使用Play的延续来更新GUI以响应服务器中的新事件,就像聊天应用程序一样。 在生产中运行一段时间之后,我们开始体验服务器挂起,更具体地说,我们的Glassfish服务器的http连接器停止接受新请求。 线程转储向我们显示来自http线程池的所有http线程都在等待调用Play Promises。 我们的线程池有5个线程(默认编号),这意味着有5个客户端等待通知,并且服务器无法接受更多的http连接,除非某些实际客户端关闭其连接。 根据Play的文档关于继续/请求暂停,当通过调用await()暂停请求时,应该释放请求的线程。 这不是这里发生的事情。 参考: http : //www.playframework.org/documentation/1.2.3/asynchronous 我对Play的源代码做了一些研究,找不到任何提示。 我的代码似乎还可以,但我不确定(见下文)。 我希望有人可能会指出我可能做错了什么。 版本: Play 1.2.3 Glassfish 3.1.1 源代码: public class Sessions extends Controller { public static void waitFor(Query query, long lastSessionId, List openSessionIds) { String clientId = request.remoteAddress; List sessions = query .with(new UpdatedSessions(lastSessionId, openSessionIds)) .execute(); Logger.info(“%s -> Updated sessions since %s + […]

如何在JSF应用程序中引用文件资源

我想从bean动态引用XSD,这怎么可能? 我已经将XSD添加到项目中,因此它位于GlassFish域中的某个位置。

存储和编辑Java EE应用程序的配置

更新 :在撰写本文之后一年,请参阅我关于此主题的博客文章: http : //blog.ringerc.id.au/2012/07/java-ee-7-needs-improvements-in-app.html …有关此主题的Java EE 7规划讨论的参考。 我主要编写了一个小型Java EE 6应用程序,并且正在使用适当的动态配置界面替换硬编码的首选项。 我不确定 – 或者更具体地说,在哪里 – 存储设置。 必须有一些明显的,“标准”的方式来做到这一点,预期“只是工作”跨越各种框架和容器,但对于我的生活,我找不到它。 我想要的是一种加载和存储设置的简单方法,一种适用于不同应用服务器和操作系统的设置,不需要用户进行任何配置,并且实际上正常工作 。 Java Preferences API是理想的 – 但在Glassfish 3.1下似乎已经破解了。 存储配置的选项理论上包括: 使用容器环境中的上下文参数 使用Java Preferences API存储它们 在某处读取/写入属性文件 使用JPA将它们存储在容器提供的JavaDB中 将它放在从类路径加载的属性文件中 使用系统属性设置配置选项或.properties文件的路径 这似乎是一个基本要求,在容器据称为您提供您可能需要的所有核心服务的环境中,这是一个很好的照顾 – 但所有这些方法都存在问题。 glassfish中的错误呈现(1)不可行,并且在任何情况下,Glassfish Web管理员用户界面都没有任何方法来配置上下文参数,因此您必须使用`asadmin’和一些不太可爱的命令行语法来执行此操作。 上下文参数只能通过ServletContext访问 – 在JSF2,JAX-RS和原始servlet等框架之间无法以一致的方式访问 – 但至少Seam Servlet处理它。 glassfish 中的 另一个错误 是已部署的app和Glassfish中断之间的库版本冲突 (2)。 首选项后端无法将首选项刷新到磁盘,因此重新启动应用程序服务器时,存储的首选项数据将丢失。 Java Preferences API似乎也被认为是J2SE /桌面的东西,尽管它包含在Java […]

EJB工厂类

我正在尝试创建一个EJB工厂类,其工作原理如下:您有一个方法,它将EJB的一个类作为参数,然后检查EJB是否具有远程接口(如果不是抛出exception),如果它它会返回相关的EJB。 下面的代码就是这样做的。 但是它返回的对象是相关bean的远程接口的类型,而不是bean本身的类型。 我怎么能改变这个? 有没有办法告诉Javagenerics类型T与传递给方法的类的类型相同。 import java.util.Properties; import javax.ejb.Remote; import javax.ejb.Stateless; import javax.naming.*; public class EJBFactory { private InitialContext ctx; public EJBFactory() throws NamingException { ctx = new InitialContext(); } public EJBFactory(String host, String port) throws NamingException { Properties props = new Properties(); props.setProperty(“org.omg.CORBA.ORBInitialHost”, host); props.setProperty(“org.omg.CORBA.ORBInitialPort”, port); ctx = new InitialContext(props); } . // To […]

Liferay集群

您是否知道有关在Glassfish中安装Liferay集群的任何分步教程?