0
我有一種感覺,我混合了EJB和JSF託管bean的職責,但我想要的是一個計劃任務EJB(@Singleton
和@Schedule
),可以訪問我的JSF應用程序作用域bean 。有權訪問JSF託管豆的EJB計劃任務
具體來說,我有一個JSF @ApplicationScoped
bean,它根據開發,測試或生產中是否發送不同的電子郵件。我想安排這個每24小時發送一次電子郵件。什麼是實現這一目標的最佳方式?
EJB需要'@ ApplicationScoped' bean的用途是什麼? EJB本身應該能夠生成和發送電子郵件。 EJB層中是否有一些信息需要執行它的功能?試圖建立從EJB到託管bean的依賴關係是一個嚴重的設計缺陷。依賴性應該從Web層到業務(EJB)層 – kolossus 2013-02-25 21:29:54
EJB需要知道web.xml中的javax.faces.PROJECT_STAGE變量以確定DEV,TEST或PROD。目前來自應用程序bean。涉及EJB的主要原因是'@ Schedule'表示法的簡單性。 – Strumbles 2013-02-25 21:53:43
將這兩層綁定在一起的要求太過簡單,就像IMO那樣。將配置外部化爲兩個組件均可訪問的屬性文件。 – kolossus 2013-02-25 22:20:07