db-torque-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Thomas Fox (JIRA)" <j...@apache.org>
Subject [jira] [Closed] (TORQUE-107) calling getRelatedObjects(Criteria) can result in NullPointerException if the collection has not be initialized (with a Criteria)
Date Mon, 24 Sep 2012 07:08:13 GMT

     [ https://issues.apache.org/jira/browse/TORQUE-107?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Thomas Fox closed TORQUE-107.
-----------------------------

    
> calling getRelatedObjects(Criteria) can result in NullPointerException if the collection
has not be initialized (with a Criteria)
> ---------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: TORQUE-107
>                 URL: https://issues.apache.org/jira/browse/TORQUE-107
>             Project: Torque
>          Issue Type: Bug
>          Components: Generator
>    Affects Versions: 3.3-RC1
>         Environment: RHEL 5, Java 6, Oracle 10g
>            Reporter: Brendan Miller
>            Assignee: Thomas Fox
>            Priority: Minor
>             Fix For: 4.0-beta1
>
>
> The Object.vm template and generator produce object classes with
>    public List<SomeClass> getSomeClasss(Criteria criteria) throws TorqueException
> If torque.objectIsCaching is set, this method uses a "last used Criteria" comparison
to determine whether or not to re-fetch the Collection of <SomeClass>.  The way the
template (Object.vm) is written, we wind up with
>    if (!lastSomeClassCriteria.equals(criteria))
>    ...
> which can throw NullPointerException if this is the first time this method is called
(lastSomeClassCriteria will be null).
> This could be fixed by changing the comparison to
>    if (!criteria.equals(last${relCol}Criteria))
> or
>    if (last${relCol}Criteria == null || !last${relCol}Criteria.equals(criteria))
> Granted, there are other ways to achieve these results (create the appropriate Criteria
and call SomeClassPeer.doSelect(Criteria)), but the "getRelatedObjects(Criteria)" method is
a handy abstraction that is already generated for each class.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: torque-dev-unsubscribe@db.apache.org
For additional commands, e-mail: torque-dev-help@db.apache.org


Mime
View raw message