You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cocoon.apache.org by Darren Scott <ds...@bluecheese.co.uk> on 2000/05/25 11:28:03 UTC

The real taglib bug

Ok guys,

Apologies for my earlier, hasty bug posting. Cocoon was not behaving
predictably which confused me a bit.

It appears that Cocoon isn't recompiling XSP and Logicsheets when they
have been touched, so I kept on getting cached versions.

I'm using JServ 1.0, Apache 1.3.9 and Cocoon 1.7.3 (will upgrade today)

Anyway, the cacheing problem just served to disguise the real problem. I
got round it by constantly restarting Apache and renaming files (ughh).

So, I think this is the bug:

If a Logicsheet has an XSL namespace of:

"http://www.w3.org/XSL/Transform"

I will *not* work - I get the ClassNotFoundException and an empty .java
file in the repository.

Also, in the error log, I get the message:

"XSL Warning: xsl:stylesheet requires a 'version' attribute!"

Which is *really* confusing, because I have a version *attribute*, just
not an version number in the namespace URI (I'm sure this is an Xalan
message, so I'll go to them about it)

Anyway, if I put a "/1.0" on the end of the URI, and restart Apache
(*only* if I restart Apache), then everything works fine!

Except, I get this in the error log:-

"XSL Warning: Old XSLT Namespace: http://www.w3.org/XSL/Transform/1.0"

Xalan again, probably - but this issue only seems to appear with
Logicsheets, not plain XSL files!

The /samples that came with the distribution all use 

"http://www.w3.org/XSL/Transform"

Which is totally confusing, because it just doesn't work in a
Logicsheet.

I can't see anything in the 1.7.4 changelog to say that the above has
been fixed, so is it a bug afterall?

Darren Scott
Production Director
bluecheese.co.uk

Re: The real taglib bug

Posted by Darren Scott <ds...@bluecheese.co.uk>.
Hans Ulrich Niedermann wrote:
> 
> Darren Scott <ds...@bluecheese.co.uk> writes:
> 
> > If a Logicsheet has an XSL namespace of:
> >
> > "http://www.w3.org/XSL/Transform"
> 
> All XSL stylesheets should use http://www.w3.org/1999/XSL/Transform
> 
> > I will *not* work - I get the ClassNotFoundException and an empty .java
> > file in the repository.

Hans, I just revisited your reply to an earlier posting by myself, and
realized I had been overlooking the '1999'

Thanks! - Just goes to show how easy it can be to be blinded by your own
preconceptions :-)

BTW - I've never seen any explanation of the functionality of this
attribute. The above URL is just a human readable definition - is there
any functional use? I used to think that the URL should point to a DTD,
but that doesn't seem to be the case. When I define my own namespaces,
should I use a similar HTML file which simply says 'This is an XML
namespace'?

Darren Scott
Production Director
bluecheese.co.uk

Re: The real taglib bug

Posted by Hans Ulrich Niedermann <ni...@isd.uni-stuttgart.de>.
Darren Scott <ds...@bluecheese.co.uk> writes:

> If a Logicsheet has an XSL namespace of:
> 
> "http://www.w3.org/XSL/Transform"

All XSL stylesheets should use http://www.w3.org/1999/XSL/Transform

> I will *not* work - I get the ClassNotFoundException and an empty .java
> file in the repository.

Uli