[jdom-interest] JDom and Java5

Rolf Lear jdom at tuis.net
Fri Feb 22 07:44:24 PST 2008


Hi Mattias.

I have checked and things appear to be in order. I have calcualted an 
MD5 sum on the jar:

2ce32b04f460bf457b3b2724ed5c71ba  jdom.jar

I wonder if there is a cached file in a proxy somewhere..... I should perhaps start versioning things..... I'll do that next time.

Just in case, I have created a symbolic link, and this should avoid proxy's for the moment:

http://git.tuis.net/jdom/jdom.b2.jar

md5 sum:

http://git.tuis.net/jdom/jdom.jar.md5sum

I have taken your example code and built a simple main() method that tests it, and it works fine with the web-site's jar file in the classpath.

Rolf



Mattias Jiderhamn wrote:
> Is the JAR at http://git.tuis.net/jdom/jdom.jar really updated...? I 
> get the same result for both cases.
>
> Regarding List<?> I believe that List = List<?> = List<? extends 
> java.lang.Object>.
>
> Hopefully you should be able to use this code as the basis for a test 
> case:
>
>      TransformerFactory transformerFactory = 
> TransformerFactory.newInstance();
>      StreamSource streamSource = new StreamSource(new StringReader(
>          "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\n" +
>          "<xsl:stylesheet version=\"1.0\" 
> xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\">\n" +
>          "  <xsl:template match=\"/\">\n" +
>          "    <foo>" +
>          "<bar myAttribute=\"myValue\" />" +
>          "<ns:bar xmlns:ns=\"http://foo/bar\" myAttribute=\"myValue\" 
> ns:attribute2=\"prefixed\" />" +
>          "</foo>\n" +
>          "  </xsl:template>\n" +
>          "</xsl:stylesheet>"));
>      Transformer transformer = 
> transformerFactory.newTransformer(streamSource);
>
>      JDOMSource source = new JDOMSource(new org.jdom.Document(new 
> Element("foo")));
>      JDOMResult result = new JDOMResult();
>      transformer.transform(source, result);
>
>
> /Mattias
>
>
> Rolf Lear wrote (2008-02-22 15:28):
>> Hi Mattias
>>
>> Thanks for the feedback.
>>
>> The XSLT issue is a bug I introduced with the port. Previously there 
>> was a single inner class of JDOMSource that could deal with either 
>> Document or Content Lists. With the port I created two inner classes, 
>> one for Documents only, and the second for List<Content> only. I 
>> introduced a bug in the process. Easy fix (just poor testing - I 
>> should introduce a test in jdom-test for the XSLT stuff - can you put 
>> together a simple test case of the bug?).
>>
>> The second issue is also cool. The XPath code is implemented by the 
>> jaxen library which is not (yet) generified. As a consequence, I 
>> hacked the calles to Jaxen to get List<Object>. By removing the hacks 
>> and providing List<?> as output it is actually simpler. I am not sure 
>> if you were anticipating just plain List as output instead of 
>> List<?>, is there a difference?
>>
>> I have updated the code repo, jar, apidocs, and website, etc.
>>
>> Thanks
>>
>> Rolf
>>
>> Mattias Jiderhamn wrote:
>>> This is good news!
>>> At least a first step towards an official Java5 JDOM version.
>>>
>>> I downloaded your JAR and put it in my dev environment. Here are a 
>>> few problems I ran into (which I haven't had time to analyze myself):
>>>
>>> When trying to do XSLT from a JDOMSource to a JDOMResult I got this
>>> org.xml.sax.SAXNotSupportedException: Only JDOM Documents are 
>>> supported as input
>>>    at 
>>> org.jdom.transform.JDOMSource$DocumentReader.parse(JDOMSource.java:580)
>>>    at 
>>> com.caucho.xsl.TransformerImpl.parseDocument(TransformerImpl.java:536)
>>>    at 
>>> com.caucho.xsl.TransformerImpl.transform(TransformerImpl.java:270)
>>>    at 
>>> se.exder.servlet.XslTransformer.transformToDocument(XslTransformer.java:159) 
>>>
>>>   ...
>>>
>>> XPath.selectNodes() now returns a List<Object> rather than an 
>>> "untyped" List. I would be preferrable if it would still return a 
>>> plain List which could be cast to a List<Element> if you know only 
>>> Elements will be returned.
>>>
>>> /Mattias Jiderhamn
>>>
>>>
>>> Rolf Lear wrote (2008-02-21 16:28):
>>>> Hi All.
>>>>
>>
>>
>




More information about the jdom-interest mailing list