So in some respects I guess Flex has a
limitation in this area but really I think this is a limitation that exists
with any webapp that is being accessed via redirects/pass-through and needs to generate
urls. As James points out in his follow-up you might be able to address some
of these issues with your web server. Also is there any chance you that you
could simply pass through the correct context root as a flashvar and then in
your apps use that variable? The JSP tag allows you to pass flashvar
parameters through and then you’d declare a variable in your main
application where that value would be stored. Then when you’re making
your relative url requests you’d simply take that variable into account.
Matt
Matt,
I'm sorry that I'm not being clear. I'm
thinking about your JSP
suggestion, and I suppose that would, and would
confirm my original
premise that Flex has a limitation in this area.
Let's see if I can be a little clearer:
WEB SERVER:
incoming url from browser: http://66.23.45.67/beta/Example.mxml
redirects to
outgoing to app
server: http://192.168.4.110/Example.mxml
APP SERVER:
can know as a deployment parameter
that the external name contains
"beta".
incoming url from web server: http://192.168.4.110/Example.mxml
emits some HTML with EMBEDS in it,
BUT THIS HTML DOES NOT CONTAIN
"beta" in the URLs that it
uses to refer to the Flex servlets.
It needs to in order for the calls
from the browser to the Flex
servlets to be redirected
successfully by the Webserver. My
assertion is that Flex does not have
any support for this
situation, and instead REQUIRES that
the Webserver NOT rewrite
the URLs to remove a "context
root" that's used only for
directing traffic at the Webserver.
--- In [email protected],
"Matt Chotin" <[EMAIL PROTECTED]> wrote:
> Could you embed the information by generating
the MXML using a JSP? I
> don't remember if you can access the URL that
the browser thinks you are
> hitting from a JSP if it is really a
pass-through from another server.
> The JSP might think it's on the
"real" server (192.168...) and not
> (foo.bar.com). If not maybe you can do
it with _javascript_ on the HTML
> page since the url in the address bar should
have the right info?
>
>
>
> Sorry, not much help but I'm still having
trouble understanding which
> pieces of info you have access to, don't have
access to, when you would
> have access to it, and where and when you
need that info.
>
>
>
> Matt
>
>
>
> ________________________________
>
> From: [email protected]
[mailto:[email protected]]
On
> Behalf Of sbyrne_dorado
> Sent: Thursday, June 02, 2005 11:41 AM
> To: [email protected]
> Subject: [flexcoders] Re: Fun with context
roots
>
>
>
> I don't think I even get to the state of
calling services; the main
> page (with EMBED, OBJECT, etc) needs to be
emitting the pseudo context
> root "beta", because URLs from it
that it will use to download the
> application will need that pseudo context
root to get past the web
> server.
>
> --- In [email protected],
"Matt Chotin" <[EMAIL PROTECTED]> wrote:
> > What urls are being generated by the
server here, named services? If
> > the urls need to be portable can you use
relative urls? I can
> > understand that you want a url on one
server to redirect to a
> different
> > url on another server using a different
path, but I guess I'm not sure
> > how the context root becomes a problem
here.
> >
> >
> >
> > Matt
> >
> >
> >
> > ________________________________
> >
> > From: [email protected]
[mailto:[email protected]]
> On
> > Behalf Of sbyrne_dorado
> > Sent: Wednesday, June 01, 2005 5:06 PM
> > To: [email protected]
> > Subject: [flexcoders] Fun with context
roots
> >
> >
> >
> > I am wondering if I've stumbled on a
limitation of Flex, or if it's a
> > limitation of my knowledge (probably the
latter).
> >
> > Here's the situation: I would like to
have the ability to have a web
> > server dispatch to different app servers
based on a "contex root" like
> > path prefix. But, I don't want to
have to force each of those app
> > servers to have to have the webapp
stored under the same context root
> > that the web server URLs are using.
> >
> > More concretely:
> >
> > On my webserver I want to be able to say
> > "http://foo.bar.com/beta/...", and
have the webserver redirect that to
> > the internal app server URL "http://192.168.1.1/..."; i.e. no
"beta"
> > context root.
> >
> > Can I do this? I can't seem to get
the URLs generated by the server
> > to be the "externally visible"
form of the URLs (i.e. with the "beta"
> > context root) and not have the app
server's context root be "beta".
> >
> > Steve
> >
> >
> >
> >
> >
> > ________________________________
> >
> > Yahoo! Groups Links
> >
> > * To visit
your group on the web, go to:
> > http://groups.yahoo.com/group/flexcoders/
>
>
> > * To
unsubscribe from this group, send an email to:
> >
[EMAIL PROTECTED]
> >
<mailto:[EMAIL PROTECTED]>
>
>
> > * Your use
of Yahoo! Groups is subject to the Yahoo! Terms of
> > Service <http://docs.yahoo.com/info/terms/>
.
>
>
>
>
>
> ________________________________
>
> Yahoo! Groups Links
>
> * To visit your
group on the web, go to:
> http://groups.yahoo.com/group/flexcoders/
>
> * To
unsubscribe from this group, send an email to:
>
[EMAIL PROTECTED]
> <mailto:[EMAIL PROTECTED]>
>
> * Your use of
Yahoo! Groups is subject to the Yahoo! Terms of
> Service <http://docs.yahoo.com/info/terms/>
.
Yahoo! Groups Links