Tag: glassfish

如何使JNDI名称与GlassFish和WildFly兼容

我正在开发Java EE 7应用程序,并且要求将应用程序部署到运行GlassFish 4.0或WildFly 8.1.0的应用程序服务器上。 我遇到的问题是GlassFish和WildFly对JNDI名称使用略有不同的格式,但我看不出如何使我的应用程序兼容两者。 在GlassFish中,我的persistence.xml文件引用数据源jdbc / myDataSouce,但在WildFly中,数据源需要是java:/ jdbc / myDataSource。 对于使用@Resource注释的类也是如此。 在GlassFish中,使用JavaMail的类的注释将是@Resource(name =“mail / myMailSession”),但要部署到WildFly,这需要是@Resource(name =“java:mail / myMailSession”)。 我知道我可以解压缩EAR和JAR文件以手动编辑文件,例如persistence.xml,但我不能对已经使用@Resource注释的类执行此操作。 有没有办法可以将我的编译应用程序部署到GlassFish和WildFly上,而无需维护两个不同版本的代码? 我假设答案可能取决于特定于应用程序的部署描述符,但我找不到任何涵盖这两种情况的示例。 有人能指出我正确的方向吗?

GlassFish 4.0 w / Jersey毫无例外地返回500内部服务器错误

我正在使用GlassFish 4.0服务器和服务器端JPA类,我想通过JAX-RS提供。 到目前为止,这对于简单的实体来说效 但是,如果我有一个@OneToMany关系例如并且存在链接实体,则服务器返回500内部服务器错误。 在这种情况下,服务器日志中不会记录任何内容。 为了找到错误,我创建了一个小的自定义JSP页面,以获取有关所发生事件的更多信息。 代码就是这样: Status: Throwable: 不幸的是,输出只是“状态:500 Throwable:null” 我自己的服务器端代码似乎运行正常(做了一些调试输出),但是,出现了一些错误。 在此示例中,除非存在链接的IssueComment实体,否则可以毫无问题地检索User和Issue类: 用户类: package my.application.model; import static javax.persistence.FetchType.LAZY; import java.io.Serializable; import java.util.List; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.OneToMany; import javax.persistence.Table; import javax.xml.bind.annotation.XmlRootElement; /** * The persistent class for the User database table. * */ @XmlRootElement @Entity(name=”User”) @Table(name=”User”) public […]

远程JMS队列的客户端

我在远程glassfish服务器上配置了JMS队列。 我正在尝试从本地计算机连接此队列。 是否可以直接连接到此服务器,或者我需要通过某个代理/代理连接? 它是如何工作的? (我在jms地区很新鲜)非常感谢

如何在maven中转换文件分隔符

我有一个像这样定义的属性: ${project.parent.basedir} 由于我使用Windows作为操作系统,它包含反斜杠。 我想将此路径作为JVM选项添加到glassfish域(使用glassfish maven插件)。 问题是,asadmin只能使用斜杠作为分隔符,并且我的所有反斜杠都会不断消失。 如何使用斜杠定义具有完全相同内容的属性?

在尝试定义模块时,Maven不会将EJB识别为项目的依赖项

今天我将本地Glassfish服务器升级到3.1.1,为我公司将服务器升级到同一版本做准备。 我正在尝试将我的Web服务项目转换为使用新服务器,并且遇到了障碍。 在我耳朵的pom文件中,我之前将webapp和ejb都列为依赖项。 在webapp的pom中,我也将ejb列为依赖项。 尝试将此配置部署到Glassfish 3.1.1时,我收到此错误: 部署期间发生错误:部署app [ear]时出现exception:无法解析引用本地ejb-ref name = name,Local 3.x interface = interface,ejb-link = null,lookup =,mappedName =,jndi-name =, refType = Session,因为应用程序中有2个ejbs,带有接口接口。 一些可能的原因:1。EJB bean类打包在ear lib库中(或通过任何其他库机制,使库对所有组件模块可见),这使得所有组件模块间接包含此bean类。 2. EJB bean类打包在一个组件模块中,该组件模块直接或间接通过Manifest,WEB-INF / lib引用EJB。 EJB bean类只应打包在声明的ejb模块中,而不是参考模块。 引用模块应该只包含EJB接口..请参阅server.log fo …. msg.seeServerLog 基本上我相信这是因为我将EJB列为两个不同领域的依赖项,Glassfish 3.1.1不知道要查找哪个依赖项。 这不是2.1.1中的问题。 因此,我消除了耳朵中的依赖性,因为它仍然是耳朵有效pom的一部分。 但是,现在当ear生成application.xml文件时,它会忽略文件中的所有ejb信息。 我现在可以很好地部署应用程序,但是当我尝试运行任何东西时,我得到关于ejbs的NameNotFoundExceptions。 我尝试使用标记手动将ejb模块添加到耳塞,但是当我尝试构建项目时,我收到错误消息: Artifact [ejb]不是项目的依赖项。 尽管事实上,当我看到耳朵的有效pom时,我可以看到ejb被列为依赖。 如何在仍然符合Glassfish 3.1.1更严格的规则集的情况下正确生成application.xml文件? 如果您需要更多信息,请告诉我们,并感谢您的帮助!

如何在JSF 2.0中创建自定义404消息?

目前在我的应用程序中,当用户在URL栏中键入一些非法目的地时,请看到: 我想让它更漂亮,并使用我自己的标记和一点css进行自定义。 – 我需要在我的应用程序上编程,或者我必须在应用程序服务器中配置它吗? – 如果我想这样做,我应该从哪里开始?

Glassfish作为OSGi容器

我正在评估OSGi容器,并且主题是使用Glassfish来包含我的OSGi应用程序组件。 我的问题是:Glassfish对此有好处吗? 有没有人有这种方式使用它的经验? 背景: – 应用程序不是Java EE应用程序,它是Spring应用程序。 – 我一直在评估Felix + Tomcat。 – 我从未使用过Glassfish,但它有一些我们的操作人员感兴趣的function。 谢谢!

为什么我收到Maven错误:“无法确定资源X是否存在于http://maven.glassfish.org/content/groups/glassfish”?

每当我们在Maven中执行我们的site目标时,我们会在控制台日志中获得一长串与依赖项相关的错误。 这些错误似乎是在构建的依赖关系报告创建过程中生成的。 在针对http://maven.glassfish.org/content/groups/glassfish存储库检查资源时,似乎会生成所有错误。 (那里也有一个奇怪的JavaFX错误,但我们暂时不担心) 构建确实成功完成。 10:21:52 [INFO] Generating “Dependencies” report — maven-project-info-reports-plugin:2.7:dependencies 10:22:07 [ERROR] Artifact: com.oracle:javafx:jar:2.2.25 has no file. 10:22:09 [WARNING] The repository url ‘http://repository.springsource.com/maven/bundles/external’ is invalid – Repository ‘spring-external’ will be blacklisted. 10:22:10 [WARNING] The repository url ‘http://download.oracle.com/maven’ is invalid – Repository ‘oracleReleases’ will be blacklisted. 10:22:12 [ERROR] Unable to determine if resource com.fasterxml.jackson.core:jackson-databind:jar:2.4.1.3:compile […]

Glassfish v3 / JNDI入门无法找到问题!

我一直在尝试从Java应用程序客户端调用EJB的方法时遇到问题。 这是代码。 EJB远程接口 package com.test; import javax.ejb.Remote; @Remote public interface HelloBeanRemote { public String sayHello(); } EJB package com.test; import javax.ejb.Stateless; @Stateless (name=”HelloBeanExample” , mappedName=”ejb/HelloBean”) public class HelloBean implements HelloBeanRemote { @Override public String sayHello(){ return “hola”; } } 主类(另一个项目) import com.test.HelloBeanRemote; import javax.naming.Context; import javax.naming.InitialContext; public class Main { public void runTest()throws Exception{ Context […]

tomcat或glassfish作为彗星服务器?

它们都是免费的,但我认为玻璃鱼有一些限制,或者当你达到某个用户(彗星)时,你必须支付? 那是对的吗? 若是真的,你能用tomcat作为彗星服务器吗? 如果没有,那么哪些免费的彗星服务器支持长轮询和iframe?