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

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

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

    posts - 61,  comments - 2033,  trackbacks - 0
    ?? 由于web中的文件不能直接通過(guò)url方式讀取opencms的sites下的文件,所以必須繞個(gè)彎子解決。查閱了一下opencms的源代碼,我的解決思路如下:
    ?
    第一 拷貝方式:
    ?
    ?? 1.第一次訪問(wèn)時(shí),根據(jù)opencms提供的接口,把文件從數(shù)據(jù)庫(kù)讀到j(luò)ava對(duì)象obj
    ?? 2.將obj對(duì)象拷貝到web中的對(duì)應(yīng)目錄
    ?? 3.將web中的對(duì)應(yīng)目錄的URL確定,即可直接調(diào)用。
    ?? 4.第二次及其以后訪問(wèn)時(shí),根據(jù)對(duì)象obj的最后修改時(shí)間屬性,確定是否需要重復(fù)1-3步驟。

    參考源代碼:
    ?
    <!-- ?$Id:?test.jsp,v? 1.5 ? 2006 / 08 / 11 ? 04 : 59 : 31 ?davidye?Exp?$ -->
    ?
    <% @?page?pageEncoding = " UTF-8 " ? %>
    <% @?page?buffer = " none " ? import = " org.opencms.util.*,?org.teema.eeonline.exhibition.ExhibitionConstants,com.tblink.common.util.StringUtil,org.opencms.frontend.templateone.modules.*,javax.servlet.ServletOutputStream,?org.opencms.file.*,java.util.*,?java.io.*,?org.opencms.frontend.templateone.* " ? %>
    <% @?taglib?uri = " http://jakarta.apache.org/struts/tags-bean " ?prefix = " bean " %>
    <% @?taglib?prefix = " cms " ?uri = " http://www.opencms.org/taglib/cms " ? %>
    <% @?taglib?prefix = " fmt " ?uri = " http://java.sun.com/jstl/fmt " ? %>
    <% @?taglib?prefix = " c " ?uri = " http://java.sun.com/jstl/core " ? %>
    <% @?include?file = " ../elements/common/common.jsp " ? %>

    <%!
    private ?String?copyFile(CmsFile?cmsFile){
    ????
    try {
    ????????
    byte []?byteFile? = ?cmsFile.getContents();
    ????????String?path?
    = ?StringUtil.getRealPath(StringUtil. class , " WEB-INF " ,ExhibitionConstants.EXHIBITION_FLASH_DIRECTIONARY);
    ????????RandomAccessFile?rf
    = new ?RandomAccessFile(path? + ?ExhibitionConstants.EXHIBITION_FLASH_NAME, " rw " );?
    ????????rf.write(byteFile);?
    ????????rf.close();
    ????????
    return ?path.substring( 0 ,path.length() - 1 );
    ????}
    ????
    catch (Exception?e)
    ????{
    ????????
    return ? "" ;
    ????}
    }
    %>

    <%
    String?direct?
    = ?ExhibitionConstants.EXHIBITION_FLASH_DIRECTIONARY? + ?ExhibitionConstants.EXHIBITION_FLASH_NAME;
    String?flashUrl?
    = ? "" ;
    try {
    CmsFile?cmsFile?
    = ?__cmsJSP.getCmsObject().readFile(direct);
    long ?l? = ?cmsFile.getDateLastModified();
    String?lstr?
    = ?(String)application.getAttribute(ExhibitionConstants.APPLICATION_FLASH_DATE_INDEX);
    flashUrl?
    = ?(String)application.getAttribute(ExhibitionConstants.APPLICATION_FLASH_URL_INDEX);

    if (lstr == null ? || ? ! StringUtil.isNums(lstr)){
    ????direct?
    = ?copyFile(cmsFile);
    }
    else ? if (Long.parseLong(lstr) == l){
    ????
    if (flashUrl == null ){
    ????????direct?
    = ?copyFile(cmsFile);
    ????}
    }
    else {
    ??????direct?
    = ?copyFile(cmsFile);
    }
    flashUrl?
    = ??request.getContextPath()? + ?ExhibitionConstants.EXHIBITION_FLASH_DIRECTIONARY? + ?ExhibitionConstants.EXHIBITION_FLASH_NAME;
    application.setAttribute(ExhibitionConstants.APPLICATION_FLASH_DATE_INDEX,lstr);
    application.setAttribute(ExhibitionConstants.APPLICATION_FLASH_URL_INDEX,flashUrl);

    }
    catch (Exception?e)
    {
    ????out.println(e);?
    }
    %>

    < object?classid = " clsid:D27CDB6E-AE6D-11cf-96B8-444553540000 " ?codebase = " http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0 " ?width = " 760 " ?height = " 266 " >
    ???????
    < param?name = " movie " ?value = " <%=flashUrl%> " >
    ???????
    < param?name = " quality " ?value = " high " >
    ???????
    < embed?src = " <%=flashUrl%> " ?quality = " high " ?pluginspage = " http://www.macromedia.com/go/getflashplayer " ?type = " application/x-shockwave-flash " ?width = " 760 " ?height = " 266 " ></ embed >
    </ object >



    第二、新增Resource Type方式

    ? 1.新建Resource Type,詳細(xì)請(qǐng)見前一篇文章
    ??2.在opencms控制臺(tái),新增該類別的文件
    ? 3.調(diào)用相關(guān)API顯示出來(lái),代碼如下

    ?
    <%
    ????
    if?(getResourceCount(__cms,?"TEEMA_Ad/Home/Wide_Block_1/|teemaAd",?false)?>?0)?{?
    %>??

    ????????????
    <cms:contentload?collector="allInFolderDateReleasedDesc"?param="TEEMA_Ad/Home/Wide_Block_1/|teemaAd"?editable="true">
    ????????????????????
    <%?
    ?????????????????
    if(bannerTextCount<1)?{
    ????????????????bannerTextCount
    ++;
    ????????????
    %>

    ????????????????????????????
    <a?href='<cms:contentshow?element="URL"/>'?target="_blank">
    ??????????????????????????????
    <img?src="/eeonline/cms<cms:contentshow?element="Image/Image"/>"?width="440"?height="75">
    ????????????????????????????
    </a>

    ????????????
    <%???}?%>
    ??????????????????
    </cms:contentload>
    ????????
    </tr>
    <%
    ????}?
    %>??

    ?

    歡迎提出新的意見!
    posted on 2006-08-11 12:59 魚上游 閱讀(3870) 評(píng)論(1)  編輯  收藏 所屬分類: 爪哇世界探險(xiǎn)


    FeedBack:
    # re: 關(guān)于opencms把sites目錄中的文件根據(jù)URL顯示到網(wǎng)頁(yè)的解決方法
    2006-09-01 12:44 | 孟厚
    不錯(cuò),opencms文章太少,多一篇都是好的  回復(fù)  更多評(píng)論
      
    <2006年8月>
    303112345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    常用鏈接

    留言簿(82)

    隨筆分類(59)

    文章分類(21)

    相冊(cè)

    收藏夾(40)

    GoodSites

    搜索

    •  

    積分與排名

    • 積分 - 1267911
    • 排名 - 22

    最新評(píng)論

    閱讀排行榜

    主站蜘蛛池模板: 色se01短视频永久免费| 国产精品无码素人福利免费| 亚洲一区动漫卡通在线播放| 最近中文字幕免费mv视频7 | 精品一区二区三区无码免费直播| 久久亚洲中文字幕精品一区四 | 免费a级毛片无码a∨免费软件| 亚洲精品中文字幕无乱码| 女人18毛片a级毛片免费视频| 久久国产免费直播| 亚洲国产精品综合久久2007| 男人的天堂亚洲一区二区三区 | 国产成人精品男人免费| a级午夜毛片免费一区二区| 亚洲偷自精品三十六区| 91麻豆精品国产自产在线观看亚洲| 最近中文字幕高清免费中文字幕mv | 亚洲a视频在线观看| 国产亚洲精品a在线观看| 毛片高清视频在线看免费观看| 久久久精品视频免费观看| 亚洲乱码一区二区三区国产精品| 夜夜春亚洲嫩草影院| 日本免费v片一二三区| 久久综合给合久久国产免费| 日韩a毛片免费观看| 亚洲偷自精品三十六区| 久久亚洲一区二区| 亚洲精品久久久www| 免费电影在线观看网站| 无码中文字幕av免费放dvd| 香蕉97碰碰视频免费| 亚洲精品午夜国产va久久| 亚洲国产高清在线| 亚洲性日韩精品一区二区三区| 成年女人喷潮毛片免费播放| 免费成人福利视频| 免费观看91视频| 久久九九久精品国产免费直播| 国产成人亚洲精品无码AV大片| 亚洲日本乱码卡2卡3卡新区|