程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> J2EE >> OSGi與JSF結合開發

OSGi與JSF結合開發

編輯:J2EE

首先感謝羅明提供的無私幫助,很多天來一直沒有將OSGi的JSF應用問題解決,這兩天跟羅明在網上聊關於這方面的話題,給予了我不少的幫助,同時也使我的問題得到了解決。

這些日子沒有少在羅明的博客上晃悠,但總是讓人感覺這個家伙總喜歡“高手過招,點到為止”,這樣可能對於大多數對OSGi接觸不多的人來說,可能還是有些抽象,為了方便大家學習和使用OSGi,我決定自己寫一篇關於OSGi與JSF結合的例子,比較詳細的介紹如何實現一個OSGi與JSF結合的例子。

在OSGi與JSF結合的使用中,由於需要改寫一些由Equinox實現好的項目org.eclipse.equinox.JSP.jASPer的一些源碼,因此,操作起來似乎稍微要麻煩一些,Equinox上的項目基本上都是通過CVS來管理的,因此首先需要保證自己已經安裝了CVS客戶端,然後拉下代碼,為下面的工作做好准備。

先就將OSGI與JSF的結合使用例表如下:
1. 建立plugin工程:osgi.JSf.finals
2. 編寫頁面

◆index.JSP

  1. <%@taglib uri="http://Java.sun.com/JSf/core" prefix="f" %>
  2. <%@taglib uri="http://Java.sun.com/JSf/Html" prefix="h" %>
  3. <%@page contentType="text/Html;charset=UTF-8"%>
  4. <Html>
  5. <head>
  6. <title>JSF Samples</title>
  7. </head>
  8. <body>
  9. <f:vIEw>
  10. <h:form>
  11. <h:outputText style="color:red" value="#{user.errMsg}" />
  12. <h3>JSF Samples</h3>
  13. Nick Name: <h:inputText value="#{user.id}"/><p>
  14. <h:commandButton value="Submit" action="#{user.verify}"/>
  15. </h:form>
  16. </f:vIEw>
  17. </body>
  18. </Html>

◆welcome.JSP

  1. <%@ taglib uri="http://Java.sun.com/JSf/core" prefix="f" %>
  2. <%@ taglib uri="http://Java.sun.com/JSf/Html" prefix="h" %>
  3. <%@page contentType="text/Html;charset=UTF-8"%>
  4. <Html>
  5. <head>
  6. <title>JSF Samples</title>
  7. </head>
  8. <body>
  9. <f:vIEw>
  10. <h:outputText value="#{user.id}"/> Welcome!
  11. <h3>JavaServer Faces!</h3>
  12. </f:vIEw>
  13. </body>
  14. </Html>

3. 實現相應類UserBean.Java

  1. package org.danlley.JSf.beans;
  2. public class UserBean {
  3. private String id;
  4. private String pwd;
  5. private String errMsg;
  6. public String getId() {
  7. return id;
  8. }
  9. public void setId(String id) {
  10. this.id = id;
  11. }
  12. public String getErrMsg() {
  13. return errMsg;
  14. }
  15. public void setErrMsg(String errMsg) {
  16. this.errMsg = errMsg;
  17. }
  18. public String getPwd() {
  19. return pwd;
  20. }
  21. public void setPwd(String pwd) {
  22. this.pwd = pwd;
  23. }
  24. public String verify() {
  25. if (id.equals("JSfUser")) {
  26. return "success";
  27. } else {
  28. setErrMsg("userID should be JSfUser");
  29. return "failed";
  30. }
  31. }
  32. }
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved