專利名稱:頁面導航方法和裝置及應用服務器的制作方法
技術領域:
本發(fā)明涉及動態(tài)頁面技術領域,具體涉及一種頁面導航方法和裝置及應用服務器。
背景技術:
隨著互聯(lián)網(wǎng)應用的日益深化和拓展,在很多應用場合,例如大規(guī)模企業(yè)級應用等情況,普遍從桌面應用轉(zhuǎn)變?yōu)榭蛻魴C/服務器(C/SClient/Service)應用,并已逐漸開始從C/S應用轉(zhuǎn)變?yōu)闉g覽器/服務器(B/SBrowser/Server)應用。在B/S應用中用戶通過超鏈接導航到不同的頁面,得到服務器提供的各種服務。
B/S應用中用戶從服務器得到的最小完整單位是頁面,用戶向服務器發(fā)送請求,并從服務器得到一個可供瀏覽器展示的響應頁面。隨著應用復雜性的日益增加,互聯(lián)網(wǎng)應用頁面逐漸由靜態(tài)的頁面展示發(fā)展出基于導航邏輯的動態(tài)頁面技術。目前業(yè)界主要有如下兩種實現(xiàn)導航邏輯的方式一、以頁面為中心的導航該方式以動態(tài)服務器頁面(ASPActive Server Pages)技術為代表。ASP的一種導航運行如圖1所示導航邏輯11被直接硬編碼在服務器頁面1中,用戶通過瀏覽器2向服務器頁面1請求導航,服務器頁面1中導航邏輯11的代碼接受請求并根據(jù)用戶的請求信息進行導航,展示邏輯12的代碼則提供內(nèi)容格式、編排等處理,將導航獲得的響應頁面內(nèi)容展示到用戶瀏覽器2;導航邏輯11也可根據(jù)對用戶請求的處理結(jié)果在彼此之間轉(zhuǎn)發(fā)請求。
此方案的缺陷在于雖然結(jié)構簡單,但是導航邏輯與頁面展示邏輯混淆在服務器頁面中,隨著項目復雜性的增加,展示邏輯代碼與導航邏輯代碼相互纏繞,導致服務器頁面代碼的可維護性下降;并且,由于導航邏輯以代碼的形式存在,存在比較高的定制門檻,使客戶難以使用。
二、使用前端控制器導航該方式以Java服務器頁面(JSPJava Server Pages)技術為代表。JSP的一種導航運行如圖2所示通過一個前端控制器3接受用戶瀏覽器4的請求,前端控制器3根據(jù)導航配置文件5中的導航邏輯配置51的定義以及請求信息進行匹配,查找到對應的導航邏輯,然后調(diào)用導航邏輯命令6中真正的導航邏輯進行運算,獲得導航結(jié)果,結(jié)果可能是相應的服務器頁面7,也可能是請求的轉(zhuǎn)發(fā)。
在這種方式下,導航過程被劃分在前端控制器3、導航邏輯命令6的命令對象、導航配置文件5中。其中真正的導航邏輯封裝于導航邏輯命令6的命令對象中,導航配置文件5為前端控制器3提供了導航邏輯命令對象的查找表;服務器頁面7中僅需要包含展示邏輯71。
此方案實現(xiàn)了導航邏輯與展示邏輯的分離,但缺陷在于導航配置文件實際上充當?shù)闹皇亲员砘虿檎冶淼淖饔?,真正的導航邏輯存在于導航邏輯命令對象中,導航邏輯命令對象的修改需要?jīng)過開發(fā)、編譯、打包、部署等過程,不能或者很難在運行期定制;并且由于導航邏輯配置文件中并沒有真正的導航邏輯,因此無法做到很好的導航邏輯配置。
發(fā)明內(nèi)容
有鑒于此,一方面,提供一種易于進行運行期導航邏輯定制的頁面導航方法,包括步驟接收頁面請求;根據(jù)所述頁面請求進行規(guī)則匹配;按照匹配到的規(guī)則執(zhí)行規(guī)則的結(jié)果,轉(zhuǎn)發(fā)頁面請求或?qū)Ш降较鄳姆掌黜撁妗?br>
同時,還提供相應的幾種頁面導航裝置其一包括前端控制器和規(guī)則引擎;所述前端控制器,用于接收頁面請求;解析所述頁面請求獲得請求信息;所述規(guī)則引擎,用于根據(jù)所述前端控制器解析獲得的請求信息進行規(guī)則匹配;按照匹配到的規(guī)則執(zhí)行規(guī)則的結(jié)果,轉(zhuǎn)發(fā)頁面請求或?qū)Ш降较鄳姆掌黜撁妗?br>
另一包括前端控制器和規(guī)則引擎;所述前端控制器,用于接收頁面請求;解析所述頁面請求獲得請求信息,所述請求信息中包括被請求頁面的統(tǒng)一資源地址;根據(jù)所述統(tǒng)一資源地址在地址規(guī)則包中進行匹配,選擇相應的導航邏輯規(guī)則包;所述規(guī)則引擎,用于在所述前端控制器選定的導航邏輯規(guī)則包中根據(jù)所述請求信息進行規(guī)則匹配;按照匹配到的規(guī)則執(zhí)行規(guī)則的結(jié)果,轉(zhuǎn)發(fā)頁面請求或?qū)Ш降较鄳姆掌黜撁妗?br>
再一包括前端控制器、導航配置模塊、通用命令模塊和規(guī)則引擎;所述前端控制器,用于接收頁面請求;解析所述頁面請求獲得請求信息;根據(jù)所述請求信息向所述導航配置模塊查找導航配置文件;根據(jù)所述導航配置文件從所述通用命令模塊中選擇與所述請求信息相應的通用導航命令;所述導航配置模塊,用于提供導航配置文件;所述通用命令模塊,用于提供通用導航命令;根據(jù)所述前端控制器選擇的通用導航命令調(diào)用所述規(guī)則引擎;執(zhí)行所述規(guī)則引擎返回的規(guī)則的結(jié)果,轉(zhuǎn)發(fā)頁面請求或?qū)Ш降较鄳姆掌黜撁?;所述?guī)則引擎,用于根據(jù)所述通用命令模塊的調(diào)用進行規(guī)則匹配,將匹配到的規(guī)則的結(jié)果返回給所述通用命令模塊。
以及,一種應用服務器,包括頁面導航單元和頁面展示單元;所述頁面導航單元,用于接收頁面請求;根據(jù)所述頁面請求進行規(guī)則匹配;按照匹配到的規(guī)則執(zhí)行規(guī)則的結(jié)果,轉(zhuǎn)發(fā)頁面請求或?qū)Ш降剿鲰撁嬲故締卧?;所述頁面展示單元,用于根?jù)所述頁面導航單元導航的信息,按照展示邏輯向用戶返回頁面響應。
采用上述技術方案,本發(fā)明實施例通過規(guī)則匹配來生成和執(zhí)行導航邏輯,避免了直接將真實導航邏輯代碼化,基于規(guī)則配置形式的規(guī)范性,能夠提供可視化工具支持的能力,用戶可通過對規(guī)則配置的修改,方便地進行導航邏輯的運行期定制;同時,由于規(guī)則配置直接影響匹配得到的導航邏輯,因此用戶能夠?qū)Ш竭壿嬤M行很好的維護。
圖1是現(xiàn)有ASP技術頁面導航運行示意圖;圖2是現(xiàn)有JSP技術頁面導航運行示意圖;圖3是本發(fā)明實施例頁面導航方法基本流程示意圖;圖4是本發(fā)明實施例一頁面導航方法流程示意圖;圖5是本發(fā)明實施例二頁面導航方法流程示意圖;圖6是本發(fā)明實施例三頁面導航方法流程示意圖;圖7是本發(fā)明實施例四頁面導航裝置示意圖;圖8是本發(fā)明實施例一方法由實施例四裝置運行的示意圖;
圖9是本發(fā)明實施例六頁面導航裝置示意圖;圖10是本發(fā)明實施例三方法由實施例六裝置運行的示意圖;圖11是本發(fā)明實施例七應用服務器示意圖。
下面通過具體實施方式
并結(jié)合附圖對本發(fā)明作進一步的詳細說明。
具體實施例方式
本發(fā)明實施例提供了一種頁面導航方法,采用規(guī)則匹配來生成和執(zhí)行導航邏輯,基本步驟如圖3所示,包括A1、接收頁面請求;頁面請求可以直接來自用戶,也可以來自之前導航的結(jié)果;A2、根據(jù)所述頁面請求進行規(guī)則匹配;在本發(fā)明實施例中,代碼式的導航邏輯被規(guī)則化描述的導航規(guī)則所取代,執(zhí)行頁面導航的過程成為根據(jù)規(guī)則配置進行規(guī)則匹配的過程;A3、按照匹配到的規(guī)則執(zhí)行規(guī)則的結(jié)果,轉(zhuǎn)發(fā)頁面請求或?qū)Ш降较鄳姆掌黜撁妫灰?guī)則的結(jié)果即需要執(zhí)行的導航邏輯,具體結(jié)果可分為兩類,一類是導航到某個頁面,則導航過程結(jié)束;另一類是轉(zhuǎn)發(fā)頁面請求,則繼續(xù)重復上述過程直到導航結(jié)束。當然,在規(guī)則匹配的過程中,也可能因為請求本身的原因,例如參數(shù)錯誤或用戶權限不足等,導致無法匹配或匹配不成功,這些情況可視為匹配到展示相應錯誤頁面的導航邏輯,同樣導致導航結(jié)束,所響應的頁面為特定的錯誤頁面。
本發(fā)明實施例還提供相應的頁面導航裝置及應用服務器。下面以具體的例子分別對本發(fā)明實施例方法和設備進行詳細說明。
實施例一、一種頁面導航方法,流程如圖4所示,包括B1、接收頁面請求;B2、解析所述頁面請求獲得請求信息;頁面請求中包含的請求信息可包括被請求頁面的統(tǒng)一資源地址(URLUniversal Resource Locator)、請求參數(shù)、Cookie、瀏覽器環(huán)境變量以及請求的內(nèi)容等;這些信息為后續(xù)進行的規(guī)則匹配提供條件;
B3、根據(jù)所述請求信息調(diào)用規(guī)則引擎進行規(guī)則匹配;通常,規(guī)則包含四個主要組成部分名稱、條件、限定和結(jié)果,名稱表明了規(guī)則的友好的名字,可以通過名字記住這個規(guī)則,便于用戶的使用;規(guī)則的條件是一組布爾表達式,用于使用規(guī)則因子來匹配傳入的事實,進行規(guī)則運算;規(guī)則的限定表示了規(guī)則的權重,分組等信息;規(guī)則的結(jié)果即為期望獲得的內(nèi)容,可以是賦值,表達式,也可以是動作。進行規(guī)則匹配通常包括1、加載規(guī)則包;規(guī)則包中包含了對規(guī)則的配置,通常由一組相關的規(guī)則形成,所加載的規(guī)則包可以是默認的也可以是指定的,本實施例中不對規(guī)則進行具體分類,因此只需加載默認的規(guī)則包;2、生成規(guī)則工作上下文;上下文(Working Context)是規(guī)則的運行環(huán)境;通常,規(guī)則在運算過程中需要申請內(nèi)存,建立、存儲和銷毀臨時變量,都在該運行環(huán)境中進行;規(guī)則運算中傳入的事實可傳遞給規(guī)則上下文,規(guī)則在運算的時候從上下文中獲取事實信息;此外,一次規(guī)則匹配還可能會涉及到多個規(guī)則的運算,上下文可以保證在多個規(guī)則的運算過程中共享數(shù)據(jù);3、根據(jù)所述請求信息的內(nèi)容,通過規(guī)則的條件表達式進行匹配;B4、按照匹配到的規(guī)則執(zhí)行規(guī)則的結(jié)果,轉(zhuǎn)發(fā)頁面請求或?qū)Ш降较鄳姆掌黜撁?;若結(jié)果為導航到某個頁面,則導航過程結(jié)束;若結(jié)果為轉(zhuǎn)發(fā)頁面請求,則繼續(xù)重復上述過程直到導航結(jié)束。
實施例二、一種頁面導航方法,流程如圖5所示,本實施例的特點在于對規(guī)則按照URL進行分類,方法包括C1、接收頁面請求;C2、解析所述頁面請求獲得請求信息,其中包括被請求頁面的URL;C3、根據(jù)被請求頁面的URL在地址規(guī)則包中進行匹配,選擇相應的導航邏輯規(guī)則包;在本實施例中相關的規(guī)則采用URL劃分成不同的導航邏輯規(guī)則包。URL與導航邏輯規(guī)則包的對應關系構成地址規(guī)則包。在執(zhí)行導航的時候,先根據(jù)URL信息匹配相應的導航邏輯規(guī)則包,再進行導航邏輯的規(guī)則匹配,從而達到模塊化的效果。
C4、調(diào)用規(guī)則引擎在選定的導航邏輯規(guī)則包中根據(jù)所述請求信息進行規(guī)則匹配;規(guī)則匹配的過程與實施例一中步驟B3的過程類似,只是本實施例中進行規(guī)則匹配時所加載的規(guī)則包即為指定的導航邏輯規(guī)則包;C5、按照匹配到的規(guī)則執(zhí)行規(guī)則的結(jié)果,轉(zhuǎn)發(fā)頁面請求或?qū)Ш降较鄳姆掌黜撁?;若結(jié)果為導航到某個頁面,則導航過程結(jié)束;若結(jié)果為轉(zhuǎn)發(fā)頁面請求,則繼續(xù)重復上述過程直到導航結(jié)束。
實施例三、一種頁面導航方法,流程如圖6所示,本實施例的特點在于基于現(xiàn)有“查找導航配置文件,調(diào)用導航邏輯命令對象”的方法,通過將導航邏輯命令對象中的導航邏輯提取為規(guī)則,增加對導航邏輯的定制能力,方法包括D1、接收頁面請求;D2、解析所述頁面請求獲得請求信息;D3、根據(jù)所述請求信息查找導航配置文件,選擇相應的通用導航命令;D4、由選定的通用導航命令調(diào)用規(guī)則引擎根據(jù)所述請求信息進行規(guī)則匹配;在本實施例中,導航配置文件所對應的導航命令中不再包含實際的導航邏輯,因此稱為通用導航命令;導航邏輯被提取成規(guī)則,通過通用導航命令調(diào)用規(guī)則引擎來生成完整的導航邏輯;規(guī)則匹配的過程與實施例一中步驟B3的過程類似,本實施例中進行規(guī)則匹配時所加載的規(guī)則包可以選擇默認的規(guī)則包,即不對規(guī)則進行分類;也可以根據(jù)選擇的通用導航命令指定加載對應的規(guī)則包;D5、按照匹配到的規(guī)則執(zhí)行規(guī)則的結(jié)果,轉(zhuǎn)發(fā)頁面請求或?qū)Ш降较鄳姆掌黜撁妫蝗艚Y(jié)果為導航到某個頁面,則導航過程結(jié)束;若結(jié)果為轉(zhuǎn)發(fā)頁面請求,則繼續(xù)重復上述過程直到導航結(jié)束。
本實施例的好處在于可直接應用于現(xiàn)有采用前端控制器架構的動態(tài)頁面提供方案中,而不需要進行太大的改動,有利于本發(fā)明實施例方案的推廣。
下面對本發(fā)明實施例提供的幾種頁面導航裝置實施例進行詳細說明。
實施例四、一種頁面導航裝置,如圖7所示,包括前端控制器101和規(guī)則引擎102;前端控制器101,用于接收頁面請求;解析所述頁面請求獲得請求信息;規(guī)則引擎102,用于根據(jù)前端控制器101解析獲得的請求信息進行規(guī)則匹配;按照匹配到的規(guī)則執(zhí)行規(guī)則的結(jié)果,轉(zhuǎn)發(fā)頁面請求或?qū)Ш降较鄳姆掌黜撁妗?br>
本實施例頁面導航裝置可采用實施例一中的頁面導航方法,運行示意如圖8所示,通過前端控制器101接受用戶瀏覽器a1的請求,前端控制器101將請求信息傳入規(guī)則引擎102,規(guī)則引擎102按照規(guī)則配置1021進行規(guī)則匹配,執(zhí)行匹配到的規(guī)則的結(jié)果,結(jié)果可能是導航到相應的服務器頁面a2,也可能是請求的轉(zhuǎn)發(fā)。
實施例五、一種頁面導航裝置,結(jié)構與實施例四類似,包括前端控制器和規(guī)則引擎;前端控制器,用于接收頁面請求;解析所述頁面請求獲得請求信息,所述請求信息中包括被請求頁面的統(tǒng)一資源地址;根據(jù)所述統(tǒng)一資源地址在地址規(guī)則包中進行匹配,選擇相應的導航邏輯規(guī)則包;規(guī)則引擎,用于在前端控制器選定的導航邏輯規(guī)則包中根據(jù)所述請求信息進行規(guī)則匹配;按照匹配到的規(guī)則執(zhí)行規(guī)則的結(jié)果,轉(zhuǎn)發(fā)頁面請求或?qū)Ш降较鄳姆掌黜撁妗?br>
本實施例頁面導航裝置可采用實施例二中的頁面導航方法,運行示意與圖8相仿,只是前端控制器是先經(jīng)過地址匹配確定加載的導航邏輯規(guī)則包后再調(diào)用規(guī)則引擎進行規(guī)則匹配。為更好的理解上述實施例,以下給出一個具體的運行過程,包括c1、用戶通過瀏覽器向頁面導航裝置所在的應用服務器發(fā)送頁面請求,請求某種服務;c2、前端控制器收到用戶請求,解析請求,得到URL、請求參數(shù)、Cookie和瀏覽器環(huán)境變量等信息;c3、前端控制器創(chuàng)建工作流引擎執(zhí)行環(huán)境,從規(guī)則庫或者緩存中加載URL匹配規(guī)則進行URL匹配;c4、如果匹配規(guī)則無法找到,請求結(jié)束,給瀏覽器返回業(yè)務無法找到錯誤的頁面;c5、如果匹配規(guī)則找到,進入導航邏輯規(guī)則匹配處理過程中,根據(jù)URL規(guī)則匹配的結(jié)果調(diào)用規(guī)則引擎加載相應的導航邏輯匹配規(guī)則包;c6、規(guī)則引擎進行導航邏輯規(guī)則匹配,如無法找到匹配,請求結(jié)束,返回用戶服務無法使用錯誤頁面;c7、如找到匹配規(guī)則,執(zhí)行規(guī)則結(jié)果動作,規(guī)則結(jié)果動作將會導致導航到某個頁面進行顯示,或者進行請求轉(zhuǎn)發(fā);c8、導航到某個頁面后,整個請求處理過程結(jié)束;c9、當規(guī)則結(jié)果為轉(zhuǎn)發(fā)時,重新進入步驟c2。
以下舉例說明URL規(guī)則與導航邏輯規(guī)則的匹配,引號中的字段表示規(guī)則中可配置的對象假定規(guī)則配置中已設置URL規(guī)則如下一、規(guī)則名稱“客戶信息功能”規(guī)則條件如果“請求”的“URL”“等于”“客戶信息”規(guī)則結(jié)果那么“應用顯示客戶信息規(guī)則包”二、規(guī)則名稱“列舉客戶功能”規(guī)則條件如果“請求”的“URL”“等于”“客戶列表”規(guī)則結(jié)果那么“應用顯示客戶信息列表的規(guī)則包”前端控制器收到請求后,假定解析出的URL為“客戶信息”,則在URL規(guī)則包中進行匹配時,“客戶信息功能”這條規(guī)則就會被匹配到,結(jié)果指向“應用顯示客戶信息規(guī)則包”。
假定規(guī)則配置中已設置“顯示客戶信息規(guī)則包”中規(guī)則如下一、規(guī)則名稱“大客戶詳細信息列表”規(guī)則條件如果“客戶”的“類型”“等于”“大客戶”規(guī)則結(jié)果那么“導航”(“大客戶信息列表頁面”)二、規(guī)則名稱“客戶詳細信息列表”
規(guī)則條件如果“客戶”的“類型”“等于”“一般客戶”規(guī)則結(jié)果那么“導航”(“客戶信息列表頁面”)規(guī)則引擎根據(jù)前端控制器URL匹配的結(jié)果加載“顯示客戶信息規(guī)則包”,假定請求信息中傳入的數(shù)據(jù)顯示用戶類型為“大客戶”,則“大客戶詳細信息列表”這條規(guī)則就會被匹配到,規(guī)則引擎執(zhí)行規(guī)則結(jié)果,用戶將會被導航到“大客戶信息列表頁面”。
實施例六、一種頁面導航裝置,如圖9所示,包括前端控制器201、導航配置模塊202、通用命令模塊203和規(guī)則引擎204;前端控制器201,用于接收頁面請求;解析所述頁面請求獲得請求信息;根據(jù)所述請求信息向?qū)Ш脚渲媚K202查找導航配置文件;根據(jù)所述導航配置文件從通用命令模塊203中選擇與所述請求信息相應的通用導航命令用于接收頁面請求;導航配置模塊202,用于提供導航配置文件;通用命令模塊203,用于提供通用導航命令;根據(jù)前端控制器201選擇的通用導航命令調(diào)用規(guī)則引擎204;執(zhí)行規(guī)則引擎204返回的規(guī)則的結(jié)果,轉(zhuǎn)發(fā)頁面請求或?qū)Ш降较鄳姆掌黜撁妫灰?guī)則引擎204,用于根據(jù)通用命令模塊203的調(diào)用進行規(guī)則匹配,將匹配到的規(guī)則的結(jié)果返回給通用命令模塊203。
本實施例頁面導航裝置可采用實施例三中的頁面導航方法,運行示意如圖10所示,通過前端控制器201接受用戶瀏覽器b1的請求,前端控制器201查找導航配置模塊202中的導航邏輯配置確定對應的通用導航命令;然后調(diào)用通用命令模塊203中相應的通用導航命令2031,通用導航命令2031再調(diào)用規(guī)則引擎204進行規(guī)則匹配,執(zhí)行匹配到的規(guī)則的結(jié)果,結(jié)果可能是導航到相應的服務器頁面b2,也可能是請求的轉(zhuǎn)發(fā)。
實施例七、一種應用服務器,如圖11所示,包括頁面導航單元100和頁面展示單元200;頁面導航單元100,用于接收頁面請求;根據(jù)所述頁面請求進行規(guī)則匹配;按照匹配到的規(guī)則執(zhí)行規(guī)則的結(jié)果,轉(zhuǎn)發(fā)頁面請求或?qū)Ш降巾撁嬲故締卧?00;頁面展示單元200,用于根據(jù)頁面導航單元100導航的信息,按照展示邏輯向用戶返回頁面響應。
本實施例中頁面導航單元100具體可采用實施例四~六中頁面導航裝置的結(jié)構。
以上對本發(fā)明實施例所提供的頁面導航方法和裝置及應用服務器進行了詳細介紹,本文中應用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領域的一般技術人員,依據(jù)本發(fā)明的思想,在具體實施方式
及應用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應理解為對本發(fā)明的限制。
權利要求
1.一種頁面導航方法,包括步驟接收頁面請求;根據(jù)所述頁面請求進行規(guī)則匹配;按照匹配到的規(guī)則執(zhí)行規(guī)則的結(jié)果,轉(zhuǎn)發(fā)頁面請求或?qū)Ш降较鄳姆掌黜撁妗?br>
2.根據(jù)權利要求1所述的頁面導航方法,其特征在于,所述根據(jù)頁面請求進行規(guī)則匹配包括解析所述頁面請求獲得請求信息;根據(jù)所述請求信息調(diào)用規(guī)則引擎進行規(guī)則匹配。
3.根據(jù)權利要求1所述的頁面導航方法,其特征在于,所述根據(jù)頁面請求進行規(guī)則匹配包括解析所述頁面請求獲得請求信息,所述請求信息中包括被請求頁面的統(tǒng)一資源地址;根據(jù)所述統(tǒng)一資源地址在地址規(guī)則包中進行匹配,選擇相應的導航邏輯規(guī)則包;調(diào)用規(guī)則引擎在選定的導航邏輯規(guī)則包中根據(jù)所述請求信息進行規(guī)則匹配。
4.根據(jù)權利要求1所述的頁面導航方法,其特征在于,所述根據(jù)頁面請求進行規(guī)則匹配包括解析所述頁面請求獲得請求信息;根據(jù)所述請求信息查找導航配置文件,選擇相應的通用導航命令;由選定的通用導航命令調(diào)用規(guī)則引擎根據(jù)所述請求信息進行規(guī)則匹配。
5.根據(jù)權利要求2~4任意一項所述的頁面導航方法,其特征在于,所述規(guī)則匹配的過程包括加載規(guī)則包;生成規(guī)則工作上下文;根據(jù)所述請求信息的內(nèi)容,通過規(guī)則的條件表達式進行匹配。
6.一種應用服務器,其特征在于,包括頁面導航單元和頁面展示單元;所述頁面導航單元,用于接收頁面請求;根據(jù)所述頁面請求進行規(guī)則匹配;按照匹配到的規(guī)則執(zhí)行規(guī)則的結(jié)果,轉(zhuǎn)發(fā)頁面請求或?qū)Ш降剿鲰撁嬲故締卧?;所述頁面展示單元,用于根?jù)所述頁面導航單元導航的信息,按照展示邏輯向用戶返回頁面響應。
7.一種頁面導航裝置,其特征在于,包括前端控制器和規(guī)則引擎;所述前端控制器,用于接收頁面請求;解析所述頁面請求獲得請求信息;所述規(guī)則引擎,用于根據(jù)所述前端控制器解析獲得的請求信息進行規(guī)則匹配;按照匹配到的規(guī)則執(zhí)行規(guī)則的結(jié)果,轉(zhuǎn)發(fā)頁面請求或?qū)Ш降较鄳姆掌黜撁妗?br>
8.一種頁面導航裝置,其特征在于,包括前端控制器和規(guī)則引擎;所述前端控制器,用于接收頁面請求;解析所述頁面請求獲得請求信息,所述請求信息中包括被請求頁面的統(tǒng)一資源地址;根據(jù)所述統(tǒng)一資源地址在地址規(guī)則包中進行匹配,選擇相應的導航邏輯規(guī)則包;所述規(guī)則引擎,用于在所述前端控制器選定的導航邏輯規(guī)則包中根據(jù)所述請求信息進行規(guī)則匹配;按照匹配到的規(guī)則執(zhí)行規(guī)則的結(jié)果,轉(zhuǎn)發(fā)頁面請求或?qū)Ш降较鄳姆掌黜撁妗?br>
9.一種頁面導航裝置,其特征在于,包括前端控制器、導航配置模塊、通用命令模塊和規(guī)則引擎;所述前端控制器,用于接收頁面請求;解析所述頁面請求獲得請求信息;根據(jù)所述請求信息向所述導航配置模塊查找導航配置文件;根據(jù)所述導航配置文件從所述通用命令模塊中選擇與所述請求信息相應的通用導航命令;所述導航配置模塊,用于提供導航配置文件;所述通用命令模塊,用于提供通用導航命令;根據(jù)所述前端控制器選擇的通用導航命令調(diào)用所述規(guī)則引擎;執(zhí)行所述規(guī)則引擎返回的規(guī)則的結(jié)果,轉(zhuǎn)發(fā)頁面請求或?qū)Ш降较鄳姆掌黜撁?;所述?guī)則引擎,用于根據(jù)所述通用命令模塊的調(diào)用進行規(guī)則匹配,將匹配到的規(guī)則的結(jié)果返回給所述通用命令模塊。
全文摘要
本發(fā)明公開了一種頁面導航方法,其基本內(nèi)容是通過規(guī)則匹配來生成和執(zhí)行導航邏輯。本發(fā)明還提供相應的頁面導航裝置和應用服務器。本發(fā)明避免了直接將真實導航邏輯代碼化,基于規(guī)則配置形式的規(guī)范性,能夠提供可視化工具支持的能力,用戶可通過對規(guī)則配置的修改,方便地進行導航邏輯的運行期定制;同時,由于規(guī)則配置直接影響匹配得到的導航邏輯,因此用戶能夠?qū)Ш竭壿嬤M行很好的維護。
文檔編號G06F17/30GK101030228SQ20071008881
公開日2007年9月5日 申請日期2007年3月28日 優(yōu)先權日2007年3月28日
發(fā)明者邵俊雄 申請人:華為技術有限公司