<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.第一次訪(fǎng)問(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.第二次及其以后訪(fǎng)問(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)見(jiàn)前一篇文章
    ??2.在opencms控制臺(tái),新增該類(lè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>
    <%
    ????}?
    %>??

    ?

    歡迎提出新的意見(jiàn)!
    posted on 2006-08-11 12:59 魚(yú)上游 閱讀(3861) 評(píng)論(1)  編輯  收藏 所屬分類(lèi): 爪哇世界探險(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)

    隨筆分類(lèi)(59)

    文章分類(lèi)(21)

    相冊(cè)

    收藏夾(40)

    GoodSites

    搜索

    •  

    積分與排名

    • 積分 - 1267248
    • 排名 - 22

    最新評(píng)論

    閱讀排行榜

    主站蜘蛛池模板: 日韩午夜免费视频| 亚洲av综合avav中文| 男女一边摸一边做爽的免费视频| 国产成人A人亚洲精品无码| 手机看黄av免费网址| 一级白嫩美女毛片免费| 亚洲bt加勒比一区二区| 亚洲综合激情视频| 天天天欲色欲色WWW免费| 香蕉免费一级视频在线观看| 亚洲黄色在线观看网站| 免费人成在线观看网站视频| 91免费福利精品国产| 国产亚洲综合一区二区三区| 国产a不卡片精品免费观看| 亚洲国产欧美日韩精品一区二区三区| 亚洲片国产一区一级在线观看 | 最近免费中文字幕大全免费| 亚洲AV综合永久无码精品天堂 | 亚洲AV成人噜噜无码网站| 亚洲国产香蕉人人爽成AV片久久 | 国产成人高清亚洲| 无码精品A∨在线观看免费| 最新亚洲成av人免费看| 亚洲1区2区3区精华液| 亚洲欧洲国产综合| 国产亚洲精品自在久久| 亚洲av片一区二区三区| 在线观看免费人成视频| 国产免费一区二区三区不卡| 国产99久久亚洲综合精品| 亚洲xxxxxx| 亚洲精品视频在线观看视频| 亚洲伊人久久综合中文成人网| 四色在线精品免费观看| 57PAO成人国产永久免费视频| 亚洲中文字幕AV在天堂| 久久久久亚洲AV片无码| 国产综合亚洲专区在线| www.亚洲精品| 国产乱子伦精品免费无码专区|