Re: Re: Problem with implementation of getChildNodes on HTMLFormElement?
Jacob Kjome <[email protected]> Sat, 13 Sep 2003 13:00:54 -0500
| Newsgroups | gmane.comp.java.enhydra.xmlc |
|---|---|
| Message-ID | <[email protected]> |
Ok, I narrowed it down. Try adding "-dom xerces" to the XMLC compilation. You will find that it works fine with or without calling getFirstChild(). I figured this out after printing out all the child node class names and noticed that they were LazyDOM classes (which I knew anyway, but this just reminded me to notice that fact). So, it probably isn't a problem with Xerces, but with LazyDOM. BTW, thanks for the latest simplified testcase, Petr. Jake At 09:10 AM 9/13/2003 -0500, you wrote: >Thanks for you posts Petr and Jacob, > >I searched Bugzilla to no avail regarding getChildNodes. In fact, only three >entires were found in the entire 1.x branch of xerces. > > >--- >Aaron Kardell >Development Manager & Chief Architect of SiPS >Altona Ed, LLC <http://www.altonaed.com/> >[email protected] > > > Subject: Re: Xmlc: Problem with implementation of getChildNodes on > > HTMLFormElement? > > From: Petr Stehlik <[email protected]> > > To: [email protected] > > Date: Fri, 12 Sep 2003 19:06:18 +0200 > > Reply-To: [email protected] > > > > V St, 10. 09. 2003 v 22:53, Jacob Kjome pí¹e: > > > Thanks for the testcase. I have replicated the behavior but, like > you, I'm > > > > > not sure what exactly is causing it. It should definitely be figured > > > out. > > > > I experienced something similar with a function that traverses the DOM > > and returns all nodes that have class with a given name: > > > > public static Vector getByClassName(Node node, String className) { > > Vector elems = new Vector(); > > NodeList children = node.getChildNodes(); > > for (int i=0; i<children.getLength();i++) { > > elems.addAll(getByClassName(children.item(i), className)); > > } > > if (node instanceof HTMLElement) { > > String elemClassName = ((HTMLElement)node).getClassName(); > > if ((elemClassName != null) && > elemClassName.equalsIgnoreCase(className)) > > { > > elems.add((HTMLElement)node); > > } > > } > > return elems; > > } > > > > This works fine on several pages but I also have one page where this > > doesn't work - doesn't return any node eventhough there are several ones > > with the class set. > > > > I never figured out why it doesn't work. I could probably create a > > testcase from the html page and share it as well. > > > > Petr > > > > P.S. Would be nice to fix this issue and release XMLC 2.2.1 that would > > be a drop-in replacement for the XMLC in (at that time probably > > released) Enhydra 5.1 :) Yes I really appreciate the new modular > > structure of Enhydra 5.1 :)) > > > > > > > > > > --__--__-- > > > > Message: 7 > > Date: Fri, 12 Sep 2003 14:03:03 -0500 > > To: [email protected] > > From: Jacob Kjome <[email protected]> > > Subject: Re: Xmlc: HMLObjectImpl#toDocument() issue > > Reply-To: [email protected] > > > > Hi Petr, > > > > At 06:48 PM 9/12/2003 +0200, you wrote: > > >V St, 10. 09. 2003 v 23:14, Jacob Kjome pí¹e: > > > > The HTMLObjectImple#toDocument() method is setting custom > > > > OutpuOptions. Where I thought we had gotten rid of the issue with > > default > > > > removal of HTML Span id's. > > > > > > > I think it should do this... > > > > > > > > public String toDocument() { > > > > // Create formatter if needed (no synchronization necessary) > > > > if (fFormatter == null) { > > > > fFormatter = new > > > > DOMFormatter(DOMFormatter.getDefaultOutputOptions(getDocument())); > > > > } > > > > return fFormatter.toString(this); > > > > } > > > > > > > > Thoughts? Anyone opposed to this? > > > > > >Will this be included in Enhydra 5.1 final? Alfred? Please.. > > > > > >Petr > > > > > >P.S. Wondering if setEnableXHTMLCompatibility() shouldn't be enabled in > > >Enhydra by default as well. > > > > Note that normally one wouldn't use toDocument() anyway. It really isn't > > all that flexible. You'd normally use something like XMLCContext or > > DOMFormatter#write() where you can provide OutputOptions and set any > quirks > > you want. I don't consider this a huge deal like the other issue with the > > NodeList not being populated in some cases. This issue alone wouldn't > > constitute an XMLC-2.2.1 release, IMO. > > > > Jake > > > > > > >_______________________________________________ > > >XMLC mailing list > > >[email protected] > > >http://www.enhydra.org/mailman/listinfo.cgi/xmlc > > > > > > > > --__--__-- > > > > Message: 8 > > Date: Fri, 12 Sep 2003 14:11:05 -0500 > > To: [email protected] > > From: Jacob Kjome <[email protected]> > > Subject: Re: Xmlc: Problem with implementation of getChildNodes on > > HTMLFormElement? > > Reply-To: [email protected] > > > > Hi Petr, > > > > At 07:06 PM 9/12/2003 +0200, you wrote: > > >V St, 10. 09. 2003 v 22:53, Jacob Kjome pí¹e: > > > > Thanks for the testcase. I have replicated the behavior but, like > you, > > > I'm > > > > not sure what exactly is causing it. It should definitely be figured > > > > out. > > > > > >I experienced something similar with a function that traverses the DOM > > >and returns all nodes that have class with a given name: > > > > > >public static Vector getByClassName(Node node, String className) { > > > Vector elems = new Vector(); > > > NodeList children = node.getChildNodes(); > > > for (int i=0; i<children.getLength();i++) { > > > elems.addAll(getByClassName(children.item(i), className)); > > > } > > > if (node instanceof HTMLElement) { > > > String elemClassName = ((HTMLElement)node).getClassName(); > > > if ((elemClassName != null) && > > > elemClassName.equalsIgnoreCase(className)) { > > > elems.add((HTMLElement)node); > > > } > > > } > > > return elems; > > >} > > > > > >This works fine on several pages but I also have one page where this > > >doesn't work - doesn't return any node eventhough there are several ones > > >with the class set. > > > > > >I never figured out why it doesn't work. I could probably create a > > >testcase from the html page and share it as well. > > > > Absolutely. Any testcases that reproduce this issue are welcome. Any > idea > > if the issue happened on a specific type of node? Was it an > > HTMLFormElement which is the issue with the current reported bug? > > > > >Petr > > > > > >P.S. Would be nice to fix this issue and release XMLC 2.2.1 that would > > >be a drop-in replacement for the XMLC in (at that time probably > > >released) Enhydra 5.1 :) Yes I really appreciate the new modular > > >structure of Enhydra 5.1 :)) > > > > A bug fix for this would, IMO, constitute an XMLC-2.2.1 release. Any help > > in figuring it out is welcomed. > > > > Jake > > > > > > > > >_______________________________________________ > > >XMLC mailing list > > >[email protected] > > >http://www.enhydra.org/mailman/listinfo.cgi/xmlc > > > > > > > > --__--__-- > > > > Message: 9 > > Date: Fri, 12 Sep 2003 14:19:08 -0500 > > To: [email protected] > > From: Jacob Kjome <[email protected]> > > Subject: Re: Xmlc: biting the tomcat bullet and xmlc > > Reply-To: [email protected] > > > > At 09:01 AM 9/12/2003 -0600, you wrote: > > >Thanks David... It's fun diving back into xmlc... BTW, my kudos to > whoever > > >wrote the release notes @ > > ./xmlc-2.2/release-notes/xmlc-2-2-release-note.html > > > > I think we all had a hand in this. I added many of the final details, > > clarified a few things, and made it XHTML1.1 compliant before > > release. What, particularly, did you like about it? Just curious. > > > > >I'd like to see these posted as a easily accessible link on > > xmlc.enhydra.org. > > > > I believe you have administrative rights to said site. Can you go ahead > > and put it up there? Or did you mean for us to put it up on the objectweb > > site and provide a publicly available link? > > > > You can go ahead and use this link... > > >http://cvs.forge.objectweb.org/cgi-bin/cvsweb.cgi/~checkout~/xmlc/release/release-notes/xmlc-2-2-release-note.html?rev=1.3&content-type=text/html&cvsroot=xmlc > > > > or, in a more friendly form... > > http://tinyurl.com/n626 > > > > later, > > > > Jake > > > > > > >David > > > > > > > > >David Li wrote: > > > > > >>Hi David, > > >> Check out the samples directory in the XMLC 2.2 distribution. The > > >> sample is done with Tomcat + XMLC. > > >>David > > >> > > >>>Hi all, > > >>>I'm trying to figure out how to develop html pages in > > >>>an xmlc & tomcat environment. Are there any suggested > > >>>tomcat file hierarchies for placing xmlc-ready html > > >>>files and the generated xmlc class files? > > >>> > > >>>With the enhydra tree, it was a cinch to use > > >>>Dreamweaver to evolve the html pages and just build > > >>>the app in place. It was all under > > >>>./presentation/resources. With tomcat, I'm not sure > > >>>how to handle the relative URLs (e.g., how the html > > >>>page references gif images). Do you use the > > >>>urlmapping option to rename the paths from where > > >>>dreamweaver believes the resources are to what tomcat > > >>>wants them? > > >>> > > >>>Hope my question makes some sense. Would love your > > >>>suggestions. > > >>> > > >>>David > > >> > > >>_______________________________________________ > > >>XMLC mailing list > > >>[email protected] > > >>http://www.enhydra.org/mailman/listinfo.cgi/xmlc > > >>. > > > > > > > > >-- > > >David H. Young > > >SAMBA Holdings, Inc. > > >Chief Technology Officer > > >1730 Montaño NW > > >Albuquerque, NM 87107 > > >505.797.2622 x113 > > >http://www.samba.biz > > > > > > > > >_______________________________________________ > > >XMLC mailing list > > >[email protected] > > >http://www.enhydra.org/mailman/listinfo.cgi/xmlc > > > > > > > > --__--__-- > > > > Message: 10 > > Date: Fri, 12 Sep 2003 16:16:04 -0600 > > From: "David H. Young" <[email protected]> > > To: [email protected] > > Subject: Re: Xmlc: biting the tomcat bullet and xmlc > > Reply-To: [email protected] > > > > Hi Jacob... > > > > simple, it's clean and concise about what's new... I thought there was > > one more point: xmlc is no longer dependent on an enhydra environment. > > Was that an earlier version or this one? > > > > It's been so long since I've updated enhydra pages @ enhydra.org I've > > completely forgotten the process. I've pinged Christophe for some > > assistance. > > > > David > > > > Jacob Kjome wrote: > > > > > At 09:01 AM 9/12/2003 -0600, you wrote: > > > > > >> Thanks David... It's fun diving back into xmlc... BTW, my kudos to > > >> whoever wrote the release notes @ > > >> ./xmlc-2.2/release-notes/xmlc-2-2-release-note.html > > > > > > > > > I think we all had a hand in this. I added many of the final details, > > > clarified a few things, and made it XHTML1.1 compliant before release. > > > What, particularly, did you like about it? Just curious. > > > > > >> I'd like to see these posted as a easily accessible link on > > >> xmlc.enhydra.org. > > > > > > > > > I believe you have administrative rights to said site. Can you go ahead > > > and put it up there? Or did you mean for us to put it up on the > > > objectweb site and provide a publicly available link? > > > > > > You can go ahead and use this link... > > > > > >http://cvs.forge.objectweb.org/cgi-bin/cvsweb.cgi/~checkout~/xmlc/release/release-notes/xmlc-2-2-release-note.html?rev=1.3&content-type=text/html&cvsroot=xmlc > > > > > > > > > > > or, in a more friendly form... > > > http://tinyurl.com/n626 > > > > > > later, > > > > > > Jake > > > > > > > > >> David > > >> > > >> > > >> David Li wrote: > > >> > > >>> Hi David, > > >>> Check out the samples directory in the XMLC 2.2 distribution. The > > >>> sample is done with Tomcat + XMLC. > > >>> David > > >>> > > >>>> Hi all, > > >>>> I'm trying to figure out how to develop html pages in > > >>>> an xmlc & tomcat environment. Are there any suggested > > >>>> tomcat file hierarchies for placing xmlc-ready html > > >>>> files and the generated xmlc class files? > > >>>> > > >>>> With the enhydra tree, it was a cinch to use > > >>>> Dreamweaver to evolve the html pages and just build > > >>>> the app in place. It was all under > > >>>> ./presentation/resources. With tomcat, I'm not sure > > >>>> how to handle the relative URLs (e.g., how the html > > >>>> page references gif images). Do you use the > > >>>> urlmapping option to rename the paths from where > > >>>> dreamweaver believes the resources are to what tomcat > > >>>> wants them? > > >>>> > > >>>> Hope my question makes some sense. Would love your > > >>>> suggestions. > > >>>> > > >>>> David > > >>> > > >>> > > >>> _______________________________________________ > > >>> XMLC mailing list > > >>> [email protected] > > >>> http://www.enhydra.org/mailman/listinfo.cgi/xmlc > > >>> . > > >> > > >> > > >> > > >> -- > > >> David H. Young > > >> SAMBA Holdings, Inc. > > >> Chief Technology Officer > > >> 1730 Montaño NW > > >> Albuquerque, NM 87107 > > >> 505.797.2622 x113 > > >> http://www.samba.biz > > >> > > >> > > >> _______________________________________________ > > >> XMLC mailing list > > >> [email protected] > > >> http://www.enhydra.org/mailman/listinfo.cgi/xmlc > > > > > > > > > > > > _______________________________________________ > > > XMLC mailing list > > > [email protected] > > > http://www.enhydra.org/mailman/listinfo.cgi/xmlc > > > > > > . > > > > > > > > > -- > > David H. Young > > SAMBA Holdings, Inc. > > Chief Technology Officer > > 1730 Montaño NW > > Albuquerque, NM 87107 > > 505.797.2622 x113 > > http://www.samba.biz > > > > > > > > --__--__-- > > > > Message: 11 > > Date: Fri, 12 Sep 2003 20:23:30 -0500 > > To: [email protected] > > From: Jacob Kjome <[email protected]> > > Subject: Re: Xmlc: biting the tomcat bullet and xmlc > > Reply-To: [email protected] > > > > At 04:16 PM 9/12/2003 -0600, you wrote: > > >Hi Jacob... > > > > > >simple, it's clean and concise about what's new... > > > > I guess we'll have to stick with that format then :-) > > > > > I thought there was one more point: xmlc is no longer dependent on an > > > enhydra environment. Was that an earlier version or this one? > > > > XMLC-2.1 wasn't dependent on Enhydra. Actually, I'm not quite sure I > > remember now. I made a lot of changes to an earlier version Barracuda > was > > using so that it would work in a Tomcat environment properly, but that was > > more about clashing xerces versions than anything else. Hmmm... I > guess it > > has been a while. Either way, I don't think independence of Enhydra was > > new to XMLC-2.2. > > > > >It's been so long since I've updated enhydra pages @ enhydra.org I've > > >completely forgotten the process. I've pinged Christophe for some > > assistance. > > > > I think Richard Kunze can do this as well, but he might be on vacation or > > something. At least someone can do it. > > > > later, > > > > Jake > > > > >David > > > > > >Jacob Kjome wrote: > > > > > >>At 09:01 AM 9/12/2003 -0600, you wrote: > > >> > > >>>Thanks David... It's fun diving back into xmlc... BTW, my kudos to > > >>>whoever wrote the release notes @ > > >>>./xmlc-2.2/release-notes/xmlc-2-2-release-note.html > > >> > > >>I think we all had a hand in this. I added many of the final details, > > >>clarified a few things, and made it XHTML1.1 compliant before release. > > >>What, particularly, did you like about it? Just curious. > > >> > > >>>I'd like to see these posted as a easily accessible link on > > >>>xmlc.enhydra.org. > > >> > > >>I believe you have administrative rights to said site. Can you go ahead > > >>and put it up there? Or did you mean for us to put it up on the > > >>objectweb site and provide a publicly available link? > > >>You can go ahead and use this link... > > > >>http://cvs.forge.objectweb.org/cgi-bin/cvsweb.cgi/~checkout~/xmlc/releas > e/release-notes/xmlc-2-2-release-note.html?rev=1.3&content-type=text/html&cvsroot=xmlc > > > > >> > > >>or, in a more friendly form... > > >>http://tinyurl.com/n626 > > >>later, > > >>Jake > > >> > > >>>David > > >>> > > >>> > > >>>David Li wrote: > > >>> > > >>>>Hi David, > > >>>> Check out the samples directory in the XMLC 2.2 distribution. The > > >>>> sample is done with Tomcat + XMLC. > > >>>>David > > >>>> > > >>>>>Hi all, > > >>>>>I'm trying to figure out how to develop html pages in > > >>>>>an xmlc & tomcat environment. Are there any suggested > > >>>>>tomcat file hierarchies for placing xmlc-ready html > > >>>>>files and the generated xmlc class files? > > >>>>> > > >>>>>With the enhydra tree, it was a cinch to use > > >>>>>Dreamweaver to evolve the html pages and just build > > >>>>>the app in place. It was all under > > >>>>>./presentation/resources. With tomcat, I'm not sure > > >>>>>how to handle the relative URLs (e.g., how the html > > >>>>>page references gif images). Do you use the > > >>>>>urlmapping option to rename the paths from where > > >>>>>dreamweaver believes the resources are to what tomcat > > >>>>>wants them? > > >>>>> > > >>>>>Hope my question makes some sense. Would love your > > >>>>>suggestions. > > >>>>> > > >>>>>David > > >>>> > > >>>> > > >>>>_______________________________________________ > > >>>>XMLC mailing list > > >>>>[email protected] > > >>>>http://www.enhydra.org/mailman/listinfo.cgi/xmlc > > >>>>. > > >>> > > >>> > > >>> > > >>>-- > > >>>David H. Young > > >>>SAMBA Holdings, Inc. > > >>>Chief Technology Officer > > >>>1730 Montaño NW > > >>>Albuquerque, NM 87107 > > >>>505.797.2622 x113 > > >>>http://www.samba.biz > > >>> > > >>> > > >>>_______________________________________________ > > >>>XMLC mailing list > > >>>[email protected] > > >>>http://www.enhydra.org/mailman/listinfo.cgi/xmlc > > >> > > >>_______________________________________________ > > >>XMLC mailing list > > >>[email protected] > > >>http://www.enhydra.org/mailman/listinfo.cgi/xmlc > > >>. > > > > > > > > >-- > > >David H. Young > > >SAMBA Holdings, Inc. > > >Chief Technology Officer > > >1730 Montaño NW > > >Albuquerque, NM 87107 > > >505.797.2622 x113 > > >http://www.samba.biz > > > > > > > > >_______________________________________________ > > >XMLC mailing list > > >[email protected] > > >http://www.enhydra.org/mailman/listinfo.cgi/xmlc > > > > > > > > --__--__-- > > > > Message: 12 > > Subject: Re: Xmlc: Problem with implementation of getChildNodes on > > HTMLFormElement? > > From: Petr Stehlik <[email protected]> > > To: [email protected] > > Date: Sat, 13 Sep 2003 01:48:09 +0200 > > Reply-To: [email protected] > > > > V Pá, 12. 09. 2003 v 21:11, Jacob Kjome pí¹e: > > > >public static Vector getByClassName(Node node, String className) { > > > >testcase from the html page and share it as well. > > > > > > Absolutely. Any testcases that reproduce this issue are welcome. > > > > OK. Will do on Monday. BTW, note that it happens with Enhydra 5.0's XMLC > > (2.1alpha). > > > > > Any idea if the issue happened on a specific type of node? Was it an > > > HTMLFormElement which is the issue with the current reported bug? > > > > This is the HTML file: > > > > <BODY> > > <CENTER> > > <FONT SIZE=+1> <SPAN ID="pageTitle"> report </SPAN> </FONT> <BR> > > <FORM METHOD="GET" ACTION="Report.html"> > > <TABLE SUMMARY="report console" width="90%" BORDER="1"> > > ... > > > > The starting node was the <BODY> and the nodes I was interested in were > > inside of the <FORM><TABLE>. But the function couldn't get any childrens > > from the FORM, IIRC. > > > > Petr > > > > > > > > > > --__--__-- > > > > Message: 13 > > Subject: Re: Xmlc: HMLObjectImpl#toDocument() issue > > From: Petr Stehlik <[email protected]> > > To: [email protected] > > Date: Sat, 13 Sep 2003 01:37:51 +0200 > > Reply-To: [email protected] > > > > V Pá, 12. 09. 2003 v 21:03, Jacob Kjome pí¹e: > > > Note that normally one wouldn't use toDocument() anyway. > > > > you're right. I was just afraid if it was used in Enhydra (I don't have > > its source code handy so I couldn't check). > > > > Petr > > > > > > > > > > > > --__--__-- > > > > _______________________________________________ > > XMLC mailing list > > [email protected] > > http://www.enhydra.org/mailman/listinfo.cgi/xmlc > > > > > > End of XMLC Digest > > > >_______________________________________________ >XMLC mailing list >[email protected] >http://www.enhydra.org/mailman/listinfo.cgi/xmlc