我计划创建一个网站,使用 GWT 作为管理界面,使用 JSF 2 作为前端,使用 spring 来处理业务逻辑。
基本上。我将有 3 个项目:
- GWT
- spring(业务逻辑,将来也可能导出一些网络服务)
- JSF 2
在 GWT 中,我计划拥有 spring 上下文(来自依赖的 spring-项目)并使用它连接到数据库?
- 是否可以在 eclipse 中创建 3 个项目,将它们作为依赖项引用,然后创建一个包含所有这些项目的 EAR?
- 用户 session 会发生什么情况?存储在 GWT 和 JSF 2 中?
- 这是一个好的架构吗?怎么才能以其他方式做到这一点?
- 我如何打包它们?所有 war 文件?或 jar ?在一只耳朵里……或者?
最佳答案
首先,为什么要同时使用两种不同的客户端技术(JSF2
和 GWT
)?
我宁愿坚持其中之一。
表示:是的,可以有 3 个不同的项目。实际上,推荐的方法(至少对于 GWT
和 Spring
或任何其他后端)是将它们放在单独的项目中。
Is this possible to create 3 projects in eclipse, refer as dependencies them and then create an EAR that contains all of these?
至少对于 GWT,您通常无法直接访问后端/数据库(不确定 JSF2)。您必须使用某种通信协议(protocol)(RequestBuilder
、RequestFactory
、GWT-RPC
、REST
)
您可以拥有可以由您的 GWT 和 Spring 应用程序(通常使用通过 GWT-RPC
或 RequestFactory
)
What happens to user session? stored in GWT and JSF 2?
用户 session 没有什么特别的。 GWT 和 JSF 通过 HTTP 请求与后端进行通信。因此,适用于普通 HTTP 请求的同样的事情也适用于 GWT/JSF2 请求。
Is it a good architecture? how can be this done somehow else?
这取决于您想要实现的目标。如前所述,我宁愿坚持使用一种客户端技术(GWT
或 JSF2
),而不是同时使用它们。
How do I package those? all war files? or jar? in a single ear... or?
GWT 编译为 javascript,包含在您的主机文件中。 因此,您通常会创建一个部署到应用程序服务器的 WAR 或 EAR 文件。
关于java - 架构 java gwt+jsf2+spring 封装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14782713/