hmm, does de.dhw.asim.components.benutzer.LoginObjekt have a method with the
signature:

setGrp(de.dhw.asim.components.benutzer.BenutzerGruppe)?

and does the "this" in the line:

>digester.push(this);

have a method with the signature:

setLoginObjekt(de.dhw.asim.components.benutzer.BenutzerGruppe)?


andre


>  From:  [EMAIL PROTECTED]
> Date:   06/06/2001 02:05 PM
>Hello,
>
>
>it seems that the Digester Class of Struts is a strange thing.
>I take the following XML-Document (in a String):
>
><?xml version="1.0" encoding="UTF-8"?>
><login usr="Benutzername"
>       hilfe="true"
>       rn="Hartmut Bernecker"
>       mail="[EMAIL PROTECTED]"
>       txt="Persoenlicher Begruessungstext des Benutzers"
>       spr="de"
>       med="medium">
>  <grp name="Gruppe 1" txt="Begruessungstext 1"></grp>
>  <grp name="Gruppe 2" txt="Begruessungstext 2"></grp>
></login>
>
>------------------------------------------------------------------
>
>
>Then I want to parse it with a Digester object as follows:
>
>
>------------------------------------------------------------------
>Digester digester = new Digester();
>digester.setDebug(1);
>digester.setValidating(false);
>
>digester.push(this);
>
>digester.addObjectCreate("login/grp",
>"de.dhw.asim.components.benutzer.BenutzerGruppe");
>digester.addSetProperties("login/grp");
>digester.addSetNext("login/grp", "addGrp",
>"de.dhw.asim.components.benutzer.BenutzerGruppe");
>
>digester.addObjectCreate("login",
>"de.dhw.asim.components.benutzer.LoginObjekt");
>digester.addSetProperties("login");
>digester.addSetNext("login", "setLoginObjekt",
>"de.dhw.asim.components.benutzer.LoginObjekt");
>
>try {
> digester.parse(new InputSource(new StringReader(pXml)));
>}
>catch (IOException e){
>  e.printStackTrace();
>}
>catch (SAXException e)
>{
>  e.printStackTrace();
>}
>
>--------------------------------------------------------------------------
>
>
>Then I receive the following Message:
>It seems that the stack can not be controlled.
>Please give me an idea of what happens here and how to do it in the
>right way!!
>
>--------------------------------------------------------------------------
>
>New de.dhw.asim.components.benutzer.LoginObjekt
>
>Set de.dhw.asim.components.benutzer.LoginObjekt properties
>
>New de.dhw.asim.components.benutzer.BenutzerGruppe
>
>Set de.dhw.asim.components.benutzer.BenutzerGruppe properties
>
>Call
>de.dhw.asim.components.benutzer.LoginObjekt.addGrp(de.dhw.asim.components.benutz

>er.BenutzerGruppe@683912)
>
>End event threw exception
>
>java.lang.NoSuchMethodException
>
> at java.lang.Class.getMethod0(Native Method)
>
> at java.lang.Class.getMethod(Class.java:888)
>
> at org.apache.struts.digester.SetNextRule.end(SetNextRule.java:156)
>
> at org.apache.struts.digester.Digester.endElement(Digester.java:409)
>
> at
>org.xml.sax.helpers.XMLReaderAdapter.endElement(XMLReaderAdapter.java:347)
>
> at org.apache.xerces.parsers.SAXParser.endElement(SAXParser.java:1403)
>
> at
>org.apache.xerces.validators.common.XMLValidator.callEndElement(XMLValidator.jav

>a:1436)
>
> at
>org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XMLDoc

>umentScanner.java:1205)
>
> at
>org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.java

>:381)
>
> at org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1035)
>
> at
>org.xml.sax.helpers.XMLReaderAdapter.parse(XMLReaderAdapter.java:223)
>
> at javax.xml.parsers.SAXParser.parse(SAXParser.java:345)
>
> at org.apache.struts.digester.Digester.parse(Digester.java:738)
>
> at
>de.dhw.asim.components.benutzer.Xml2Object.getUserObjekt(Xml2Object.java:49)
>
> at de.dhw.asim.components.benutzer.Test.main(Test.java:11)
>
>java.lang.NoSuchMethodException
>
> at org.apache.struts.digester.Digester.endElement(Digester.java:412)
>
> at
>org.xml.sax.helpers.XMLReaderAdapter.endElement(XMLReaderAdapter.java:347)
>
> at org.apache.xerces.parsers.SAXParser.endElement(SAXParser.java:1403)
>
> at
>org.apache.xerces.validators.common.XMLValidator.callEndElement(XMLValidator.jav

>a:1436)
>
> at
>org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XMLDoc

>umentScanner.java:1205)
>
> at
>org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.java

>:381)
>
> at org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1035)
>
> at
>org.xml.sax.helpers.XMLReaderAdapter.parse(XMLReaderAdapter.java:223)
>
>--------------------------------------------------------------------------
>
>
>Any help is very appreciated!
>
>Hartmut
>
>


Reply via email to