導航:首頁 > 凈水問答 > struts過濾掉登陸頁面

struts過濾掉登陸頁面

發布時間:2023-06-28 03:07:50

⑴ Struts2 配置了登錄過濾器後,登錄界面不能載入css和js

判斷一下過濾的url

Stringurl=((HttpServletRequest)request).getRequestURL().toString();

不要攔截js和css文件

⑵ java開發中struts2或者filter對所有請求和所有頁面進行攔截,如何做,高分求助!

既然用了struts2,對於這樣的需求你應該用interceptor攔截器呀,攔截用戶所有的 請求,路徑配置為/*,就是攔截所有請求,在攔截器中寫對應代碼判斷用戶是否登錄。具體的代碼還是比較多的,就不在這里列出來了。在struts.xml中配置一個攔截器棧,然後在其中配置攔截器,使用/*攔截所有請求。。就和配置action差不多。

⑶ struts2怎麼在web.xml配置過濾器過濾掉指定的url或者指定的url不過濾

<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern> //這個抄 地方指定要過濾的url

</filter-mapping>

⑷ ssh使用tiles框架,怎麼使用struts2自定義的過濾器,例如過濾未登陸的用戶希望有個具體的例子!!

struts2可以通過配置interceptor來實現過濾未登錄用戶,在struts.xml文件中進行配置即可。
<package name="efe-default" extends="struts-default">
<interceptors>
<!-- 校驗用戶是否登錄用攔截器 -->
<interceptor name="checkLoginInterceptort" class="com.cn.inteceptor.CheckLoginInterceptor"/>
<!-- 定義攔截器棧 -->
<interceptor-stack name="MyDefaultStack">
<interceptor-ref name="checkLoginInterceptort">
<param name="actionNames">testLogin</param>
<param name="loginPath">outSys</param>
</interceptor-ref>
<interceptor-ref name="defaultStack"></interceptor-ref>
</interceptor-stack>
</interceptors>
<default-interceptor-ref name="MyDefaultStack"></default-interceptor-ref>
</package>

public class CheckLoginInterceptor extends AbstractInterceptor {
private static final long serialVersionUID = 1652269041938963442L;
@SuppressWarnings("unchecked")
public String intercept(ActionInvocation ai) throws Exception {
Object action = ai.getAction();
//獲取當前操作系統文件路徑分隔符
String separator = System.getProperty("file.separator");

HttpServletRequest request = ServletActionContext.getRequest();
String requestUrl = request.getRequestURI();
int tempInt = CommonTools.getSitesInString(requestUrl, "/").get(1);
requestUrl = requestUrl.substring(tempInt);

Map session = ai.getInvocationContext().getSession();
String login = (String) session.get("USERID");

if(!CommonTools.isNullString(login) || !CommonTools.isNullString(examLogin) || singup != null
|| student != null || agency != null){

return ai.invoke();
}else{
//獲得伺服器絕對路徑
String rootUrl = ServletActionContext.getServletContext().getRealPath("/");
//讀取src\myXML文件夾下的Permissions.xml文件
DataDictionaryXmlParseUtil myPermissions = DataDictionaryXmlParseUtil.getInstance(rootUrl+"WEB-INF"+separator+"classes"+separator+"myXML"+separator+CommonConstants.PERMISSION_XML);
//得到允許不通過攔截器的url地址列表
List<String> permissionList = myPermissions.getDataMap().get(CommonConstants.REQUEST_RUL_KEY);

//比較是否有列表中的數據
for (String permissUrl:permissionList){
if (requestUrl!=null && requestUrl.equalsIgnoreCase(permissUrl)){
return ai.invoke();
}
}
return "no.access";
}
}

⑸ 搭建struts2環境,在web.xml中加入過濾器的代碼後訪問任何頁面都是404錯誤。請大家幫幫忙。

WEB.xml中配置struts2的代碼片段
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.FilterDispatcher
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
'/*'是攔截所有的url,你這里可以配置你的過濾規則的啊(例如回/*.jsp、/*_aaa.jsp等),但是一般不需要答修改的,改了以後,擴展起來會給你帶來一些的不必要的麻煩的
望採納。

閱讀全文

與struts過濾掉登陸頁面相關的資料

熱點內容
20款藍鳥空調濾芯在什麼地方 瀏覽:435
環氧樹脂脆化怎麼回事 瀏覽:414
自製白酒蒸餾 瀏覽:479
豆漿機濾芯哪裡買 瀏覽:546
奇跡凈水器需要多少錢 瀏覽:416
空調濾芯汽修店多少錢 瀏覽:675
北京亂排放污水舉報電話 瀏覽:306
尼龍回料造粒有什麼用 瀏覽:806
江蘇樹脂砂設備生產廠家 瀏覽:572
污水中色度去除方法 瀏覽:675
撫州家用凈水器批發多少錢 瀏覽:750
列車定期檢修廢水 瀏覽:553
君越11年變速箱濾芯怎麼換 瀏覽:383
東麗反滲透膜性價比 瀏覽:327
家裡沒法安裝凈水器怎麼辦 瀏覽:271
污水微動力什麼意思 瀏覽:261
水處理廠的設備都有哪些 瀏覽:149
武鄉縣城哪裡有送純凈水 瀏覽:761
消防廢水排放標准 瀏覽:808
流坑龍湖生活污水 瀏覽:569