如何製作一個鏈接,您可以通過電子郵件發送給用戶以確認他們的電子郵件地址在JSF中單擊了?即一旦他們點擊鏈接,他們的賬戶將被激活。確認鏈接JSF中的電子郵件
9
A
回答
17
假設你已經在JSF 2.0,你可以抓住@ManagedProperty
和@PostConstruct
。
@ManagedBean
@RequestScoped
public class Activation {
@ManagedProperty(value="#{param.key}")
private String key;
private boolean valid;
@PostConstruct
public void init() {
valid = check(key); // And auto-login if valid?
}
// ...
}
,然後在JSF是由http://example.com/activate.jsf?key=somelonggeneratedkey
<h:panelGroup layout="block" rendered="#{activation.valid}">
<p>Your account is successfully activated!</p>
<p><h:link outcome="home">Go to home page</h:link></p>
</h:panelGroup>
<h:panelGroup layout="block" rendered="#{!activation.valid}">
<p>Activation failed! Please enter your email address to try once again.</p>
<h:form>
...
</h:form>
</h:panelGroup>
6
您可以通過創建一個頁面(.JSP爲前),有實現它:
<f:view beforePhaseListener="#{userActivationController.performActivation}">
(這是小面;對於JSP屬性只是beforePhase
)。然後,在管理bean的方法使用FacesContext.getCurrentContext().getExternalContext().getParameterMap()
獲取請求patameters並獲得激活碼,這是通過這樣的:
相關問題
- 1. 使用電子郵件的JSF確認鏈接
- 2. Bluemix確認電子郵件中的鏈接不起作用
- 3. 確認電子郵件的
- 4. 在jsp中發送電子郵件確認鏈接
- 5. 確認電子郵件已鏈接到有效的PayPal賬戶
- 6. 確認提交電子郵件鏈接的最佳方式ID
- 7. 確認電子郵件
- 8. PHP確認電子郵件
- 9. 電子郵件確認asp.net
- 10. 電子郵件確認碼
- 11. 確認電子郵件
- 12. 電子郵件確認Firebase
- 13. 電子郵件確認rubyonrails
- 14. Wordpress電子郵件確認
- 15. LimeSurvey電子郵件確認
- 16. 電子郵件確認jquery
- 17. 電子郵件確認
- 18. 由Outlook加載的確認電子郵件鏈接導致雙重確認
- 19. 鏈接從訂單確認電子郵件訂購
- 20. 谷歌腳本電子郵件確認與url超鏈接
- 21. 谷歌表格確認電子郵件與鏈接表信息
- 22. 打開默認的電子郵件上UWP電子郵件超鏈接
- 23. Magento的事務電子郵件 - 訂單確認電子郵件
- 24. 集中的mailto電子郵件鏈接
- 25. 識別電子郵件中的鏈接
- 26. PHP電子郵件與確認鏈接發送但確認鏈接不起作用
- 27. 需要在從AS3/PHP發送的電子郵件中嵌入「確認鏈接」
- 28. Django的allauth:電子郵件確認
- 29. 設計軟件電子郵件確認
- 30. 通過點擊鏈接確認電子郵件收件人的腳本
訪問這正是我需要的。謝謝+1 – 2010-12-06 17:09:43
快速的問題。代碼需要很長且獨一無二。 java有沒有辦法像BalusC那樣產生一個很長的獨特序列?我不認爲Java隨機數生成器保證唯一性 – 2010-12-06 17:17:47
@Harry:使用['java.util.UUID'](http://download.oracle.com/javase/6/docs/api/java/util/UUID.html) :'String uuid = UUID.randomUUID()。toString();'。 – BalusC 2010-12-06 17:27:00