<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    JPractice

    JSF+Spring+Hibernate+MySQL 開發商務平臺實踐

       :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      12 隨筆 :: 0 文章 :: 20 評論 :: 0 Trackbacks

    2006年2月3日 #

    在JSF中,用Tiles或jsp:include將其他頁包含進來的時候,被包含的頁面中,所有靜態HTML代碼都要用<f:verbatim></f:verbatim>括起來,否則就會出現布局錯位的問題,真是痛苦!JSF的這個弊端不知道要到什么版本才行解決!
    posted @ 2006-03-09 17:55 JPractice 閱讀(522) | 評論 (0)編輯 收藏

    JSF的東西本來就不好搞,加上Tiles就更麻煩了,特別是在頁面格式的布局方面,經常出現一些莫名其妙的東西,花了不是時間,現在還沒有完全解決,但基本功能已經可以進行測試了:
    目前的功能有:信息發布、導航菜單、欄目維護、文章維護、后臺登錄,完成了Tiles的組裝,首頁靜態頁面的布局分割。現在美工方面進一步加工一下,一個文章發布系統已具雛形,尚且叫它v0.1版吧:)

    另外需求稿方面已經進展到v0.7版本,現在這個剛有點形狀的文章發布系統是整個大系統的一小部分,不過功能雖少,但主要收獲是解決了一些JSF方面經常遇到的問題。


    posted @ 2006-03-08 16:11 JPractice 閱讀(303) | 評論 (1)編輯 收藏

    <h:outputLabel id="" value="#{category.name}" />

    上面這行在用sun-ri的應用中不會報錯
    但在MyFaces中就會報錯:
    原因就出在id="" 去掉就會好了

    description The server encountered an internal error () that prevented it from fulfilling this request.

    exception

    javax.servlet.ServletException: empty expr
    	javax.faces.webapp.FacesServlet.service(FacesServlet.java:121)
    	org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(ExtensionsFilter.java:122)
    	com.bizcms.view.utils.SecurityFilter.doFilter(Unknown Source)
    

    root cause

    javax.faces.FacesException: empty expr
    	org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:421)
    	org.apache.myfaces.application.jsp.JspTilesViewHandlerImpl.dispatch(JspTilesViewHandlerImpl.java:233)
    	org.apache.myfaces.application.jsp.JspTilesViewHandlerImpl.renderView(JspTilesViewHandlerImpl.java:219)
    	org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:352)
    	javax.faces.webapp.FacesServlet.service(FacesServlet.java:107)
    	org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(ExtensionsFilter.java:122)
    	com.bizcms.view.utils.SecurityFilter.doFilter(Unknown Source)
    
    posted @ 2006-02-18 23:55 JPractice 閱讀(943) | 評論 (2)編輯 收藏

    一、Action Controller的Action方法中手工獲取請求信息
    ExternalContext context = FacesContext.getCurrentInstance().getExternalContext();
    HttpServletRequest request = (HttpServletRequest) context.getRequest();
    String email = request.getParameter("form2:email");

    二、保護/下面的jsp文件不被直接訪問
    在web.xml中加入:
    <security-constraint>
    <display-name>
        Prevent access to raw JSP pages that are for JSF pages.
    </display-name>
    <web-resource-collection>
        <web-resource-name>Raw-JSF-JSP-Pages</web-resource-name>
        <!-- Add url-pattern for EACH raw JSP page -->
        <url-pattern>/welcome.jsp</url-pattern>
        <url-pattern>/login.jsp</url-pattern>
        ......
    </web-resource-collection>
    <auth-constraint>
          <description>No roles, so no direct access</description>
    </auth-constraint>
    </security-constraint>

    三、加載國際化資源文件
    <f:view locale="#{facesContext.externalContext.request.locale}">
    <f:loadBundle basename="messages" var="msgs"/>

    /WEB-INF/classes目錄下,放messages_cn.properties,message_en.properties.....

    待續。。。

    posted @ 2006-02-16 16:22 JPractice 閱讀(434) | 評論 (0)編輯 收藏

    這兩天項目的進度放慢了,有2、3天沒有寫了blog了,現在成功將Tinymce的HTML編輯器整合到項目里面,提供在線的頁面編輯功能,經過測試,效果還是很不錯的,達到了預期的目標,接下來就是研究首頁菜單導航條的設計和Tiles和JSF的整合。。。
    posted @ 2006-02-13 09:35 JPractice 閱讀(807) | 評論 (1)編輯 收藏

    今天看到一則消息,說Borland公司打算出售整個IDE產品線!曾經風光無限的開發工具供應商竟然走到今天這種地步,連自己的看家法寶都打算拋棄,真是感嘆啊!市場確實是無情的,手中沒有鎮山之寶,一直跟在微軟屁股后面走,始終都是受制于人,現在在開源IDE的沖擊下,最終還是難逃厄運。不過我從.NET出來之后,就一直不看好Borland了,在夾縫中求生存還是難啊.
    posted @ 2006-02-09 21:09 JPractice 閱讀(346) | 評論 (2)編輯 收藏

    今天在跟客戶認真地談了一次需求,雙方整理出一份需求稿v0.1版,將幾大功能版塊總體需求及部分細節、各版塊開發緊急程度、前期部分開發任務(有一小部分比較簡單的功能由于業務開展的需要)的時間進度初步明確下來。開發團隊現在有3人,正在物色一名美工,將來看情況擴充一名開發人員。周6前的工作目標就是進一步跟客戶整理和確認需求、相關開發規范資料的收集編寫、團隊開發溝通平臺的準備、確定同客戶的溝通機制、團隊個人開發環境的準備等等。

    posted @ 2006-02-08 23:58 JPractice 閱讀(307) | 評論 (0)編輯 收藏

    這本書是我今天在整理自己的書柜時找到的,01年買的了,一直沒看,今天翻出來瀏覽了一下目錄,主要是介紹小組團隊開發的整個過程以及過程中涉及的計劃、溝通協調、進度跟蹤、需求定義、小組設計、測試、維護等我們比較關心的問題,并提供了一些實際操作性很強的規范。個人感覺非常實用,所以給大家推薦一下:
    《小組軟件開發過程》 人民郵電出的
    《Introduction to the Team Software Process》

    posted @ 2006-02-08 00:45 JPractice 閱讀(451) | 評論 (1)編輯 收藏

    一個是維護欄目表的,目前只實現了簡單的增加功能,欄目表最難搞的是實現一對多的自身關聯(為了實現不受層次限制)。
    另外一個是初步研究了如何實現Html編輯器,能將編輯完的內容存到表的字段中,就像在這里發表隨筆的功能;
    等這兩個功能進一步完善后,就可以維護欄目和每個欄目下的內容,實現欄目內容的分類和在線維護

    <hibernate-mapping package=".........................">
      <class name="Category" table="cms_categories" lazy="false">
        <id name="id" type="long" column="CATE_ID">
          <generator class="identity"/>
        </id>
        <property name="name" type="string" column="CATE_NAME" length="60" not-null="true"/>
        <set
           name="childCategories"
           cascade="save-update"
           inverse="true"
        >
           <key column="CATE_CATEGORY_ID" />
           <one-to-many class="Category" />
        </set>
        <many-to-one name="parentCategory" column="CATE_CATEGORY_ID" class="Category" cascade="none" />
      </class>
    </hibernate-mapping>
    另外哪位熟悉hibernate的朋友,幫我看看,上面是Category類的映射方法,不過當我寫:
       Category category = new Category(categoryName);

       // find the new category's parent category object by the param parentCategoryId
       Category parentCategory = categoryDao.getCategory(parentCategoryId);

       if (parentCategory != null) {    
          category.setParentCategory(parentCategory);
          // parentCategory.getChildCategories().add(category);    ************
          categoryDao.save(category);
         ...............................


    *******行如果不注釋掉就會出Exception,哪位熟悉hibernate的朋友給指點一下
    posted @ 2006-02-06 00:37 JPractice 閱讀(354) | 評論 (3)編輯 收藏

    功能很簡單,在Mysql 5中建一個BizCms的DB,然后建一個CMS_SYSUSER的表,里面主要有id, name, password等幾個字段,然后利用jsf+spring+hibernate(3)寫一個根據用戶名、密碼登錄的小模塊,寫這個模塊花了半天加一個晚上,大部分代碼都寫得挺順,但是到最后出了點小問題,就是利用Hibernate 3從mysql表中檢索數據的時候,在hibernate的映射文件中,<class...>里面開始沒有加lazy="false",原來hibernate 2中記得好像缺省就是false,但在版本3中就出那個LazyInitialization的Exception,由于代碼測試還不是很熟(唉,要學的東西還很多!),搞了半天,編了一個小的java applaction來測試才發現那個Exception,不過還是體驗了Spring的強大,編寫那個小application還是很容易的,不過感覺JSF就不那么好測試了。最后經過努力還是調試成功,也對整個應用的分層設計有了更深的體會,今天總算有點收獲吧。

    今天要上班了(凌晨了),放完假后就不想每天都弄到凌晨才睡了。。。

    今天早上看了一下,exadel中包含的hibernate版本是3.1.0 alpha
    posted @ 2006-02-05 00:06 JPractice 閱讀(532) | 評論 (3)編輯 收藏

    今天初步將開發環境搭建好,裝了不少軟件(從哪里來就不用說啦),整個過程還算順利吧,初步測試過能運轉起來:
    IDE: Eclipse v3.1.1 + Exadel.Studio.Pro.v3.0 + SpringIDE 1.2.5
    Web容器:Tomcat v5.5.12
    后臺數據庫:MySQL 5
    JDK: JDK5.0.4
    網頁設計軟件:Dreamweaver v8, photoshop cs v9, Flash v8
    版本控制軟件:CVSNT v2

    還有其他分析設計工具、項目管理軟件等咚咚明天再說了,參考資料(電子版的和紙質的)前段時間倒是準備了不少,怕就怕沒這么多時間去認真看,用到再翻咯。今天也夠累的了,只想休息不想弄了。

    posted @ 2006-02-03 22:22 JPractice 閱讀(316) | 評論 (6)編輯 收藏

    最近計劃用jsf+spring+hibernate+mysql替一家公司開發一個大型的商務平臺網站,所以突然想到在blogjava注冊一個blog,打算在這里記錄整個開發歷程,也希望借此結識更多喜歡java開發的朋友。(2006年2月3日凌晨)
    posted @ 2006-02-03 00:26 JPractice 閱讀(219) | 評論 (1)編輯 收藏

    主站蜘蛛池模板: 久久国产一片免费观看| 亚洲理论精品午夜电影| 国产免费AV片在线观看| 亚洲天堂电影在线观看| 免费高清资源黄网站在线观看| 国产成人不卡亚洲精品91 | 亚洲色成人中文字幕网站| 国产无遮挡裸体免费视频在线观看| 亚洲国产午夜电影在线入口| 四虎永久免费地址在线网站| 久草免费福利视频| 久久亚洲中文字幕无码| 亚洲国产一区国产亚洲| 日本人护士免费xxxx视频| 久久免费线看线看| 亚洲a∨无码一区二区| 亚洲gv猛男gv无码男同短文| 免费看大美女大黄大色| 叮咚影视在线观看免费完整版| 天堂亚洲国产中文在线| 日本亚洲视频在线 | 国产成人精品久久亚洲| 真人做人试看60分钟免费视频| 美女扒开尿口给男人爽免费视频| 91情国产l精品国产亚洲区| 亚洲av无码不卡私人影院| 16女性下面扒开无遮挡免费| 激情吃奶吻胸免费视频xxxx| 亚洲黄色三级网站| 国产亚洲精品无码专区| 日本特黄特色免费大片| 99re6免费视频| 91亚洲精品麻豆| 好男人视频在线观看免费看片| 黄页免费在线观看| 五月天婷婷免费视频| 亚洲人成色在线观看| 久久久亚洲裙底偷窥综合| 亚洲人JIZZ日本人| 亚洲毛片av日韩av无码| 免费欧洲毛片A级视频无风险|