锘??xml version="1.0" encoding="utf-8" standalone="yes"?>久久精品国产亚洲AV大全,亚洲国产综合专区在线电影 ,亚洲日本成本人观看http://m.tkk7.com/SE7EN/zh-cnMon, 12 May 2025 18:27:14 GMTMon, 12 May 2025 18:27:14 GMT60閫氳繃xml閰嶇疆鎼炲畾Struts閲嶅鎻愪氦闂(杞?http://m.tkk7.com/SE7EN/archive/2008/08/14/222083.htmlSE7ENSE7ENThu, 14 Aug 2008 10:35:00 GMThttp://m.tkk7.com/SE7EN/archive/2008/08/14/222083.htmlhttp://m.tkk7.com/SE7EN/comments/222083.htmlhttp://m.tkk7.com/SE7EN/archive/2008/08/14/222083.html#Feedback0http://m.tkk7.com/SE7EN/comments/commentRss/222083.htmlhttp://m.tkk7.com/SE7EN/services/trackbacks/222083.html 鏍稿績浠g爜濡備笅錛?/strong>
package com.yapulan.util.filter;

import java.io.IOException;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;

import javax.servlet.Filter;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.FilterConfig;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.FilterChain;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;

import org.apache.log4j.Logger;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;

/**
* 閲嶅鎻愪氦浠ょ墝鑷姩鍔犺澆鍣?鍔熻兘錛氳鍙栬繃婊ゅ櫒涓緗殑淇℃伅錛岃鍏ヤ護鐗岃緗粍
*/

public class TokenFilter implements Filter {

private String TokenConfig = "TokenConfig.xml";
private HashMap TokenMap = null;
private HashMap ErrorMap = null;
protected FilterConfig filterConfig;
static Logger logger = Logger.getLogger(TokenFilter.class.getName());

public void init(FilterConfig config) throws ServletException {
this.filterConfig = config;
this.TokenConfig = config.getInitParameter("tokenfile");
logger.debug("Tokenlist init OK!");
}

/**
* 鍒濆鍖栫郴緇熺殑xml鏂囦歡,璇誨叆浠ょ墝鍒楄〃
*/
@SuppressWarnings({ "unchecked", "deprecation" })
public void initConfig(ServletRequest srequest) {

HttpServletRequest httpRequest = (HttpServletRequest) srequest;
try {

TokenMap = new HashMap();
ErrorMap = new HashMap();

SAXReader reader = new SAXReader();
Document document = reader.read(httpRequest.getRealPath(this.TokenConfig));
List list1 = document.getRootElement().selectNodes("/TokenList/Token/TokenForm");
List list2 = document.getRootElement().selectNodes("/TokenList/Token/TokenAction");
List list3 = document.getRootElement().selectNodes("/TokenList/Token/ErrorPage");

Iterator iter1 = list1.iterator();
Iterator iter2 = list2.iterator();
Iterator iter3 = list3.iterator();
while (iter1.hasNext()&&iter2.hasNext()&&iter3.hasNext()) {
Element element1 = (Element) iter1.next();
Element element2 = (Element) iter2.next();
Element element3 = (Element) iter3.next();
TokenMap.put(element1.getStringValue(), element2.getStringValue());
ErrorMap.put(element1.getStringValue(), element3.getStringValue());
}
logger.debug("TokenFilter Read "
+ httpRequest.getRealPath(this.TokenConfig)
+ " is OK!");
} catch (Exception e) {
logger.error("TokenFilter Read "
+ httpRequest.getRealPath(this.TokenConfig)
+ " is Error!");
}

}

public void doFilter(ServletRequest srequest, ServletResponse sresponse,
FilterChain chain) throws IOException, ServletException {

HttpServletRequest httpRequest = (HttpServletRequest) srequest;

try {
//鍙栧嚭瀹為檯鐨勬枃浠惰礬寰勭洿鎺ヨ皟鐢ㄦ枃浠?濡俰ndex.html,login.jsp絳?
String toURI = httpRequest.getRequestURI().replaceFirst(httpRequest.getContextPath(), "");
if (TokenMap==null)
{
initConfig(httpRequest);
}
//媯嫻嬩負鎻愪氦jsp欏?
if (TokenMap.get(toURI) != null)
{
FromTokenAction token = new FromTokenAction();
token.execute(null, null, srequest, sresponse);
httpRequest.getSession().setAttribute("PRE_TOKEN_FORM", toURI);
logger.debug("TokenFilter save '"+toURI +"' at 'PRE_TOKEN_FORM' of Session!");
logger.debug("TokenFilter saveToken to '"+toURI +"' is OK!");
chain.doFilter(srequest, sresponse);
return;
}

@SuppressWarnings("unused")
String preURI =(String)httpRequest.getSession().getAttribute("PRE_TOKEN_FORM");
//媯嫻嬪埌涓篈ction鎺ユ敹鎻愪氦欏甸潰
if (TokenMap.get(preURI).equals(toURI))
{
TOTokenAction token = new TOTokenAction();
token.execute(null, null, srequest, sresponse);
chain.doFilter(srequest, sresponse);
return;
}


} catch (Exception e)
{
logger.error(e);
}

chain.doFilter(srequest, sresponse);
}

public void setFilterConfig(final FilterConfig filterConfig) {
this.filterConfig = filterConfig;
}

public void destroy() {
TokenMap.clear();
ErrorMap.clear();
this.filterConfig = null;
}

//媯嫻嬪埌闇瑕佷護鐗屽鍔犱竴涓護鐗?
public class FromTokenAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
this.saveToken(request);
return null;
}
}

//鍒拌揪Action鍓嶆嫻嬩護鐗?
public class TOTokenAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
@SuppressWarnings("unused")
String preURI =(String)request.getSession().getAttribute("PRE_TOKEN_FORM");
//濡傛灉媯嫻嬩護鐗岄敊璇墽琛岄敊璇〉,姝g‘灝嗙戶緇墽琛?
if (!isTokenValid(request, true))
{
@SuppressWarnings("unused")
String toURI = (String)ErrorMap.get(preURI);
if (toURI!=null)
{
RequestDispatcher disp = request.getRequestDispatcher(toURI);
try {
disp.forward(request, response);

}catch(Exception e)
{
logger.error(e);
}
}
}
return null;
}
}

}

Web.xml鐨勯厤鍒?/strong>

<!-- 浠ょ墝鑷姩鍔犺澆閰嶅埗 -->
<filter>
<filter-name>tokenFilter</filter-name>
<filter-class>com.yapulan.util.filter.TokenFilter</filter-class>
<init-param>
<param-name>tokenfile</param-name>
<param-value>/WEB-INF/TokenConfig.xml</param-value>
</init-param>
</filter>

娉ㄦ剰:灝嗕唬鐮佸寘涓瓀eb.xml鍋氫互涓嬩慨鏀?
<filter-mapping>
<filter-name>tokenFilter</filter-name>
<url-pattern/*</url-pattern>
</filter-mapping>




璁劇疆濂借繃婊ゅ櫒錛屽彧瑕侀厤緗垪琛ㄥ嵆鍙伩鍏嶆墍鏈夌殑閲嶅鎻愪氦闂錛屼笉蹇呭湪緙栫▼鏃跺啀嬈¤冭檻浜?/strong>
<?xml version="1.0" encoding="UTF-8"?>
<TokenList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="TokenConfig.xsd">
<Token>
<TokenForm>/index.jsp</TokenForm>
<TokenAction>/TokenAction.do</TokenAction>
<ErrorPage>/error.html</ErrorPage>
</Token>
<Token>
<TokenForm>/index1.jsp</TokenForm>
<TokenAction>/TokenAction1.do</TokenAction>
<ErrorPage>/error1.jsp</ErrorPage>
</Token>
<Token>
<TokenForm>/index2.jsp</TokenForm>
<TokenAction>/TokenAction2.do</TokenAction>
<ErrorPage>/error2.jsp</ErrorPage>
</Token>
<Token>
<TokenForm>/index3.jsp</TokenForm>
<TokenAction>/TokenAction3.do</TokenAction>
<ErrorPage>/error3.jsp</ErrorPage>
</Token>
</TokenList>

娉ㄦ剰錛氭湰浠g爜鍙互寰堝ソ鐨勯獙璇侀潪娉曠殑鎻愪氦錛屽浜庣鐞嗛潪娉曠殑鎻愪氦鏄竴涓笉鍙寰楃殑鍏鋒湁涓瀹氬畨鍏ㄦ剰涔夊皝瑁呫?
璇風儹蹇冪殑鏈嬪弸鍒嗘瀽鏈夋棤鍏跺畠娌℃湁鑰冭檻鐨勭粏鑺傞棶棰橈紝騫朵笖鏄惁鏈夊彲浠ヨ繘涓閮ㄥ畬鍠勭殑鍦版柟錛岃阿璋紒

SE7EN 2008-08-14 18:35 鍙戣〃璇勮
]]>
Tomcat鏁版嵁榪炴帴姹?/title><link>http://m.tkk7.com/SE7EN/archive/2008/08/14/222082.html</link><dc:creator>SE7EN</dc:creator><author>SE7EN</author><pubDate>Thu, 14 Aug 2008 10:27:00 GMT</pubDate><guid>http://m.tkk7.com/SE7EN/archive/2008/08/14/222082.html</guid><wfw:comment>http://m.tkk7.com/SE7EN/comments/222082.html</wfw:comment><comments>http://m.tkk7.com/SE7EN/archive/2008/08/14/222082.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/SE7EN/comments/commentRss/222082.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/SE7EN/services/trackbacks/222082.html</trackback:ping><description><![CDATA[鍦↗ava Web寮鍙戜腑閮借涓庢暟鎹簱鎵撲氦閬擄紝涓轟簡涓嶉綣佸湴鎵撳紑鍜屽叧闂暟鎹簱錛屼互鍑忓皯鏁版嵁搴撴搷浣滆礋鑽?鍙嬌鏁版嵁搴撳湪寮鍙戣繃紼嬩腑淇濇寔鎵撳紑鐘舵侊紝鍦ㄨ繖閲屾垜浠噰鐢ㄩ厤緗暟鎹簮鐨勬柟寮?JNDI)錛岃屼笉鏄紶緇熷湴JDBC鏂瑰紡銆備笅闈㈠氨閽堝甯歌鍨嬬殑MySQL5.0.15鍜?span class="hilite3">Tomcat</span>6.0鐨勬暟鎹簮鐨勫熀鏈厤緗繘琛岀畝鍗曠殑浠嬬粛錛?<br /> 棣栧厛澹版槑,濡傛灉鏁版嵁婧愭病鏈夐厤緗ソ鐨勮瘽錛屽湪寮鍙戣繃紼嬩腑浼氭姏鍑鴻濡備笅鍒楀紓甯哥瓑錛?<br /> 1銆?span class="hilite1">org</span>.<span id="j3rz335" class="hilite2">apache</span>.<span id="xdvpttl" class="hilite3">tomcat</span>.<span id="55zzvxx" class="hilite5">dbcp</span>.<span id="rjrbr55" class="hilite5">dbcp</span>.<span id="3vfpzz3" class="hilite6">SQLNestedException</span>: Cannot create JDBC driver of class '' for connect URL 'null' <br /> 2銆丆aused by: java.sql.SQLException: No suitable driver <br /> 3銆丯ame jdbc is not bound in this context <br /> 鐜板湪寮濮嬭涓嬪浣曢厤緗ソ鏁版嵁婧愬悓鏃朵篃鏄В鍐充笂榪板紓甯哥殑鍔炴硶錛?<br /> 鏂規涓錛?<br /> 姝ラ涓銆佸湪<span id="1r5zdt5" class="hilite3">Tomcat</span>6.0瑙e帇鐩綍conf涓嬫壘鍒癱ontext.xml,鍦ㄥ叾涓殑<Context></Context> 涓姞鍏ュ涓嬩唬鐮?瑕佹牴鎹嚜宸辯殑鎯呭喌紼嶅姞淇敼)錛?<Resource name="jdbc/myznt" auth="Container" type="javax.sql.DataSource" password="localhost" username="root" driverClassName="<span id="z5nhl5x" class="hilite1">org</span>.gjt.mm.mysql.Driver" url="jdbc:mysql://localhost/myznt" maxActive="100" maxIdle="30" maxWait="5000"/> <br /> 姝ラ浜屻佸湪宸ョ▼搴旂敤涓?WEB-INF/涓嬬殑web.xml涓姞鍏ュ涓嬩唬鐮?瑕佹牴鎹嚜宸辯殑鎯呭喌紼嶅姞淇敼): <br /> <resource-ref> <br /> <description>MySQL DataSource</description> <br /> <res-ref-name>jdbc/myznt</res-ref-name> <br /> <res-type>javax.sql.DataSource</res-type> <br /> <res-auth>Container</res-auth> <br /> </resource-ref> <br /> 姝ラ涓夈佹妸MySQL-Connector-java-3.0.12-bin.jar(鍙崲鏇撮珮鐗堟湰)鍔犲埌<span id="5vl55rt" class="hilite3">Tomcat</span>瀹夎鐩綍涓殑lib鐩綍涓嬪拰宸ョ▼涓殑lib鐩綍涓嬨?<br /> 閫氳繃榪欎笁姝ワ紝涓涓熀鏈殑鏁版嵁婧愬氨閰嶇疆鎴愬姛浜? <br /> 鏂規浜?<br /> 姝ラ涓銆佸湪<span id="5d5n5dn" class="hilite3">Tomcat</span>6.0瑙e帇鐩綍conf涓嬫壘鍒皊erver.xml,鍦ㄥ叾涓殑<GlobalNamingResources></GlobalNamingResources>涓姞鍏ュ涓嬩唬鐮?瑕佹牴鎹嚜宸辯殑鎯呭喌紼嶅姞淇敼)錛?<br /> <Resource name="jdbc/myznt" auth="Container" type="javax.sql.DataSource" password="localhost" username="root" driverClassName="<span id="f13tp5h" class="hilite1">org</span>.gjt.mm.mysql.Driver" url="jdbc:mysql://localhost/myznt" maxActive="100" maxIdle="30" maxWait="5000"/> <br /> 姝ラ浜屻佸湪<span id="tth5nxv" class="hilite3">Tomcat</span>6.0瑙e帇鐩綍conf涓嬫壘鍒癱ontext.xml,鍦ㄥ叾涓殑<Context></Context>涓姞鍏ュ茍淇敼鎴愬涓嬩唬鐮?瑕佹牴鎹嚜宸辯殑鎯呭喌紼嶅姞淇敼): <br /> <Context path="/znt" debug="1" reloadable="true" docBase="E:\EclipseWorkPlace\MyZNT\WebRoot"> <br /> <ResourceLink global="jdbc/myznt" name="jdbc/myznt" type="javax.sql.Datasource"/> <br /> ................<!--姝ら棿鍙兘鏈夌郴緇熷叾瀹冭嚜閰嶇殑鍐呭錛屽彲涓嶇--> <br /> </Context> <br /> 姝ラ涓夈佸湪宸ョ▼涓?WEB-INF/涓嬬殑web.xml涓姞鍏ュ涓嬩唬鐮?瑕佹牴鎹嚜宸辯殑鎯呭喌紼嶅姞淇敼): <br /> <resource-ref> <br /> <description>MySQL DataSource</description> <br /> <res-ref-name>jdbc/myznt</res-ref-name> <br /> <res-type>javax.sql.DataSource</res-type> <br /> <res-auth>Container</res-auth> <br /> </resource-ref> <br /> 姝ラ鍥涖佹妸MySQL-Connector-java-3.0.12-bin.jar(鍙崲鏇撮珮鐗堟湰)鍔犲埌<span id="rfj3b53" class="hilite3">Tomcat</span>瀹夎鐩綍涓殑lib鐩綍涓嬪拰宸ョ▼涓殑lib鐩綍涓嬨?<br /> 閫氳繃浠ヤ笂鍥涙灝卞ソ浜? <br /> 鏂規涓?鍏鋒湁涓嶇ǔ瀹氭?鎱庣敤) <br /> 姝ラ涓銆佸湪<span id="tvn5555" class="hilite3">Tomcat</span>6.0瑙e帇鐩綍conf涓嬫壘鍒皊erver.xml,鍦ㄥ叾涓殑<Host></Host>涓姞鍏ュ涓嬩唬鐮?瑕佹牴鎹嚜宸辯殑鎯呭喌紼嶅姞淇敼)錛?<br /> <Context path="/znt" docBase="E:\EclipseWorkPlace\MyZNT\WebRoot" <br /> debug="5" reloadable="true" crossContext="true"> <br /> <br /> <Logger className="<span id="1hd133p" class="hilite1">org</span>.<span id="v5zzjln" class="hilite2">apache</span>.catalina.logger.FileLogger" <br /> prefix="localhost_MysqlTest_log." suffix=".txt" <br /> timestamp="true"/> <br /> <Resource name="jdbc/myznt" auth="Container" type="javax.sql.DataSource" password="localhost" username="root" driverClassName="<span id="35dh5jh" class="hilite1">org</span>.gjt.mm.mysql.Driver" url="jdbc:mysql://localhost/myznt" maxActive="100" maxIdle="30" maxWait="5000"/> <br /> </Context> <br /> 姝ラ浜屻佸湪宸ョ▼涓?WEB-INF/涓嬬殑web.xml涓姞鍏ュ涓嬩唬鐮?瑕佹牴鎹嚜宸辯殑鎯呭喌紼嶅姞淇敼): <br /> <resource-ref> <br /> <description>MySQL DataSource</description> <br /> <res-ref-name>jdbc/myznt</res-ref-name> <br /> <res-type>javax.sql.DataSource</res-type> <br /> <res-auth>Container</res-auth> <br /> </resource-ref> <br /> 姝ラ涓夈佹妸MySQL-Connector-java-3.0.12-bin.jar(鍙崲鏇撮珮鐗堟湰)鍔犲埌<span id="lpj5pp5" class="hilite3">Tomcat</span>瀹夎鐩綍涓殑lib鐩綍涓嬪拰宸ョ▼涓殑lib鐩綍涓嬨?<br /> 閫氳繃浠ヤ笂涓夋錛屽ぇ閮ㄥ垎鏃跺欒繕鏄搗浣滅敤鐨勶紝浣嗘湁鏃朵細鍑虹幇寮傚父錛屽洜姝や笉寤鴻浣跨敤銆?<br /> 浠ヤ笂鍑犵鏂規鍦ㄥ疄璺典腑緇忓彈浜嗘祴璇曪紝鏂規涓鍜屼簩姣旇緝紼沖畾錛屾柟妗堜笁鏈濂藉埆鐢紝鍚屾椂鍙槸榪涜浜嗗ぇ鑷村湴褰掔撼錛屽叾涓殑鍝簺鍦版柟娌℃湁蹇呰鎴栧摢閲屾瑺濡ヨ繕娌℃湁鍘繪祴璇曪紝鏈涜鑰呰繘琛屾壒璇勬寚姝c? <img src ="http://m.tkk7.com/SE7EN/aggbug/222082.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/SE7EN/" target="_blank">SE7EN</a> 2008-08-14 18:27 <a href="http://m.tkk7.com/SE7EN/archive/2008/08/14/222082.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>感谢您访问我们的网站,您可能还对以下资源感兴趣:</p> <a href="http://m.tkk7.com/" title="亚洲av成人片在线观看">亚洲av成人片在线观看</a> <div class="friend-links"> </div> </div> </footer> 主站蜘蛛池模板: <a href="http://eeussdd.com" target="_blank">亚洲国产一成久久精品国产成人综合 </a>| <a href="http://wangdei.com" target="_blank">亚洲成AV人在线观看网址</a>| <a href="http://rushiruhua.com" target="_blank">日韩人妻一区二区三区免费</a>| <a href="http://xxxxxxxxcccc.com" target="_blank">国产2021精品视频免费播放</a>| <a href="http://sdnuoyuan.com" target="_blank">亚洲视频免费在线观看</a>| <a href="http://bjjs365.com" target="_blank">亚洲免费视频网站</a>| <a href="http://fns92.com" target="_blank">亚洲?V无码乱码国产精品</a>| <a href="http://www-44455588.com" target="_blank">国产成人久久精品亚洲小说</a>| <a href="http://szyujiaxing.com" target="_blank">国产成人精品男人免费</a>| <a href="http://szjmlr.com" target="_blank">亚洲黄色网址在线观看</a>| <a href="http://www-7479.com" target="_blank">精品无码国产污污污免费网站</a>| <a href="http://ww99w.com" target="_blank">亚洲精品在线电影</a>| <a href="http://aicbbs.com" target="_blank">中文精品人人永久免费</a>| <a href="http://mtspvip.com" target="_blank">亚洲爆乳精品无码一区二区三区</a>| <a href="http://69ct.com" target="_blank">亚洲人成网站免费播放</a>| <a href="http://51xinshiji.com" target="_blank">日本免费高清一本视频</a>| <a href="http://www664660a.com" target="_blank">免费看又黄又爽又猛的视频软件</a>| <a href="http://szqsnt.com" target="_blank">中文亚洲成a人片在线观看</a>| <a href="http://22222xxx.com" target="_blank">国产性生大片免费观看性</a>| <a href="http://b2bautoparts.com" target="_blank">久久亚洲精品无码</a>| <a href="http://6777s.com" target="_blank">久久精品网站免费观看</a>| <a href="http://junyehome.com" target="_blank">青娱乐在线免费观看视频</a>| <a href="http://carsmp.com" target="_blank">亚洲一区二区三区香蕉</a>| <a href="http://yeshenghuowang.com" target="_blank">国内精品久久久久影院免费</a>| <a href="http://pjszlw.com" target="_blank">亚洲欧洲国产综合</a>| <a href="http://89895cc.com" target="_blank">国产一区二区免费在线</a>| <a href="http://s4lm0x.com" target="_blank">东北美女野外bbwbbw免费</a>| <a href="http://www66susu.com" target="_blank">在线观看亚洲一区二区</a>| <a href="http://sitefmns.com" target="_blank">黄网址在线永久免费观看 </a>| <a href="http://zzxngk.com" target="_blank">亚洲精品中文字幕无乱码麻豆</a>| <a href="http://jdwx58.com" target="_blank">国产精品无码免费视频二三区</a>| <a href="http://ittenyear.com" target="_blank">www.xxxx.com日本免费</a>| <a href="http://99999pp.com" target="_blank">亚洲婷婷天堂在线综合</a>| <a href="http://w6446.com" target="_blank">亚洲av中文无码</a>| <a href="http://zzz477.com" target="_blank">99久久久国产精品免费蜜臀</a>| <a href="http://s88s88.com" target="_blank">亚洲国产AV无码一区二区三区</a>| <a href="http://yuntuzy.com" target="_blank">亚洲精品无码mv在线观看网站</a>| <a href="http://ksp33.com" target="_blank">一二三四影视在线看片免费</a>| <a href="http://pohezi.com" target="_blank">一个人免费观看www视频 </a>| <a href="http://kk600700.com" target="_blank">老牛精品亚洲成av人片</a>| <a href="http://mp4888.com" target="_blank">亚洲精品高清无码视频</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>