2015-03-20 5 views
2

J'essaie de déployer deux applications web dites appA et appB dans le même serveur hôte local tomcat et lorsque les deux applications sont en cours d'exécution est-il possible d'appeler AppB à appA utilisant l'appel ajax ou redirigerest-il possible une application web java peut appeler une autre application web java dans le même localhost du serveur tomcat

+0

Oui c'est possible !!!! vous devez obtenir le contexte de appB dans appA. –

+0

Avez-vous regardé HttpClient par Apache? si elles sont basées sur servlet (comme vous l'avez dit application web), je pense que vous pouvez les utiliser pour appeler get ou post method. – agpt

+0

pouvons-nous faire le travail de cadre de couture pour répondre à l'appel ajax à partir d'une autre application avec simple page html ou jsp sans avoir des trucs de haut niveau – NagaRaj

Répondre

1

Qu'est-ce que vous cherchez Toa Chieve peut être effectuée à l'aide du paramètre tomcat suivant:

(de docs)

crossContext

Définissez cette valeur sur true si vous voulez que les appels de cette application à ServletContext.getContext() renvoient correctement un répartiteur de demande pour les autres applications Web exécutées sur cet hôte virtuel. Défini sur false (par défaut) dans les environnements sensibles à la sécurité, pour que getContext() renvoie toujours null.

exemple:

http://blog.imaginea.com/cross-context-communication-between-web-applications/

discussions relatives: What does the crossContext attribute do in Tomcat? Does it enable session sharing?

0

Try This Way

ServletContext ctx = request.getServletContext().getContext("/otherapp"); 
request.setAttribute("MESSAGE", "Hello There!"); 
RequestDispatcher dispatcher = ctx.getRequestDispatcher("/hello.jsp"); 
dispatcher.forward(request, response); 

Remarque

Pour activer cette fonctionnalité dans Tomcat, nous devons activer l'attribut crossContext en définissant la valeur sur true, la valeur par défaut est false.