2010-09-28 62 views
2

我們有一個有13個模塊的大應用程序。我們希望爲每個模塊創建war文件並將應用程序部署爲EAR。我們通過頂層菜單導航到不同的頁面,其中包含所有模塊的鏈接。現在的問題是每個模塊都有自己的上下文。爲了切換上下文我們使用的是external.jsp多個戰爭之間的切換鏈接

<html> 
<head> 

<%@ include file="/private/jsp/header.jsp"%> 
<% 
String link= request.getQueryString(); 
%> 
</head> 

<body> 
<iframe id="ekawarframe" src="<%=link%>" width="100%" height="80%" scrolling="auto" frameborder="0"> 
</iframe> 
</body> 
</html> 

並且在這種格式使用URL「/external.jsp?/app/newDerivativeTrade.do?method=loadNewDerivativeTrade & isFreight =假」。有沒有其他優雅的方式來導航多個戰爭之間的鏈接。

回答

1

那麼,你可以簡單地鏈接到其他模塊使用<a href="/anothermodule/">link</a>。唯一的問題是共享http會話。您的應用程序服務器可能允許共享http會話。

+1

我們已經決定通過指定上下文來分享鏈接,只能按照您的建議指定。我們在會話中有usercontext ..Jboss不允許在多個戰爭之間共享會話..我們使用JOSSO進行單點登錄生成會話ID ..我們將使用ehcache將josso會話ID和用戶上下文的組合作爲關鍵字共享用戶上下文。 – 2010-09-28 06:20:22

0

如果你使用maven作爲構建工具,你可以在ech模塊中添加一個依賴到一個普通的戰爭。這將隨後與模塊戰爭合併。

然後,您可以從一個公共模塊分發標頭jsp(以及其他常見的東西,如css,圖像和JavaScript),並且不再需要iframe。

0

您可以使用Redis或MongoDB創建基於密鑰的會話管理器。