在我的新工作中,我不得不使用Adobe AEM及其附帶的一切。但是因爲對我和我的團隊來說,一切都是新的,所以我們有一些主要的困難,理解什麼是最佳實踐以及什麼是正確的「代碼工作流程」。我已經閱讀了所有可能的東西,但是有些東西與我的腦袋混淆了,我無法單獨弄清楚。編碼工作流,在AEM中使用Sightly和Spring MVC進行模型更新
我的問題是: 當我不想使用JCR樹,我只想爲特定用戶(不是真正的CMS組件),我想不出來,我不明白我如何能夠重新加載我的組件信息(基於某個型號)。
所以......想象我有一個有N個汽車的身份驗證的用戶。 我開發了一個組件,顯示其中一輛汽車的信息。選定的汽車可以更改,我想用選定的汽車信息更新組件。
默認情況下,當頁面加載時,加載車號1。
第一個問題:如何把這個第一輛車裝? 我第一次嘗試使用WCMUse擴展來備份組件,並在activate()方法中設置我的默認汽車屬性。
但這似乎奇怪了吧,因爲我不知道我是怎麼此類連接到我的春節控制器...
我讀過ResourceModel可用於這一點,但它會映射它的屬性到我沒有的Car JCR節點。
第二個問題:想象一下,第一個Car被正確加載,我在我的Spring Controller上調用一個方法來更新它。 需要做些什麼來反映汽車信息組件的這種變化?
因此,要完成,我想我的主要兩個問題是:什麼應該是悅目組件模型,以及如何使用更新的信息的組件刷新。
非常感謝。
感謝您的回答!但我仍然有疑問。 :P 讓我解釋一下: 1st)如何從OSGi服務的Spring Controller獲取數據?我需要通過HTTP調用它還是能夠將其注入到我的服務中?我不知道這是否合理,但是,因爲它們都在同一個包中,並且OSGi服務不會成爲我的應用程序上下文的一部分,所以我怎樣才能調用Spring Controller? –
2nd)也許這是我錯誤的主要地方,因爲我習慣於客戶端渲染,而不是服務器端。我的頁面上有多個組件,在這種情況下,我只想看到汽車信息組件的更改,而不是整個頁面。我可以這樣做嗎?只通過更改模型屬性強制更改該特定組件? –