inner class

View: New views
7 Messages — Rating Filter:   Alert me  

inner class

by CarloV :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I tried to use an inner class in a resultMap.

If i use the full name like it.scscomputers.storpa.model.Prova.AzioneEsito i've got a ClassNotFoundExcemption.

Then as reported here http://www.mail-archive.com/user-java@ibatis.apache.org/msg02492.html
i used the '$' instead of '.'.

But i've got another exception: JavaBeansDataExchange could not instantiate result class.

What's going wrong?

Making AzioneEsito (the inner class) a normal class iBATIS work well.

Thanks for your attention
Carlo

Re: inner class

by Larry Meadors :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Is the inner class static?

Larry


On Tue, Jul 8, 2008 at 7:08 AM, CarloV
<carlo.verdecchia@...> wrote:

>
> I tried to use an inner class in a resultMap.
>
> If i use the full name like it.scscomputers.storpa.model.Prova.AzioneEsito
> i've got a ClassNotFoundExcemption.
>
> Then as reported here
> http://www.mail-archive.com/user-java@.../msg02492.html
> i used the '$' instead of '.'.
>
> But i've got another exception: JavaBeansDataExchange could not instantiate
> result class.
>
> What's going wrong?
>
> Making AzioneEsito (the inner class) a normal class iBATIS work well.
>
> Thanks for your attention
> Carlo
> --
> View this message in context: http://www.nabble.com/inner-class-tp18338841p18338841.html
> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
>
>

Re: inner class

by CarloV :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi Larry
i've read your book "iBATIS in action", great book for a great tool!

No. This is the inner class's source code that i've extracted from Prova and put on its own java file.

public class FlagNormalita {

        // Flag di normalità da controllare
        private String flag = null;

        // Operazione da eseguire per questo flag
        private OpFlag flagOp = OpFlag.NESSUNA;

        // Codice esito codificato da utilizzare (la tabella è quella abbinata alla prova).
        private String codEsito = null;

        /**
         * @return Flag di normalità da controllare
         */
        public String getFlag() {
                if (flag == null) {
                        flag = new String();
                }
                return flag;
        }

        /**
         * @param flag Flag di normalità da controllare
         */
        public void setFlag(String flag) {
                this.flag = flag;
        }

        /**
         * @return Operazione da eseguire per questo flag
         */
        public OpFlag getFlagOp() {
                return flagOp;
        }

        /**
         * @param flagOp Operazione da eseguire per questo flag
         */
        public void setFlagOp(OpFlag flagOp) {
                this.flagOp = flagOp;
        }

        /**
         * @return Codice esito codificato da utilizzare (la tabella è quella abbinata alla prova).
         */
        public String getCodEsito() {
                if (codEsito == null) {
                        codEsito = new String();
                }
                return codEsito;
        }

        /**
         * @param codEsito Codice esito codificato da utilizzare (la tabella è quella abbinata alla prova).
         */
        public void setCodEsito(String codEsito) {
                this.codEsito = codEsito;
        }
}
Larry Meadors wrote:
Is the inner class static?

Larry


On Tue, Jul 8, 2008 at 7:08 AM, CarloV
<carlo.verdecchia@scs-computers.com> wrote:
>
> I tried to use an inner class in a resultMap.
>
> If i use the full name like it.scscomputers.storpa.model.Prova.AzioneEsito
> i've got a ClassNotFoundExcemption.
>
> Then as reported here
> http://www.mail-archive.com/user-java@ibatis.apache.org/msg02492.html
> i used the '$' instead of '.'.
>
> But i've got another exception: JavaBeansDataExchange could not instantiate
> result class.
>
> What's going wrong?
>
> Making AzioneEsito (the inner class) a normal class iBATIS work well.
>
> Thanks for your attention
> Carlo
> --
> View this message in context: http://www.nabble.com/inner-class-tp18338841p18338841.html
> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
>
>

Re: inner class

by Larry Meadors :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Cool, glad you liked the book. :)

Try making it static - I think that will work if you refer to the
class as OuterName$InnerName.

Larry


PS: Are those Italian names?


On Tue, Jul 8, 2008 at 8:29 AM, CarloV
<carlo.verdecchia@...> wrote:

>
> Hi Larry
> i've read your book "iBATIS in action", great book for a great tool!
>
> No. This is the inner class's source code that i've extracted from Prova and
> put on its own java file.
>
> public class FlagNormalita {
>
>        // Flag di normalità da controllare
>        private String flag = null;
>
>        // Operazione da eseguire per questo flag
>        private OpFlag flagOp = OpFlag.NESSUNA;
>
>        // Codice esito codificato da utilizzare (la tabella è quella abbinata alla
> prova).
>        private String codEsito = null;
>
>        /**
>         * @return Flag di normalità da controllare
>         */
>        public String getFlag() {
>                if (flag == null) {
>                        flag = new String();
>                }
>                return flag;
>        }
>
>        /**
>         * @param flag Flag di normalità da controllare
>         */
>        public void setFlag(String flag) {
>                this.flag = flag;
>        }
>
>        /**
>         * @return Operazione da eseguire per questo flag
>         */
>        public OpFlag getFlagOp() {
>                return flagOp;
>        }
>
>        /**
>         * @param flagOp Operazione da eseguire per questo flag
>         */
>        public void setFlagOp(OpFlag flagOp) {
>                this.flagOp = flagOp;
>        }
>
>        /**
>         * @return Codice esito codificato da utilizzare (la tabella è quella
> abbinata alla prova).
>         */
>        public String getCodEsito() {
>                if (codEsito == null) {
>                        codEsito = new String();
>                }
>                return codEsito;
>        }
>
>        /**
>         * @param codEsito Codice esito codificato da utilizzare (la tabella è
> quella abbinata alla prova).
>         */
>        public void setCodEsito(String codEsito) {
>                this.codEsito = codEsito;
>        }
> }
>
> Larry Meadors wrote:
>>
>> Is the inner class static?
>>
>> Larry
>>
>>
>> On Tue, Jul 8, 2008 at 7:08 AM, CarloV
>> <carlo.verdecchia@...> wrote:
>>>
>>> I tried to use an inner class in a resultMap.
>>>
>>> If i use the full name like
>>> it.scscomputers.storpa.model.Prova.AzioneEsito
>>> i've got a ClassNotFoundExcemption.
>>>
>>> Then as reported here
>>> http://www.mail-archive.com/user-java@.../msg02492.html
>>> i used the '$' instead of '.'.
>>>
>>> But i've got another exception: JavaBeansDataExchange could not
>>> instantiate
>>> result class.
>>>
>>> What's going wrong?
>>>
>>> Making AzioneEsito (the inner class) a normal class iBATIS work well.
>>>
>>> Thanks for your attention
>>> Carlo
>>> --
>>> View this message in context:
>>> http://www.nabble.com/inner-class-tp18338841p18338841.html
>>> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
>>>
>>>
>>
>>
>
> --
> View this message in context: http://www.nabble.com/inner-class-tp18338841p18340556.html
> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
>
>

Re: inner class

by CarloV :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Yes, they are italian names.

Thanks, i will try, even if this could be a serious problem in cases where i've no control about the source classes..

This problem could be related to the fact tha the source code is in WEB-INF/src while .class files are in WEB-INF/classes (it's a tomcat project)?
The Exception raised is strange.....it seams it fiends the class but it's not able to instantiate it.

Larry Meadors wrote:
Cool, glad you liked the book. :)

Try making it static - I think that will work if you refer to the
class as OuterName$InnerName.

Larry


PS: Are those Italian names?


On Tue, Jul 8, 2008 at 8:29 AM, CarloV
<carlo.verdecchia@scs-computers.com> wrote:
>
> Hi Larry
> i've read your book "iBATIS in action", great book for a great tool!
>
> No. This is the inner class's source code that i've extracted from Prova and
> put on its own java file.
>
> public class FlagNormalita {
>
>        // Flag di normalità da controllare
>        private String flag = null;
>
>        // Operazione da eseguire per questo flag
>        private OpFlag flagOp = OpFlag.NESSUNA;
>
>        // Codice esito codificato da utilizzare (la tabella è quella abbinata alla
> prova).
>        private String codEsito = null;
>
>        /**
>         * @return Flag di normalità da controllare
>         */
>        public String getFlag() {
>                if (flag == null) {
>                        flag = new String();
>                }
>                return flag;
>        }
>
>        /**
>         * @param flag Flag di normalità da controllare
>         */
>        public void setFlag(String flag) {
>                this.flag = flag;
>        }
>
>        /**
>         * @return Operazione da eseguire per questo flag
>         */
>        public OpFlag getFlagOp() {
>                return flagOp;
>        }
>
>        /**
>         * @param flagOp Operazione da eseguire per questo flag
>         */
>        public void setFlagOp(OpFlag flagOp) {
>                this.flagOp = flagOp;
>        }
>
>        /**
>         * @return Codice esito codificato da utilizzare (la tabella è quella
> abbinata alla prova).
>         */
>        public String getCodEsito() {
>                if (codEsito == null) {
>                        codEsito = new String();
>                }
>                return codEsito;
>        }
>
>        /**
>         * @param codEsito Codice esito codificato da utilizzare (la tabella è
> quella abbinata alla prova).
>         */
>        public void setCodEsito(String codEsito) {
>                this.codEsito = codEsito;
>        }
> }
>
> Larry Meadors wrote:
>>
>> Is the inner class static?
>>
>> Larry
>>
>>
>> On Tue, Jul 8, 2008 at 7:08 AM, CarloV
>> <carlo.verdecchia@scs-computers.com> wrote:
>>>
>>> I tried to use an inner class in a resultMap.
>>>
>>> If i use the full name like
>>> it.scscomputers.storpa.model.Prova.AzioneEsito
>>> i've got a ClassNotFoundExcemption.
>>>
>>> Then as reported here
>>> http://www.mail-archive.com/user-java@ibatis.apache.org/msg02492.html
>>> i used the '$' instead of '.'.
>>>
>>> But i've got another exception: JavaBeansDataExchange could not
>>> instantiate
>>> result class.
>>>
>>> What's going wrong?
>>>
>>> Making AzioneEsito (the inner class) a normal class iBATIS work well.
>>>
>>> Thanks for your attention
>>> Carlo
>>> --
>>> View this message in context:
>>> http://www.nabble.com/inner-class-tp18338841p18338841.html
>>> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
>>>
>>>
>>
>>
>
> --
> View this message in context: http://www.nabble.com/inner-class-tp18338841p18340556.html
> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
>
>

Re: inner class

by Gwyn :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

If it's a non-static inner class, then it can only be instantiated via a member of the containing class - See http://java.sun.com/docs/books/tutorial/java/javaOO/nested.html, for instance - Nothing to do with where the source is...

/Gwyn

On Tue, Jul 8, 2008 at 3:48 PM, CarloV <carlo.verdecchia@...> wrote:

Yes, they are italian names.

Thanks, i will try, even if this could be a serious problem in cases where
i've no control about the source classes..

This problem could be related to the fact tha the source code is in
WEB-INF/src while .class files are in WEB-INF/classes (it's a tomcat
project)?
The Exception raised is strange.....it seams it fiends the class but it's
not able to instantiate it.


Larry Meadors wrote:
>
> Cool, glad you liked the book. :)
>
> Try making it static - I think that will work if you refer to the
> class as OuterName$InnerName.
>
> Larry
>
>
> PS: Are those Italian names?
>
>
> On Tue, Jul 8, 2008 at 8:29 AM, CarloV
> <carlo.verdecchia@...> wrote:
>>
>> Hi Larry
>> i've read your book "iBATIS in action", great book for a great tool!
>>
>> No. This is the inner class's source code that i've extracted from Prova
>> and
>> put on its own java file.
>>
>> public class FlagNormalita {
>>
>>        // Flag di normalità da controllare
>>        private String flag = null;
>>
>>        // Operazione da eseguire per questo flag
>>        private OpFlag flagOp = OpFlag.NESSUNA;
>>
>>        // Codice esito codificato da utilizzare (la tabella è quella
>> abbinata alla
>> prova).
>>        private String codEsito = null;
>>
>>        /**
>>         * @return Flag di normalità da controllare
>>         */
>>        public String getFlag() {
>>                if (flag == null) {
>>                        flag = new String();
>>                }
>>                return flag;
>>        }
>>
>>        /**
>>         * @param flag Flag di normalità da controllare
>>         */
>>        public void setFlag(String flag) {
>>                this.flag = flag;
>>        }
>>
>>        /**
>>         * @return Operazione da eseguire per questo flag
>>         */
>>        public OpFlag getFlagOp() {
>>                return flagOp;
>>        }
>>
>>        /**
>>         * @param flagOp Operazione da eseguire per questo flag
>>         */
>>        public void setFlagOp(OpFlag flagOp) {
>>                this.flagOp = flagOp;
>>        }
>>
>>        /**
>>         * @return Codice esito codificato da utilizzare (la tabella è
>> quella
>> abbinata alla prova).
>>         */
>>        public String getCodEsito() {
>>                if (codEsito == null) {
>>                        codEsito = new String();
>>                }
>>                return codEsito;
>>        }
>>
>>        /**
>>         * @param codEsito Codice esito codificato da utilizzare (la
>> tabella è
>> quella abbinata alla prova).
>>         */
>>        public void setCodEsito(String codEsito) {
>>                this.codEsito = codEsito;
>>        }
>> }
>>
>> Larry Meadors wrote:
>>>
>>> Is the inner class static?
>>>
>>> Larry
>>>
>>>
>>> On Tue, Jul 8, 2008 at 7:08 AM, CarloV
>>> <carlo.verdecchia@...> wrote:
>>>>
>>>> I tried to use an inner class in a resultMap.
>>>>
>>>> If i use the full name like
>>>> it.scscomputers.storpa.model.Prova.AzioneEsito
>>>> i've got a ClassNotFoundExcemption.
>>>>
>>>> Then as reported here
>>>> http://www.mail-archive.com/user-java@.../msg02492.html
>>>> i used the '$' instead of '.'.
>>>>
>>>> But i've got another exception: JavaBeansDataExchange could not
>>>> instantiate
>>>> result class.
>>>>
>>>> What's going wrong?
>>>>
>>>> Making AzioneEsito (the inner class) a normal class iBATIS work well.
>>>>
>>>> Thanks for your attention
>>>> Carlo
>>>> --
>>>> View this message in context:
>>>> http://www.nabble.com/inner-class-tp18338841p18338841.html
>>>> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
>>>>
>>>>
>>>
>>>
>>
>> --
>> View this message in context:
>> http://www.nabble.com/inner-class-tp18338841p18340556.html
>> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
>>
>>
>
>

--
View this message in context: http://www.nabble.com/inner-class-tp18338841p18340906.html
Sent from the iBATIS - User - Java mailing list archive at Nabble.com.



Re: inner class

by CarloV :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Thanks,
as a java programmer i should had know this but sometimes this fundamentals are forgotten..

Usig static nested classes and the '$' intead of '.' iBATIS work.

With inner classes iBATIS don't work but this is not a problem because inner classes should be hidden to the outside world.

Gwyn wrote:
If it's a non-static inner class, then it can only be instantiated via a
member of the containing class - See
http://java.sun.com/docs/books/tutorial/java/javaOO/nested.html, for
instance - Nothing to do with where the source is...

/Gwyn

On Tue, Jul 8, 2008 at 3:48 PM, CarloV <carlo.verdecchia@scs-computers.com>
wrote:

>
> Yes, they are italian names.
>
> Thanks, i will try, even if this could be a serious problem in cases where
> i've no control about the source classes..
>
> This problem could be related to the fact tha the source code is in
> WEB-INF/src while .class files are in WEB-INF/classes (it's a tomcat
> project)?
> The Exception raised is strange.....it seams it fiends the class but it's
> not able to instantiate it.
>
>
> Larry Meadors wrote:
> >
> > Cool, glad you liked the book. :)
> >
> > Try making it static - I think that will work if you refer to the
> > class as OuterName$InnerName.
> >
> > Larry
> >
> >
> > PS: Are those Italian names?
> >
> >
> > On Tue, Jul 8, 2008 at 8:29 AM, CarloV
> > <carlo.verdecchia@scs-computers.com> wrote:
> >>
> >> Hi Larry
> >> i've read your book "iBATIS in action", great book for a great tool!
> >>
> >> No. This is the inner class's source code that i've extracted from Prova
> >> and
> >> put on its own java file.
> >>
> >> public class FlagNormalita {
> >>
> >>        // Flag di normalità da controllare
> >>        private String flag = null;
> >>
> >>        // Operazione da eseguire per questo flag
> >>        private OpFlag flagOp = OpFlag.NESSUNA;
> >>
> >>        // Codice esito codificato da utilizzare (la tabella è quella
> >> abbinata alla
> >> prova).
> >>        private String codEsito = null;
> >>
> >>        /**
> >>         * @return Flag di normalità da controllare
> >>         */
> >>        public String getFlag() {
> >>                if (flag == null) {
> >>                        flag = new String();
> >>                }
> >>                return flag;
> >>        }
> >>
> >>        /**
> >>         * @param flag Flag di normalità da controllare
> >>         */
> >>        public void setFlag(String flag) {
> >>                this.flag = flag;
> >>        }
> >>
> >>        /**
> >>         * @return Operazione da eseguire per questo flag
> >>         */
> >>        public OpFlag getFlagOp() {
> >>                return flagOp;
> >>        }
> >>
> >>        /**
> >>         * @param flagOp Operazione da eseguire per questo flag
> >>         */
> >>        public void setFlagOp(OpFlag flagOp) {
> >>                this.flagOp = flagOp;
> >>        }
> >>
> >>        /**
> >>         * @return Codice esito codificato da utilizzare (la tabella è
> >> quella
> >> abbinata alla prova).
> >>         */
> >>        public String getCodEsito() {
> >>                if (codEsito == null) {
> >>                        codEsito = new String();
> >>                }
> >>                return codEsito;
> >>        }
> >>
> >>        /**
> >>         * @param codEsito Codice esito codificato da utilizzare (la
> >> tabella è
> >> quella abbinata alla prova).
> >>         */
> >>        public void setCodEsito(String codEsito) {
> >>                this.codEsito = codEsito;
> >>        }
> >> }
> >>
> >> Larry Meadors wrote:
> >>>
> >>> Is the inner class static?
> >>>
> >>> Larry
> >>>
> >>>
> >>> On Tue, Jul 8, 2008 at 7:08 AM, CarloV
> >>> <carlo.verdecchia@scs-computers.com> wrote:
> >>>>
> >>>> I tried to use an inner class in a resultMap.
> >>>>
> >>>> If i use the full name like
> >>>> it.scscomputers.storpa.model.Prova.AzioneEsito
> >>>> i've got a ClassNotFoundExcemption.
> >>>>
> >>>> Then as reported here
> >>>> http://www.mail-archive.com/user-java@ibatis.apache.org/msg02492.html
> >>>> i used the '$' instead of '.'.
> >>>>
> >>>> But i've got another exception: JavaBeansDataExchange could not
> >>>> instantiate
> >>>> result class.
> >>>>
> >>>> What's going wrong?
> >>>>
> >>>> Making AzioneEsito (the inner class) a normal class iBATIS work well.
> >>>>
> >>>> Thanks for your attention
> >>>> Carlo
> >>>> --
> >>>> View this message in context:
> >>>> http://www.nabble.com/inner-class-tp18338841p18338841.html
> >>>> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
> >>>>
> >>>>
> >>>
> >>>
> >>
> >> --
> >> View this message in context:
> >> http://www.nabble.com/inner-class-tp18338841p18340556.html
> >> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
> >>
> >>
> >
> >
>
> --
> View this message in context:
> http://www.nabble.com/inner-class-tp18338841p18340906.html
> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
>
>
LightInTheBox - Buy quality products at wholesale price