Bugs item #1847907, was opened at 2007-12-10 14:42
Message generated for change (Comment added) made by rjamesd
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=116035&aid=1847907&group_id=16035

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: None
Group: None
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Robert (rjamesd)
Assigned to: Nobody/Anonymous (nobody)
Summary: classes in org.dom4j.dom package do not fully implement

Initial Comment:
The classes defined in org.dom4j.dom package do not fully implement their 
parent superclasses and/or the interfaces they claim to implement.

I'm sure they do - but I've missed something in my build - please advise.

I've downloaded the dom4j source dom4j-1.6.1.zip extracted the contents and 
imported into my project in Eclipse.

Into Eclipse I've imported all the code from: dom4j-1.6.1\src\java\org\dom4j

And into Eclipse I've imported all the .jar libraries from:
dom4j-1.6.1\lib

But I get 147 errors about 'must implement the abstract method' (see example 
below)

If I use the pre-compile byte code version dom4j-1.6.1.jar this works with my 
project. So I know that you can build successfully but I need to know what I've 
missed.


Multiple markers at this line
        - The type DOMAttribute must implement the inherited abstract method 
         Node.isDefaultNamespace(String)
        - The type DOMAttribute must implement the inherited abstract method 
         Attr.getSchemaTypeInfo()
        - The serializable class DOMAttribute does not declare a static final 
serialVersionUID field of 
         type long
        - The type DOMAttribute must implement the inherited abstract method 
         Node.getFeature(String, String)
        - The type DOMAttribute must implement the inherited abstract method 
         Node.isEqualNode(Node)
        - The type DOMAttribute must implement the inherited abstract method 
         Node.compareDocumentPosition(Node)
        - The type DOMAttribute must implement the inherited abstract method 
         Node.getUserData(String)
        - The type DOMAttribute must implement the inherited abstract method 
         Node.lookupPrefix(String)
        - The type DOMAttribute must implement the inherited abstract method 
         Node.isSameNode(Node)
        - The type DOMAttribute must implement the inherited abstract method 
Attr.isId()
        - The type DOMAttribute must implement the inherited abstract method 
         Node.getTextContent()
        - The type DOMAttribute must implement the inherited abstract method 
         Node.setUserData(String, Object, UserDataHandler)
        - The type DOMAttribute must implement the inherited abstract method 
         Node.lookupNamespaceURI(String)
        - The type DOMAttribute must implement the inherited abstract method 
         Node.setTextContent(String)
        - The type DOMAttribute must implement the inherited abstract method 
Node.getBaseURI()

----------------------------------------------------------------------

>Comment By: Robert (rjamesd)
Date: 2007-12-11 15:40

Message:
Logged In: YES 
user_id=1340913
Originator: YES

Thankyou. 

Doesn't give me too much confidence in Dom4J as a current, maintained tool
though.

----------------------------------------------------------------------

Comment By: Filip Jirsák (filipjirsak)
Date: 2007-12-10 14:55

Message:
Logged In: YES 
user_id=1175071
Originator: NO

The dom4j classes truly dont't implement fully their parents. It is
because there was chenge in interfaces between Java 1.4 and Java 5 (Java
1.4 supprots DOM Level 2, Java 5 supports DOM Level 3 as far as I know). I
dont't know why Sun decided to expand existong interfaces instead of
inventing new one. But change in core interfaces is fact we must take into
account.

If you want to compile dom4j against Java 5 or Java 6 runtime library, you
can use this patch:
https://sourceforge.net/tracker/index.php?func=detail&aid=1175429&group_id=16035&atid=316035
. It appends dummy methods into dom4j classes, so they implements new
interfaces feigned.

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=116035&aid=1847907&group_id=16035

-------------------------------------------------------------------------
SF.Net email is sponsored by: 
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
dom4j-dev mailing list
dom4j-dev@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dom4j-dev

Reply via email to