草庐IT

java - jsf bean 和 ejb bean 的区别

这个问题在这里已经有了答案:WhenisitnecessaryorconvenienttouseSpringorEJB3orallofthemtogether?(2个答案)关闭3年前。我需要一些说明。我知道如何使用JSF及其相应的sessionbean,但我对EJB感到困惑。EJB引入的bean和JSF使用的sessionbean之间有什么区别(对于ejb,我知道无状态/完整sessionbean和实体bean、实体管理器等)。我只是不明白何时使用EJB以及何时使用jsfbean。除了实体bean之外,ejb有状态/无sessionbean看起来都类似于jsfsessionbean。我

java - 设置/配置 EJB 定时器服务的数据源

我正在尝试在我的应用程序中使用EJB3.1中的计时器服务。@Stateless@LocalBeanpublicclassStatelessTimerSessionBean{@Schedule(minute="*",second="0",dayOfMonth="*",month="*",year="*",hour="9-17",dayOfWeek="Mon-Fri")publicvoidmyTimer(){System.out.println("Timerevent:"+newDate());}}"..settheEJBTimerService’sTimerDataSourcesetti

java - EJB - Home/Remote 和 LocalHome/Local 接口(interface)

为了考试主要是面向组件设计和J2EE,复习了一些以前的试卷,我遇到了以下问题:场景3的初步调查:“交换请求”表明两个EJB将提供合适的解决方案:一个名为EnterExchangeRequest的sessionbean用于控制处理,一个名为ExchangeRequest的实体bean用于表示请求的持久属性.讨论以下接口(interface)的作用:首页远程本地首页本地以及它们将如何提供对上述EJB服务的访问。我可以尝试解释Home和Remote界面如何适合图片。我还听到讲师说可以用LocalHome替换Home,用Local替换Remote(为什么?),但他们为什么要我同时讨论所有四个人

java - 错误组装 EJB : META-INF/ejb-jar. ejbVersion 2.x 需要 xml

有没有一种方法可以使用Maven构建不包含部署描述符的EJB项目? 最佳答案 org.apache.maven.pluginsmaven-ejb-plugin3.0您需要告诉Maven使用EJB3.0。 关于java-错误组装EJB:META-INF/ejb-jar.ejbVersion2.x需要xml,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/20240372/

java - 在注入(inject)点带有限定符 [@Default] 的类型 [...] 的不满足依赖关系(将 @Stateful EJB 与 CDI 结合使用)

我有以下代码来管理两种存储库。两个存储库类都继承了一个接口(interface)以允许重新初始化它们的资源。publicinterfaceCachingRepository{publicvoidinvalidateCache();}全局的、应用范围的存储库:@Named("globalRepo")@ApplicationScopedpublicclassGlobalRepositoryimplementsCachingRepository{privateListcategories;...@OverridepublicvoidinvalidateCache(){categories=n

java - 无法导入 javax.ejb.* 包

我在构建EJBsessionbean时遇到了问题。无法找到以下包:importjavax.ejb.LocalBean;importjavax.ejb.Stateful;importjavax.ejb.TransactionManagement;importjavax.ejb.TransactionManagementType;一些解决方案暗示将库j2ee.jar和javaee.jar添加到java构建路径。我正在使用jdk-7u75-windows-x64和java_ee_sdk-7-windows-ml并且在给定位置找不到任何这些库($JAVA_HOME\库)。我在Windows7x

java - 我可以(以及如何)在 EJB 模块中使用 javax.naming.Context#lookup 查找 CDI 管理的 bean 吗?

我能否(如果可以,如何?)在EJB模块中使用javax.naming.Context#lookup查找CDI管理的bean?我正在使用GlassFishv3。我想我可以使用@Named,但是CDI托管bean的JNDI名称是什么?我想从非托管POJO中查找它们,所以我不能使用@Inject。 最佳答案 您还可以使用CDI.current()访问BeanManager,这样可以节省您键入的好几行代码。示例取自here使用CDI.current()BeanManagerbm=CDI.current().getBeanManager();

java - 可以在运行时为 @Schedule 注释更改 ejb 参数吗?

对于有ejb经验的人来说,这可能是个愚蠢的问题......我想通过@Schedule注释为我的一个使用JavaEE调度程序的EJBbean动态读取和更改分钟参数。有人知道如何在运行时执行此操作,而不是像下面这样在类中对其进行硬编码吗?如果我要以编程方式执行此操作,我仍然可以使用@Schedule注释吗?@Schedule(dayOfWeek="0-5",hour="0/2",minute="0/20",timezone="America/Los_Angeles")privatevoidcheckInventory(){} 最佳答案

java - JSF2 - 由 EJB 或 ManagedBean 支持?

在学习JSF2时,我意识到我不确定支持组件应该是什么。从设计的角度来看,EJB和@ManagedBeans有什么区别?最终还是要用JPA,业务层自然选择EJB。直接从JSF使用EJB是一种好的做法吗(如here所述)?目前,我倾向于将@ManagedBean用于不需要访问业务层(例如View助手)或处理请求/session数据的组件。用于其他目的,例如在网格中列出一些东西,我会直接访问EJB。这是一个好的设计吗?为了干净的层分离,我是否应该对所有支持beans使用@ManagedBeans,即使在某些情况下它们只委托(delegate)给EJB? 最佳答案

java - 使用 EntityManager 从 EJB 访问 Hibernate Session

是否可以从EntityManager获取HibernateSession对象?我想访问一些特定于hibernate的API...我已经尝试过类似的方法:org.hibernate.SessionhSession=((EntityManagerImpl)em.getDelegate()).getSession();但只要我在EJB中调用一个方法,我就会得到“在EJB上调用期间发生系统异常”并带有NullPointerException我使用glassfish3.0.1 最佳答案 Bozho和partenon是正确的,但是:在JPA2中