Actually it is very simple my friend...
consider an app 1 from which you want to access app2 demo3 page okay...
we can't get out our context but that app2 context can be come in our app1...so now the point is how we do it..
so what you have to do...just simply firstly get the context of your app1
ServletContext ctx= getServletContext();
and then ServletContext ctx1= ctx.getContext("http://localhost:7001/app2"
// to get the context of another app using servlet context method getContext()and give the absolute path in this.
then use the request dispatcher object to get to that app2's page demo3
RequestDispatcher rd = ctx1.getRequestDispatcher("/demo3");
reply if you don't find it suitable...