解決struts2和dwr請求url衝突問題

2021-06-05 05:02:18 字數 592 閱讀 9132

在struts2的配置檔案中,有如下配置內容:

struts2

org.apache.struts2.dispatcher.ng.filter.strutsprepareandexecutefilter/*

注意到黃色背景那一行,說明servlet容器把所有客戶端請求交給struts2的filter處理。

再說dwr,一般我們配置dwr的時候,也需要在web.xml中新增一段servlet的配置資訊:

dwr servlet

dwr-invoker

org.directwebremoting.servlet.dwrservlet

debug

true

/dwr/*

如此一來,客戶端請求dwr的相關url就無法提交到dwr框架對應的servlet中進行處理。

為了解決這個問題,有個簡便的方法:

在struts2的配置檔案struts.xml中,新增常量修改資訊

這行**的意思是說:value對應的這些路徑模式,struts2自身的filter不進行攔截,交給servlet容器中的其他配置元件進行處理,例如dwr。

如此一來,問題就解決了。

struts2與dwr整合(初級)

專案需要用到ajax,最開始本想用jquery,最後權衡下選擇了dwr。這裡說的是dwr整合ssh,其實dwr完全沒有必要和struts2結合,畢竟dwr需要返回的是object,而struts2直接轉向了頁面。非要強制將二者整合,只能做乙個偽action,這個偽action返回的還是object。...

Struts2請求流程

1 客戶端傳送請求 2 請求先通過actioncontextcleanup filterdispatcher 6 actionproxy建立乙個actioninvocation的例項 7 actioninvocation呼叫真正的action,當然這涉及到相關 的呼叫 8 action執行完畢,ac...

Struts2與DWR在專案中的共存解決方案

1.struts2和dwr為什麼會衝突?最近很多同學都在問同樣乙個問題,struts2和dwr該如何共存?我們先分析一下為什麼會出現衝突.struts2通過strutsprepareandexecutefilter過濾器來處理請求,常見的配置如下 struts2 org.apache.struts2...