Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Maven 在不同Java EE之间共享文件和backbeans_Maven_Jakarta Ee_Glassfish - Fatal编程技术网

Maven 在不同Java EE之间共享文件和backbeans

Maven 在不同Java EE之间共享文件和backbeans,maven,jakarta-ee,glassfish,Maven,Jakarta Ee,Glassfish,我正在使用PrimeFaces5.0、JavaEE7、Maven 3.0.5、Netbeans 7.4和GlassFish 4.0开发一个大型系统 我想将其实现为多个WAR、多个EJB、一个EAR。 多个WAR可能有共同的文件,如JS、CSS、XHTML、Backbeans和转换器 我使用包含这些资源的jar实现了这一点。 我需要一个会话范围的bean在不同的战争之间共享,我发现了这个,但我发现它比我需要的更多 所以我的问题是: 使用罐子是分享我想要的东西的正确方法吗?? 我应该把primef

我正在使用PrimeFaces5.0、JavaEE7、Maven 3.0.5、Netbeans 7.4和GlassFish 4.0开发一个大型系统

我想将其实现为多个WAR、多个EJB、一个EAR。 多个WAR可能有共同的文件,如JS、CSS、XHTML、Backbeans和转换器 我使用包含这些资源的jar实现了这一点。

我需要一个会话范围的bean在不同的战争之间共享,我发现了这个,但我发现它比我需要的更多

所以我的问题是:

使用罐子是分享我想要的东西的正确方法吗?? 我应该把primefaces或omnifaces这样的jar放在项目的什么地方,它们使用相同的类装入器?? 如何在不同战争之间共享会话范围??
根据我们的经验,我一直在从事一个ear项目,其要求与您的类似:

当然。我们已经分离了我们的war项目,并将它们用作扩展控制器来执行前端逻辑并将数据传递给视图,它们通过名为common-services.jar的jar文件进行服务调用。我们的整个服务层都生活在一个jar文件上。然而,如果你问我个人的意见,我认为仅仅为服务创建一个第三次war文件,并与所有前端回购进行restful对话是非常有意义的。这样,服务调用就可以向第三方用户开放,而无需进行任何进一步的工作。总而言之,是的,这是一个可以接受的方法,但是你也应该考虑把它包装成战争。< /P> 在父pom上,首先是war,因此所有war文件使用相同的版本,并从单个pom进行管理

将所有基于会话的操作带到我们在问题1中讨论过的第三个jar/war。这样做更有意义。或者我想你需要像单点登录这样的解决方案。但我的第一个建议对我们很有吸引力


如果您使用的是spring:1 maven,则可以构建一个由共享库文件夹和WAR组成的ear。仅在此lib文件夹中的2个jar可能包含spring根上下文,您可以在其中声明bean。3可能您需要WebApprototKeyThank进行重播,但我认为我可以在不使用spring的情况下修复此问题。感谢您的重播,我的会话范围的backbean位于公共jar中,但在我的情况下,每一场战争都会创建自己的会话。顺便说一句,每一场战争都有公共jar的依赖项标记。