Tomcat
jfinal 乱码 解决方法:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"/>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
下面是新添加的 需要运行两便~~~
<Context path="" docBase="D:\Develop_tools\Tomcat\tomcat-7.0.63\webapps\navigation" debug="0" reload="ture"></Context>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
今天刚好有朋友问起这个问题。
通过tomcat中conf-server.xml--配置<Context path="/jfinalDemo" docBase="xx.xx">方式部署。
解决思路如下:
1.每个页面获得获得当前项目相对路径,太麻烦。
2.通过@JFinal 本身API设置
第一步:
Config中重写configHandler方法
1
2
3
4
|
@Override
publicvoidconfigHandler(Handlers me) {
me.add(newContextPathHandler("ctx_path"));
}
|
第二步,页面配置base
1
|
<basehref="${ctx_path}/"/>
|
当然,可以直接绕过这种配置方式,配置多域名。
让我们一起让@JFinal 更好!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
看一下 jfinal_demo_for_jsp 项目,让 context path 为 "/" 最省事,记得 tomcat 下配置 context path 得配置为 "", jetty 下配置为 "/"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
需求,因为服务器上就一个web工程,需要是访问域名就直接访问到该项目,如Sample.war,一般情况下是访问上下文/Sample才能访问到该工程。 现在我需要访问根路径就能访问到该工程。
修改了tomcat conf目录下的server.xml增加了context。
<Context path="/" docBase="D:/Program Files/Apache Software Foundation/Tomcat
7.0/webapps/SheJiJun" debug="0" reloadable="true"/>
现在访问根路径/可以访问到该项目了。
但是项目中的
<c:url value="/login.do" var="login"/>
<a href="${login }">登陆</a>
全乱了。
因为在本地环境登录会成为 /Sample/login.do 即增加了上下文
在正式环境成了//login.do 因为正式环境中该项目的上下文为根路径/ ,所以成了这样。
求解? 使用c:url的时候如何统一起来??
<Context path="" docBase="D:/Program Files/Apache Software Foundation/Tomcat 7.0/webapps/SheJiJun" debug="0" reload="ture"></Context>
这样试试