簡體   English   中英

從“Java EE Dynamic Web”應用程序訪問“Spring MVC”應用程序

[英]Accessing “Spring MVC” application from a “Java EE Dynamic Web” application

我們有兩個應用程序,一個是 Java EE 動態 Web 應用程序,它通過復雜的身份驗證機制從 Internet 訪問。 第二個是基於 Spring MVC 框架(3.0 以上)構建的新應用程序。 兩個應用程序都部署在同一台 WAS 服務器上。

現在我們需要從新的 Spring 應用程序到 Java EE Web 應用程序訪問一些詳細信息(例如基於員工 ID 的員工詳細信息)。

即通過傳遞一些參數( EmpId )並更新一些細節等,使用從 Java EE Web 應用程序對新 Spring 應用程序的方法調用。

我們不打算再次對新的 Spring 應用程序重新進行身份驗證。

我怎樣才能做到這一點?

您必須將兩個應用程序配置為在 WAS 服務器中使用相同的會話存儲。 在查詢新的 Spring 應用程序時,您可以通過以下方式傳遞 url;

http://<host>:<port>/newapplication/user/1?JSESSIONID=<JavaEEApplicationSessionID>

其中JavaEEApplicationSessionID是您已經使用 Java EE 應用程序登錄的當前 JSESSIONID。 這樣,新的 Spring 應用程序將在共享會話存儲中查找 JSESSIONID,並且不會要求重新進行身份驗證,因為它可以找到有效的會話。

正如 Jeff Lee 建議的那樣,您需要拆分應用程序Java EE Style

這意味着您的項目將成為帶有 Web 應用程序的 war 文件和帶有 EJB 的 jar 文件。 然后您的 EJB(考慮到它們配置正確)可以被兩個應用程序訪問。

為此,您需要將Java EE應用程序打包為 EAR 文件。 來自 Oracle 的舊 Java EE 教程,可為您提供一些指導。 http://docs.oracle.com/javaee/7/tutorial/doc/packaging001.htm#BCGDJDFB

這是 EJB 背后的基本思想。 您的業​​務邏輯部分將在所有應用程序中可用(和可重用),並且對其中一個 BL 部分的更改將反映在所有應用程序中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM