【问题标题】:JSF 1.2 + Spring 2.5. How to?JSF 1.2 + 弹簧 2.5。如何?
【发布时间】:2009-06-17 23:01:06
【问题描述】:

我正在使用 Spring 来管理我的 DAO 和服务。和用于 UI 的 JSF。我想在我的 JSF backing-bean 中使用依赖注入。有一篇文章解释了我如何做到这一点。

但我有两个独立的项目:一个用于服务,一个用于 UI。 Spring 配置文件位于 Service 项目中。

如何将两个项目与 Spring 连接起来?我想为 DI 注释我的 JSF 页面。

【问题讨论】:

  • 不需要道歉。这就是编辑可以提供的帮助。

标签: java spring jsf


【解决方案1】:

您可以通过使用 Spring Web Flow 来实现这一点。

春天有例子表明:

  1. 一种以 JSF 为中心的方法,其中您的 Spring 和 JSF bean 以 JSF 方式 (faces-config) 和 a
  2. 进行管理/配置
  3. 以 Spring 为中心的方法,您的 bean(包括 ManagedBeans)在 Spring 上下文中进行管理。

Spring Flow Web Home

【讨论】:

    【解决方案2】:

    如果您的意思是您有一个定义了 Web 服务的 WAR,而另一个带有 JSF 内容的独立 WAR,我认为这实际上是两个独立的项目,每个项目都有自己的 Spring 配置。

    Web 服务 WAR 将使用 Spring Web 服务或 HTTP 远程处理通过 HTTP 向客户端公开您的服务接口。这将具有一组应用程序上下文配置,XML 或注释。

    JSF WAR 将具有 JSP 和控制器。控制器将被注入客户端,这些客户端将与远程服务交互以完成您想要的。这就是他们需要了解的有关服务 WAR 的全部信息。根本不需要任何重复的配置。

    这实际上是一个不错的设计,因为它将视图与问题的其余部分完全分离。

    【讨论】:

    • 我的服务层我打包在 jar 中。我的 WAR 在他的依赖项中有这个 jar,我将这个 JAR 打包到我的 WAR 中。我是 JSF 和 Spring 的新手,也许我没有准确地描述我想要什么。我可以使用 jsf faces-config.xml 将 spring bean 注入 JSF bean。但对我来说,注释看起来比 xml 好得多。这就是为什么我需要我的 jsf backing-beans 也由 spring 管理。还是做这样的事情不是很好?
    • 听起来不错。无论哪种方式,你都可以做到。我也喜欢注释。我认为它使代码更干净。我不明白为什么服务层必须在 JAR 中。为什么不将它与应用程序的其余部分一起构建并将整个内容打包到 WAR 中?
    • 因为,正如您在上一篇文章中所说,将我的逻辑与 UI 分开是一件好事。可以在不合并项目的情况下做我想做的事吗?或者也许还有其他方法可以在 JSF 中使用 Spring 注入?
    • 您可以将 Spring 注入与 JSF 一起使用,但 Spring 只能管理其应用程序上下文中存在的对象,即其 JVM。您不能从另一个项目中注入对象,在另一台机器上运行。这就是我正在阅读您的要求的方式。是我错了吗?
    • 我希望所有歌曲都能在 Tomcat 下工作。我认为如果我的服务只是 JAR,而不是它们与 JSF 在同一个 JVM 中工作。我想要这样的cagataycivici.wordpress.com/2007/12/19/… 但有两个独立的项目。一个管理 DAO 和 Service,一个 JSF。他们都在 Toncat 下的一个范围内工作。
    【解决方案3】:

    感谢我所做的每一个人。我的错误是 bean 初始化。我试图在构造函数中访问我注入的 bean,但必须在 @PostConstruct 方法中进行。一直以来,我都试图在我的配置文件中找出错误。但它就在这么简单的地方:)

    【讨论】:

      【解决方案4】:

      我找到了一些解决方案: Sample Application using JSF, Spring 2.5, and Java Persistence APIs with Glassfish v2 .但我有问题。

      我可以发布这个问题听到还是必须创建新主题?对不起,愚蠢的问题,我是她的新手。

      【讨论】:

        猜你喜欢
        • 2012-05-09
        • 1970-01-01
        • 2011-02-17
        • 2014-05-01
        • 2012-07-04
        • 1970-01-01
        • 2015-08-11
        • 2017-12-22
        • 1970-01-01
        相关资源
        最近更新 更多