[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: opp bug?



On Sat, 09 Dec 2000, Andreas Monitzer wrote:
> Hi!
> 
> I'm trying to create a rather big project (a newsreader) using ozone. 
Wow, great! Do you have a link for us where we may read more about your project?

Also, Andy, ozone doesn't force you to use the DxLib collection classes. They
should work fine (ozone is build using them) but java2 collections are more
future proof. I will maintain DxLib just as long as I need it for the ozone
core.

> But I've encountered something I think classifies as a (serious) bug.
> I'm using the following code in a database object implementation (m_ngGroups.getGroups() returns a org.ozoneDB.DxLib.DxHashMap):
> 
> 	public Collection getGroups() throws Exception {
>             return m_ngGroups.getGroups().internalHashtable().values();
> 	}
> 
> The proxy that is generated looks like this:
> 
>    public java.util.Collection getGroups () throws java.lang.Exception {
>       try {
>          Object target = link.fetch (this, Lock.LEVEL_WRITE);
>          if (target != null) {
>             return (java.util.Collection)ResultConverter.substituteOzoneCompatibles (((bbnet.communication.NewsServerImpl)target).getGroups());
>             }
>          else {
>             Object[] args = {};
>             Object result = link.invoke (this, 7, args, Lock.LEVEL_WRITE);
>             return (java.util.Collection)result;
>             }
>          }
>       catch (java.lang.Exception e) {
>          e.fillInStackTrace();
>          throw e;
>          }
>       }
> 
> But the first "return"-line is wrong. '.internalHashtable().values()' is missing, so the return type isn't java.util.Collection and a ClassCastException is raised.
> It's easy to work around this problem by by using a local variable, but I've encountered the same problem at another piece of code and can't find the part that opp doesn't like.

The generated code is okay. What is the actual type that is returned and that
is causing the exception?

> 
> Either way, I'm very impressed about this database, keep up the good work!
:)


Falko
-- 
______________________________________________________________________
Falko Braeutigam                              mailto:falko@smb-tec.com
SMB GmbH                                        http://www.smb-tec.com