tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "BLAND, Geoff, GBM" <Geoff.Bl...@rbos.com>
Subject RE: Problem with the xsl:import
Date Tue, 25 Apr 2006 11:52:39 GMT
Marc,

Again thanks for the reply, we've kind of done what you say should work - it
appears not to work.

We have put in 

<xsl:import href="/aaem/xsl/routesummarycontent.xsl" />

And also (I think this is more correct as we're already at the "aaem" level)

<xsl:import href="/xsl/routesummarycontent.xsl" />

Neither work.

I'm pretty sure that alias is set correctly as if I put
http://myserver:thisport/aaem/xsl/routesummarycontent.xsl into a web browser
the XSLT script is found.

I'm not sure quite what you mean by "make sure XSL content is Processed by
Tomcat". I assume this is happening as if we put in the full address the
XSLT is processed with no problem.

Thanks
Geoff Bland


-----Original Message-----
From: Marc Farrow [mailto:marc.farrow@gmail.com] 
Sent: 25 April 2006 12:29
To: Tomcat Users List
Subject: Re: Problem with the xsl:import


It is not impossible.  Try

<xsl:import href="/aaem/xsl/routesummarycontent.xsl" />

You just have to make sure that the XSL content is either

1)  Processed by Tomcat (by your connector properties)
    a)  in the MOD_JK* worlds, this is making sure the URL pattern matching
is set to forward
         the appropriate requests to Tomcat.  In other connectors, you will
have to do basically
         the same thing by whatever means is needed with that connector.
2)  Apache can see the "aaem" webapp via an alias.

We use the second method.  You let Apache handle all requests that do not
require a servlet container and forward everything else (JSPs and servlets)
to Tomcat.  This works even if we have "static" content within our Tomcat
webapp.

hth


On 4/25/06, BLAND, Geoff, GBM <Geoff.Bland@rbos.com> wrote:
>
> Marc,
>
> Thanks for the reply.
>
> We can put in an import of the form
>
> <xsl:import href="http://localhost/aaem/xsl/routesummarycontent.xsl" 
> />
>
> and that works fine (for a single web server).
>
> But we have multiple web servers on the box (using different ports and 
> different install paths) and they may be different versions 
> (development, UAT, production) having different versions of 
> routesummarycontent.xsl. If we use the import above all servers end up 
> selecting the XSL for just one of the versions.
>
> We don't want to have a different import for each version either as 
> that will need modifying as we migrate updated versions between 
> servers.
>
> What we need is a "relative" import, for example,
>
> <xsl:import href="/xsl/routesummarycontent.xsl" />  <!-- doesn't work 
> -->
>
> But I'm thinking this is impossible.
>
> Thanks
> Geoff
>
>
> -----Original Message-----
> From: Marc Farrow [mailto:marc.farrow@gmail.com]
> Sent: 21 April 2006 14:41
> To: Tomcat Users List
> Subject: Re: Problem with the xsl:import
>
>
> You need to put the XML import file (in your case 
> routesummarycontent.xsl) somewhere that whomever is providing the 
> resource (Apache or Tomcat) can see it.  Let me try to elaborate.
>
> We use an AJP connector with Tomcat and receives requests from Apache 
> on port 8009.  We forward all "Servlet" stuff to the Tomcat, but we 
> let Apache handle everything else.  Even images, js files, etc that 
> are contained within a web application (context).  In order to 
> accomplish this, we have an
> alias set up for each web application in Apache.  Thus, when we go to
> http://localhost/mywebapp/js/myjsfile.js we know that Apache is pulling up
> that page.  However, if we have a js file in a JSP page that is referenced
> such as
>
> <script src="/mywebapp/js/myjsfile.js" language="Javascript"></script>
>
> we know that Tomcat is processing the JSP page, but Apache is 
> processing the handling of sending the JS file to the client.  As this 
> is another "http" request inside the page that was request.
>
> So, the short of it is that you need to place your XSL somewhere that 
> can be accessed via HTTP.  So you need to either move the XSL file to 
> a place where
> an alias is defined for Apache (even root) or create an alias for your
> Tomcat context and then point your html tag to:
>
> <xsl:import href="http://localhost/aaem/xsl/routesummarycontent.xsl" 
> />
>
> HTH
>
>
>
> On 4/21/06, BLAND, Geoff, GBM <Geoff.Bland@rbos.com> wrote:
> >
> > Using Apache Tomcat 5.0.28 I'm having a problem with the xsl:import 
> > command.
> >
> > I have several Tomcat running on the same server (they could be 
> > different releases of code so can't share resources).
> >
> > An XSLT script is called via a JSP to convert XML to HTML 
> > (<xsl:apply nameXml="routesummary" xsl="/xsl/routesummaryheader.xsl" 
> > />).
> >
> > This routesummaryheader.xsl script then needs to call another XSLT 
> > script routesummarycontent.xsl and it does this via an import, for 
> > example,
> >
> > <xsl:import 
> > href="http://localhost:8080/aaem/xsl/routesummarycontent.xsl"
> > />
> >
> > Now this works fine.
> >
> > But I run many Tomcat servers on this box and so a specific URI is 
> > no good. So I want to replace that import with a relative URI
> >
> > <xsl:import href="routesummarycontent.xsl" />
> >
> > This does not work, I get "Had IO Exception with stylesheet file: 
> > routesummarycontent.xsl".
> >
> > Note routesummaryheader.xsl and routesummarycontent.xsl are in the 
> > same directory.
> >
> > I've tried all kinds of relative paths in the import nothing seems 
> > to work.
> >
> > The JSP file is under webapps\app-dir\jsp. The XSLT files are under 
> > webapps\app-dir\xsl.
> >
> >
> > How do I fix this?
> >
> >
> > ********************************************************************
> > **
> > *************
> > The Royal Bank of Scotland plc. Registered in Scotland No 90312.
> > Registered Office: 36 St Andrew Square, Edinburgh EH2 2YB.
> > Authorized and regulated by the Financial Services Authority
> >
> > This e-mail message is confidential and for use by the addressee 
> > only. If the message is received by anyone other than the addressee, 
> > please return the message to the sender by replying to it and then 
> > delete the message from your computer. Internet e-mails are not 
> > necessarily secure. The Royal Bank of Scotland plc does not accept 
> > responsibility for changes made to this message after it was sent.
> >
> > Whilst all reasonable care has been taken to avoid the transmission 
> > of viruses, it is the responsibility of the recipient to ensure that 
> > the onward transmission, opening or use of this message and any 
> > attachments will not adversely affect its systems or data. No 
> > responsibility is accepted by The Royal Bank of Scotland plc in this 
> > regard and the recipient should carry out such virus and other 
> > checks as it considers appropriate. Visit our websites at: 
> > http://www.rbos.com http://www.rbsmarkets.com
> >
> > ********************************************************************
> > **
> > *************
> >
> > --------------------------------------------------------------------
> > -
> > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > For additional commands, e-mail: users-help@tomcat.apache.org
> >
> >
>
>
> --
> Marc Farrow
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>


--
Marc Farrow

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Mime
View raw message