You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cocoon.apache.org by Andreas Hartmann <an...@apache.org> on 2004/09/22 18:51:50 UTC
Re: svn commit: rev 47047 - in cocoon/trunk/src: blocks/databases/java/org/apache/cocoon/transformation
blocks/linkrewriter/java/org/apache/cocoon/transformation blocks/mail/java/org/apache/cocoon/mail/transformation
blocks/portal/java/org/apache/cocoon/portal/coplets/basket blocks/portal/java/org/apache/cocoon/portal/transformation
blocks/repository/java/org/apache/cocoon/transformation blocks/session-fw/java/org/apache/cocoon/webapps/session/transformation
java/org/apache/cocoon/transformation
vgritsenko@apache.org wrote:
[...]
> AbstractSAXTransformer cleanup:
> Make sure namespaceURI is not null
http://www.saxproject.org/?selected=namespaces
If I understand this correctly, a null URI should be used
to denote elements without a namespace (I used to handle
it like that).
I just updated the Cocoon trunk and got a NPE in
AbstractSAXTransformer.endPrefixMapping():
if (namespaceURI.equals(uri)) {
So how should this be handled?
In Java 1.5 there is XMLConstants.NULL_NS_URI, is there
something similar in 1.4?
-- Andreas
Re: svn commit: rev 47047 - in cocoon/trunk/src: blocks/databases/java/org/apache/cocoon/transformation
blocks/linkrewriter/java/org/apache/cocoon/transformation blocks/mail/java/org/apache/cocoon/mail/transformation
blocks/portal/java/org/apache/cocoon/portal/coplets/basket blocks/portal/java/org/apache/cocoon/portal/transformation
blocks/repository/java/org/apache/cocoon/transformation blocks/session-fw/java/org/apache/cocoon/webapps/session/transformation
java/org/apache/cocoon/transformation
Posted by Andreas Hartmann <an...@apache.org>.
Andreas Hartmann wrote:
> vgritsenko@apache.org wrote:
>
> [...]
>
>> AbstractSAXTransformer cleanup:
>> Make sure namespaceURI is not null
>
>
>
> http://www.saxproject.org/?selected=namespaces
>
> If I understand this correctly, a null URI should be used
> to denote elements without a namespace (I used to handle
> it like that).
>
> I just updated the Cocoon trunk and got a NPE in
> AbstractSAXTransformer.endPrefixMapping():
>
> if (namespaceURI.equals(uri)) {
Just in case someone is faced with the same problem:
It happened because a transformer did not call
super.setup() when overriding setup(). That's why
the namespaceURI field was not initialized.
-- Andreas
Re: svn commit: rev 47047 - in cocoon/trunk/src: blocks/databases/java/org/apache/cocoon/transformation
blocks/linkrewriter/java/org/apache/cocoon/transformation blocks/mail/java/org/apache/cocoon/mail/transformation
blocks/portal/java/org/apache/cocoon/portal/coplets/basket blocks/portal/java/org/apache/cocoon/portal/transformation
blocks/repository/java/org/apache/cocoon/transformation blocks/session-fw/java/org/apache/cocoon/webapps/session/transformation
java/org/apache/cocoon/transformation
Posted by Sylvain Wallez <sy...@apache.org>.
Andreas Hartmann wrote:
> Sylvain Wallez wrote:
>
>> Andreas Hartmann wrote:
>>
>
> [...]
>
>> Nono: what's explained here is that some parsers may not report the
>> qName if their namespace-prefixes property is false. The
>> ContentHandler.startElement() javadoc clearly states that the
>> namespaceURI *is never null* !
>>
>> Passing null namespace URIs is a well known source or crashes for
>> Xalan :-/
>
>
> Great, thanks for the info!
>
> Does that mean that the empty string is not allowed as a namespace URI?
>
> <foo:bar xmlns:foo=""/>
Aha, good question!
The namespace spec [1] states that the namespace URI "should have the
characteristics of uniqueness and persistence". The empty string doesn't
seem explicitely forbidden, but I'm not sure it has the required
characteristics :-)
Sylvain
[1] http://www.w3.org/TR/REC-xml-names/#ns-decl
--
Sylvain Wallez Anyware Technologies
http://www.apache.org/~sylvain http://www.anyware-tech.com
{ XML, Java, Cocoon, OpenSource }*{ Training, Consulting, Projects }
Re: svn commit: rev 47047 - in cocoon/trunk/src: blocks/databases/java/org/apache/cocoon/transformation
blocks/linkrewriter/java/org/apache/cocoon/transformation blocks/mail/java/org/apache/cocoon/mail/transformation
blocks/portal/java/org/apache/cocoon/portal/coplets/basket blocks/portal/java/org/apache/cocoon/portal/transformation
blocks/repository/java/org/apache/cocoon/transformation blocks/session-fw/java/org/apache/cocoon/webapps/session/transformation
java/org/apache/cocoon/transformation
Posted by Andreas Hartmann <an...@apache.org>.
Sylvain Wallez wrote:
> Andreas Hartmann wrote:
>
[...]
> Nono: what's explained here is that some parsers may not report the
> qName if their namespace-prefixes property is false. The
> ContentHandler.startElement() javadoc clearly states that the
> namespaceURI *is never null* !
>
> Passing null namespace URIs is a well known source or crashes for Xalan :-/
Great, thanks for the info!
Does that mean that the empty string is not allowed as a namespace URI?
<foo:bar xmlns:foo=""/>
-- Andreas
Re: svn commit: rev 47047 - in cocoon/trunk/src: blocks/databases/java/org/apache/cocoon/transformation
blocks/linkrewriter/java/org/apache/cocoon/transformation blocks/mail/java/org/apache/cocoon/mail/transformation
blocks/portal/java/org/apache/cocoon/portal/coplets/basket blocks/portal/java/org/apache/cocoon/portal/transformation
blocks/repository/java/org/apache/cocoon/transformation blocks/session-fw/java/org/apache/cocoon/webapps/session/transformation
java/org/apache/cocoon/transformation
Posted by Sylvain Wallez <sy...@apache.org>.
Andreas Hartmann wrote:
> vgritsenko@apache.org wrote:
>
> [...]
>
>> AbstractSAXTransformer cleanup:
>> Make sure namespaceURI is not null
>
>
>
> http://www.saxproject.org/?selected=namespaces
>
> If I understand this correctly, a null URI should be used
> to denote elements without a namespace (I used to handle
> it like that).
Nono: what's explained here is that some parsers may not report the
qName if their namespace-prefixes property is false. The
ContentHandler.startElement() javadoc clearly states that the
namespaceURI *is never null* !
Passing null namespace URIs is a well known source or crashes for Xalan :-/
Sylvain
[1]
http://www.saxproject.org/apidoc/org/xml/sax/ContentHandler.html#startElement(java.lang.String,%20java.lang.String,%20java.lang.String,%20org.xml.sax.Attributes)
--
Sylvain Wallez Anyware Technologies
http://www.apache.org/~sylvain http://www.anyware-tech.com
{ XML, Java, Cocoon, OpenSource }*{ Training, Consulting, Projects }