Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Eclipse Node.getTextContent() in Java 1.6.0_20

I am facing trouble with Node.getTextContent() of org.w3c.dom. I have following code block:

String name = document.getElementsByTagName("name").item(0).getTextContent(); 

And eclipse giving me The method getTextContent() is undefined for the type Node. What is the problem I don't understand.

Thanks and regards.


Edit:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>FBApp</groupId>
    <artifactId>FBApp</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>war</packaging>

    <repositories>
        <repository>
            <id>java.net.maven1</id>
            <name>java.net</name>
            <url>http://download.java.net/maven/1</url>
        </repository>
        <repository>
            <id>maven2-repository.java.net</id>
            <name>Java.net Repository for Maven</name>
            <url>http://download.java.net/maven/2/</url>
        </repository>
    </repositories>

    <dependencies>
        <dependency>
            <groupId>javax.faces</groupId>
            <artifactId>jsf-api</artifactId>
            <version>1.2</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>javax.faces</groupId>
            <artifactId>jsf-impl</artifactId>
            <version>1.2</version>
            <type>jar</type>
            <classifier>NIGHTLY_20060227</classifier>
            <scope>compile</scope>
        </dependency>       
        <dependency>
            <groupId>commons-beanutils</groupId>
            <artifactId>commons-beanutils</artifactId>
            <version>1.7.0</version>
            <type>jar</type>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>commons-beanutils</groupId>
            <artifactId>commons-beanutils-bean-collections</artifactId>
            <version>1.7.0</version>
            <type>jar</type>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>commons-beanutils</groupId>
            <artifactId>commons-beanutils-core</artifactId>
            <version>1.7.0</version>
            <type>jar</type>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
            <version>1.3</version>
            <type>jar</type>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>commons-collections</groupId>
            <artifactId>commons-collections</artifactId>
            <version>3.1</version>
            <type>jar</type>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>commons-digester</groupId>
            <artifactId>commons-digester</artifactId>
            <version>1.7</version>
            <type>jar</type>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>commons-el</groupId>
            <artifactId>commons-el</artifactId>
            <version>1.0</version>
            <type>jar</type>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>commons-fileupload</groupId>
            <artifactId>commons-fileupload</artifactId>
            <version>1.0</version>
            <type>jar</type>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>commons-lang</groupId>
            <artifactId>commons-lang</artifactId>
            <version>2.2</version>
            <type>jar</type>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>1.1.1</version>
            <type>jar</type>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>commons-validator</groupId>
            <artifactId>commons-validator</artifactId>
            <version>1.1.4</version>
            <type>jar</type>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>oro</groupId>
            <artifactId>oro</artifactId>
            <version>2.0.8</version>
            <type>jar</type>
            <scope>compile</scope>
        </dependency>

        <dependency>
            <groupId>com.google.code.facebookapi</groupId>
            <artifactId>facebook-java-api</artifactId>
            <version>3.0.2</version>
            <type>jar</type>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>com.google.code.facebookapi</groupId>
            <artifactId>facebook-java-api-annotation-processor</artifactId>
            <version>3.0.2</version>
            <type>jar</type>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>com.google.code.facebookapi</groupId>
            <artifactId>facebook-java-api-schema</artifactId>
            <version>3.0.2</version>
            <type>jar</type>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>1.4.2</version>
            <scope>runtime</scope>
        </dependency> 
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>jcl104-over-slf4j</artifactId>
            <version>1.4.2</version>
            <scope>runtime</scope>
        </dependency>        
    </dependencies>
</project>

This is the pom.xml and the commons-digester needs xml-apis-1.0b2 which contains org.w3c.dom. I think this is a dependency problem.

like image 562
Tapas Bose Avatar asked Jul 24 '11 17:07

Tapas Bose


3 Answers

You need to go to Properties for the project in eclipse. Then select "Java Build Path" and tab "Order and Export". Here you can arrange the order of dependencies. Ensure that your JRE is higher up then Maven Dependencies.

like image 187
Jakub Nørløv Iwanczuk Avatar answered Oct 12 '22 13:10

Jakub Nørløv Iwanczuk


Try using:

document.getElementsByTagName("name").item(0).getFirstChild().getNodeValue();

AFAIK It's "safer" way than getTextContent() in some cases.

like image 39
Grzegorz Szpetkowski Avatar answered Oct 12 '22 14:10

Grzegorz Szpetkowski


I know that is an older post, but for anyone who reached this I had a similar problem and fixed it using the steps indicated in:

http://mergetag.com/the-method-gettextcontent-is-undefined-for-the-type-node/

Namely, org.w3c.dom.Node.getTextContent() is only available as of Java 1.5 but also note the declarations of Node. The xml-apis-1.0.b2.jar is the problematic one. Go into the project Properties > Java Build Path > Order and Export tab, and move xml-apis-1.0.b2.jar to the top.

like image 31
Paco Avatar answered Oct 12 '22 12:10

Paco