日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

JFinal使用筆記1-部署demo項目到本地tomcat

系統 2292 0

http://my.oschina.net/u/173975/blog/110261

?

嘗試用JFinal開發個開源的社團管理系統,把開發過程中遇到的問題和解決辦法記下來,以供參考。

部署jfinal_demo_for_jsp到tomcat上

問題1、css, js文件加載失敗。
原因:路徑問題
解決辦法:
1、將“/css/manage.css”等類似的路徑改為"css/manage.css",去掉最前面的“/”,不在根路徑下的要改成形如"../css/manage.css"等相對路徑。如果項目是部署在tomcat root目錄下就可以不用改。
2、發現使用相對路徑還是不方便,jfinal會在路徑中包含子文件夾,還是抽取個文件出來,寫絕對路徑吧,其他文件包含這個文件就可以了。?其中jquery換成了最新版的,比demo里的1.4.4版本大了13.6k

1
2
3
<%@ page language= "java" pageEncoding= "UTF-8" %>
<link href= "<%=request.getContextPath()%>/css/manage.css" media= "screen" rel= "stylesheet" type= "text/css" />
<script src= "<%=request.getContextPath()%>/js/jquery-1.9.1.min.js" type= "text/javascript" ></script>
1
<span></span><jsp:include page= "/inc/inc.jsp" ></jsp:include>
這里要寫絕對路徑 jsp標簽里的絕對路徑是帶項目名的,靜態文件中的絕對路徑指的是服務器的根路徑,不帶項目名?

3、前臺問題解決了,后臺又出問題。最終采用的解決辦法是:將tomcat的根路徑指定為項目文件夾
修改/conf/server.xml,在</host>標簽之前加入以下內容

?

1
<Context path= "" docBase= "/jfinal_demo" debug= "0" reloadable= "true" crossContext= "true" />

改完之后不管前臺還是后臺的路徑,直接以"/"開頭就可以了

問題2、系統異常
嚴重: Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application
原因:缺少JSTL相關jar包
解決辦法:加入jstl.jar和standard.jar加入構建路徑,同時刪除jetty-server-8.1.8.jar,使用tomcat的時候就不需要這個jar包了

4、通過<base>標簽解決路徑問題

1
2
3
4
5
6
7
8
9
10
11
<%
String basePath = request.getScheme()
???? + "://"
???? + request.getServerName()
???? + ":"
???? + request.getServerPort()
???? + path
???? + "/" ;
%>
<base href= "<%=basePath%>" >
<link rel= "stylesheet" type= "text/css" href= "css/common.css" >
在前臺直接跳轉的時候,也會出現路徑問題,解決辦法與base類似?
1
2
var fromPageName= "<%=basePath%>" + "voucherApprove.jsp" ;
window.location.href= fromPageName;

?

分享到: ? 3
聲明:OSCHINA 博客文章版權屬于作者,受法律保護。未經作者同意不得轉載。
?

評論 2

  • JFinal使用筆記1-部署demo項目到本地tomcat
    1樓: 絕望的八皮 ? 發表于? 2013-04-29 03:19? 回復此評論
    路徑問題應該用這個解決
    /**
    * Provide a context path to view if you need.
    * <br>
    * Example:<br>
    * In JFinalFilter: handlers.add(new ContextPathHandler("CONTEXT_PATH"));<br>
    * in freemarker: <img src="${BASE_PATH}/images/logo.png" />
    */
    public class ContextPathHandler extends Handler {
    ?
  • JFinal使用筆記1-部署demo項目到本地tomcat
    2樓: 土龍 ? 發表于? 2013-04-30 15:00? 回復此評論

    引用來自“絕望的八皮”的評論

    路徑問題應該用這個解決
    /**
    * Provide a context path to view if you need.
    * <br>
    * Example:<br>
    * In JFinalFilter: handlers.add(new ContextPathHandler("CONTEXT_PATH"));<br>
    * in freemarker: <img src="${BASE_PATH}/images/logo.png" />
    */
    public class ContextPathHandler extends Handler {

    非常感謝

JFinal使用筆記1-部署demo項目到本地tomcat


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 高淳县| 龙游县| 五河县| 敦煌市| 宜良县| 荆门市| 策勒县| 西充县| 大兴区| 达拉特旗| 鹤壁市| 海盐县| 化德县| 南汇区| 正定县| 黔南| 炉霍县| 桂平市| 绍兴县| 云南省| 连南| 巴塘县| 舟山市| 渑池县| 曲沃县| 天柱县| 高阳县| 宁南县| 新乐市| 珲春市| 皮山县| 山阴县| 合川市| 永靖县| 临沂市| 鄂州市| 文昌市| 嘉黎县| 襄樊市| 克什克腾旗| 甘德县|