<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 開(kāi)發(fā)商務(wù)平臺(tái)實(shí)踐

       :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      12 隨筆 :: 0 文章 :: 20 評(píng)論 :: 0 Trackbacks

    2006年2月5日 #

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

    JSF的東西本來(lái)就不好搞,加上Tiles就更麻煩了,特別是在頁(yè)面格式的布局方面,經(jīng)常出現(xiàn)一些莫名其妙的東西,花了不是時(shí)間,現(xiàn)在還沒(méi)有完全解決,但基本功能已經(jīng)可以進(jìn)行測(cè)試了:
    目前的功能有:信息發(fā)布、導(dǎo)航菜單、欄目維護(hù)、文章維護(hù)、后臺(tái)登錄,完成了Tiles的組裝,首頁(yè)靜態(tài)頁(yè)面的布局分割。現(xiàn)在美工方面進(jìn)一步加工一下,一個(gè)文章發(fā)布系統(tǒng)已具雛形,尚且叫它v0.1版吧:)

    另外需求稿方面已經(jīng)進(jìn)展到v0.7版本,現(xiàn)在這個(gè)剛有點(diǎn)形狀的文章發(fā)布系統(tǒng)是整個(gè)大系統(tǒng)的一小部分,不過(guò)功能雖少,但主要收獲是解決了一些JSF方面經(jīng)常遇到的問(wèn)題。


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

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

    上面這行在用sun-ri的應(yīng)用中不會(huì)報(bào)錯(cuò)
    但在MyFaces中就會(huì)報(bào)錯(cuò):
    原因就出在id="" 去掉就會(huì)好了

    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) | 評(píng)論 (2)編輯 收藏

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

    二、保護(hù)/下面的jsp文件不被直接訪問(wèn)
    在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>

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

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

    待續(xù)。。。

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

    這兩天項(xiàng)目的進(jìn)度放慢了,有2、3天沒(méi)有寫(xiě)了blog了,現(xiàn)在成功將Tinymce的HTML編輯器整合到項(xiàng)目里面,提供在線的頁(yè)面編輯功能,經(jīng)過(guò)測(cè)試,效果還是很不錯(cuò)的,達(dá)到了預(yù)期的目標(biāo),接下來(lái)就是研究首頁(yè)菜單導(dǎo)航條的設(shè)計(jì)和Tiles和JSF的整合。。。
    posted @ 2006-02-13 09:35 JPractice 閱讀(807) | 評(píng)論 (1)編輯 收藏

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

    今天在跟客戶(hù)認(rèn)真地談了一次需求,雙方整理出一份需求稿v0.1版,將幾大功能版塊總體需求及部分細(xì)節(jié)、各版塊開(kāi)發(fā)緊急程度、前期部分開(kāi)發(fā)任務(wù)(有一小部分比較簡(jiǎn)單的功能由于業(yè)務(wù)開(kāi)展的需要)的時(shí)間進(jìn)度初步明確下來(lái)。開(kāi)發(fā)團(tuán)隊(duì)現(xiàn)在有3人,正在物色一名美工,將來(lái)看情況擴(kuò)充一名開(kāi)發(fā)人員。周6前的工作目標(biāo)就是進(jìn)一步跟客戶(hù)整理和確認(rèn)需求、相關(guān)開(kāi)發(fā)規(guī)范資料的收集編寫(xiě)、團(tuán)隊(duì)開(kāi)發(fā)溝通平臺(tái)的準(zhǔn)備、確定同客戶(hù)的溝通機(jī)制、團(tuán)隊(duì)個(gè)人開(kāi)發(fā)環(huán)境的準(zhǔn)備等等。

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

    這本書(shū)是我今天在整理自己的書(shū)柜時(shí)找到的,01年買(mǎi)的了,一直沒(méi)看,今天翻出來(lái)瀏覽了一下目錄,主要是介紹小組團(tuán)隊(duì)開(kāi)發(fā)的整個(gè)過(guò)程以及過(guò)程中涉及的計(jì)劃、溝通協(xié)調(diào)、進(jìn)度跟蹤、需求定義、小組設(shè)計(jì)、測(cè)試、維護(hù)等我們比較關(guān)心的問(wèn)題,并提供了一些實(shí)際操作性很強(qiáng)的規(guī)范。個(gè)人感覺(jué)非常實(shí)用,所以給大家推薦一下:
    《小組軟件開(kāi)發(fā)過(guò)程》 人民郵電出的
    《Introduction to the Team Software Process》

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

    一個(gè)是維護(hù)欄目表的,目前只實(shí)現(xiàn)了簡(jiǎn)單的增加功能,欄目表最難搞的是實(shí)現(xiàn)一對(duì)多的自身關(guān)聯(lián)(為了實(shí)現(xiàn)不受層次限制)。
    另外一個(gè)是初步研究了如何實(shí)現(xiàn)Html編輯器,能將編輯完的內(nèi)容存到表的字段中,就像在這里發(fā)表隨筆的功能;
    等這兩個(gè)功能進(jìn)一步完善后,就可以維護(hù)欄目和每個(gè)欄目下的內(nèi)容,實(shí)現(xiàn)欄目?jī)?nèi)容的分類(lèi)和在線維護(hù)

    <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類(lèi)的映射方法,不過(guò)當(dāng)我寫(xiě):
       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);
         ...............................


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

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

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

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

    主站蜘蛛池模板: 久久久久免费精品国产| 五月亭亭免费高清在线| 久久久久亚洲精品无码系列| 亚洲黄色免费电影| 爱情岛亚洲论坛在线观看| 亚洲人成人伊人成综合网无码| 久久九九兔免费精品6| 激情小说亚洲图片| 精品亚洲aⅴ在线观看| 成人永久免费福利视频网站| 久久精品国产亚洲av麻豆图片| 免费国产真实迷j在线观看| 久久免费高清视频| 豆国产96在线|亚洲| 91亚洲精品视频| 亚洲成片观看四虎永久| 黄页视频在线观看免费| 老司机亚洲精品影院| 国产在线a不卡免费视频| 99久久国产免费-99久久国产免费 99久久国产免费中文无字幕 | 亚洲精品成人a在线观看| 99精品视频在线观看免费播放| 亚洲成AV人影片在线观看| 久久久亚洲欧洲日产国码农村| 波多野结衣视频在线免费观看| 人妻无码久久一区二区三区免费| 日韩色日韩视频亚洲网站 | 中国videos性高清免费| 亚洲精品无码永久在线观看男男| 亚洲av不卡一区二区三区| 免费观看四虎精品国产永久| 波多野结衣免费在线| 亚洲国产成人AV在线播放| 色婷婷六月亚洲婷婷丁香| 亚洲免费观看视频| 日韩不卡免费视频| 老司机亚洲精品影院在线观看| 亚洲一区二区三区免费在线观看| 亚洲VA中文字幕无码毛片| 精品国产亚洲一区二区在线观看 | 亚洲а∨精品天堂在线|