Tag: java ee 6

我应该选择Spring还是坚持使用Java EE 6?

我将完成核心Java课程,现在我必须转到Java EE方面。 我非常困惑,我应该简单地使用Java EE 6,因为我有从头到尾轻松教授的书籍,一切都在那里。 或者我应该只从Spring开始? 因为我必须从头开始,所以我遵循良好的趋势,更加注重工作。 或者即使我只使用Java EE,然后如果我需要继续使用Spring,它将会很快,反之亦然。 还有Hibernate在它们之间的位置? 我的意思是,如果我使用Java EE 6,我还需要Hibernate还是Java EE 6,我不需要它。 如果我不使用Spring或Spring,我是否会处于不利地位,可以使我的构建Web应用程序比核心Java EE / JSF框架更容易。

为dev / QA / prod配置Java EE 6

我有一个Java EE 6应用程序,我使用Maven构建,代码在NetBeans 7中,并部署在GlassFish 3.1.2上。 当我接近完成时,我发现自己正在部署演示版本。 问题是我没有任何简单的方法来构建不同的环境,如dev,QA,demo,prod等。对于某些东西,我一直在使用带有一堆静态getter的Java类返回值基于环境常量的值。 但是这对条件设置没有帮助 javax.faces.PROJECT_STAGE(web.xml) 数据库凭据(glassfish-resources.xml) 邮件服务器(glassfish-resources.xml) JPA日志记录级别(persistence.xml) 可能还有许多其他我现在想不到的东西分散在XML文件中。 有没有办法定义这些配置文件的多个版本,只是在构建时设置一个标志来选择环境,而在没有指定环境时默认为dev? 在这种情况下,有没有办法让Maven为我工作?

部署为WAR-only的EJB 3.1应用程序:ejb-jar.xml怎么样?

我有一个JavaEE6应用程序,由Web东西和EJB组成,并且部署为仅使用WAR(使用EJB3.1)。 构建基于Maven。 我刚刚读到了在Java EE 6中订购模块初始化的新可能性,这也是我的应用程序所需要的。 此外,我想有一个选项来定义XML中的一些EJB属性。 由于该示例部署为EAR项目,因此订单在application.xml中定义。 但是在WAR部署的项目中,没有application.xml。 现在我想知道我在哪里可以定义这样的信息? 或者是否可以在WAR-deployed-app中以某种方式使用application.xml? 编辑: 哎呀我没有正确阅读模块顺序示例,在第一时间我认为它是关于我的应用程序中的EJB加载的顺序。 当然我的WAR-app中只有一个模块,所以排序没有意义。 好的,但正如我所说,一个大问题仍然存在(也改变了问题标题以反映变化):ejb-jar.xml怎么样? 我可以用XML以某种方式定义关于我的EJB的东西(因为它对某些设置有用,以避免重新编译)?

EJB3.1系统exception与javax.ejb.EJBException

在提出我的问题之前,只是关于EJB3.1exception的一些背景知识 – 应用程序例外包括 用户定义的具有@ApplicationException注释的已检查或未检查的exception 所有已检查的例外 java.lang.Exception&它的子类exception 除了java.rmi.RemoteException和它的子类exception 系统例外包括 java.rmi.RemoteException和它的子类exception 所有未经检查的例外情况 java.lang.RuntimeException和它的子类exception java.lang.Error和它的子类exception 以下是我在本书中读到的声明 在EJB系统中,客户端不会例外,当遇到此类exception时,这些exception不会按原样传递给客户端,而是在javax.ejb.EJBException中包含。 我的问题 – 上面描述的所有应用程序exception是否应该由EJB直接抛给客户端? 如果在抛出到客户端之前将系统exception包装在javax.ejb.EJBException中,那么javax.ejb.EJBException是否被视为系统exception?

使用JPA2 Criteria API选择MAX时间戳

所以我的实体有: @Column(name=”TS”, nullable=false) private java.sql.Timestamp timestamp; 我生成的MetaModel具有: public static volatile SingularAttribute timestamp; 我想通过Max Timestamp值选择: Root root = query.from(MyEntity.class); Expression maxExpression = cb.max(root.get(MyEntity_.timestamp)); 但我不被允许,因为: max(Expression x)使用数值max运算创建聚合表达式。 Expression 当然Timestamp不会扩展Number 。 如何使用typesafe Criteria API在Timestamp列上执行MAX ? 谢谢。

jsp的范围:useBean

针对home.jsp include.jsp 这给出了一个错误,即在include.jsp中未定义“username”,即使Bean的范围是应用程序…

如何使用JSF 2 h:outputStylesheet实现“CSS版本控制”(以解决缓存问题)?

我开始使用JSF 2,所以我想尝试一下h:outputStylesheet。 它工作正常但后来我尝试应用“模式”或将查询字符串添加到请求的技巧,该请求随文件版本而变化以强制浏览器获取更改。 像这里使用的东西 。 不幸的是我无法做到这一点。 实际上,当使用该标记时,它不会生成一个简单的URL,而是一个已经具有查询字符串的计算URL。 我已经在规范和这里找到了有关JSF 2中资源版本化的一些信息,但它似乎指的是资源的多个版本,这不是我需要的。 当然,我总是可以回去不使用新标签。 但我想在此分享一下以供讨论。 更新1 – 一些例子: 我试过的是这样的: 其呈现为: 相当具有描述性。 😉 我试图得到的是这样的: 其中,使用JSP,我曾经这样说过: <link rel="stylesheet" type="text/css" href="”/>

我在哪里可以在Java EE 6中配置@Asynchronous调用后面的线程池?

我最近了解到,通过简单地添加@Asynchronous注释,我可以轻松地使任何会话bean方法异步 。 例如 @Asynchronous public Future processPayment(Order order) throws PaymentException { … } 我知道Java EE 7添加了Concurrency Utilities ,但在Java EE 6中, @Asyncronous方法的线程池配置在@Asyncronous ? 有没有办法设置超时? 它是一个固定的线程池吗? 一个缓存的? 什么是优先事项? 它可以在容器中的某个位置配置吗?

如何使用接口和JPA

我应该首先说我是Java EE的新手,我还没有扎实的Java理论背景。 我在掌握如何在Java中使用JPA和interfaces遇到了麻烦。 为了说明我发现的困难,我创建了一个非常简单的例子。 如果我有两个简单的接口Person和Pet : public interface Person { public Pet getPet(); public void setPet(Pet pet); } public interface Pet { public String getName(); } 实现Person的Entity PersonEntity以及实现Pet的PetEntity : @Entity public class PersonEntity implements Person { @Id @GeneratedValue(strategy=GenerationType.AUTO) private Long id; private PetEntity pet; @Override public void setPet(Pet pet) { /* How do i solve […]

一场战争中有多个CDI配置文件(开发,测试版,qa,生产)?

有了使用Spring DI applicationContext.xml声明dependency injection的方法的经验,我现在试着弄清楚如何用Java EE6 CDI做同样的事情。 使用Spring,我可以将我的.jar与几个配置文件一起发送,例如unittest.xml,devel.xml,qa.xml,production.xml ,并使用命令行参数或环境变量激活它们。 使用CDI,我可以在beans.xml中使用@Alternative和web.xml中的属性,但似乎没有办法为不同的环境提供多个beans.xml。 我不想使用Maven配置文件/filter来生成我的应用程序的4-6版本,虽然我知道在某些情况下这将是更好的解决方案(即向客户发送准备好的构建战争 – 但我只在内部使用我的战争所以让我们节省编译时间!) 优选地,我还能够从文件系统加载这些配置文件,以便系统管理员可以编辑它们而无需重新构建应用程序。 具有多个依赖关系和属性配置集的Java EE6方法是什么? 如果没有,那么2013年的推荐替代品是什么? 用Spring? 接缝? 吉斯? 我看到了Apache DeltaSpike的提及,但它们仍然看起来像网页上的alpha。