You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jdo-dev@db.apache.org by Craig L Russell <Cr...@Sun.COM> on 2008/01/28 23:04:53 UTC

Maintenance Review for JSR-243

Hi,

JSR-243 is planning a minor revision according to http://jcp.org/en/procedures/jcp2#4.2.1

The proposed changes are attached for the maintenance review.

Comments should be directed to jdo-comments@sun.com

Thanks,

Craig


Re: Maintenance Review for JSR-243

Posted by Craig L Russell <Cr...@Sun.COM>.
Hi Liz,

30 days should be fine.

Thanks,

Craig

On Jan 31, 2008, at 8:14 PM, Liz M Kiener wrote:

> Hello Craig -
>
> Sorry, I missed your call.  We acknowledge receipt of the MR  
> materials.  You used the correct email alias on 29 Jan with your  
> submission to spec-submit@jcp.org.
>
> Would you please provide the desired length for the review (30, 45,  
> 60 or 90 days).
>
> Thanks
> Liz :-)
>
>
>
> Craig L Russell a écrit :
>>
>> Hi,
>>
>> JSR-243 is planning a minor revision according to http://jcp.org/en/procedures/jcp2#4.2.1
>>
>> The proposed changes are attached for the maintenance review.
>>
>> Comments should be directed to jdo-comments@sun.com
>>
>> Thanks,
>>
>> Craig
>>
>>
>> Jdo Wiki
>> Search:
>> CraigRussell
>> UserPreferences
>> KeySigning
>> KeysAtApache
>> CurrentDevelopment
>> FrontPage
>> FrontPage
>> RecentChanges
>> FindPage
>> HelpContents
>> ChangeLog
>> Edit
>> Show Changes
>> Get Info
>> Subscribe
>> More Actions:
>> ChangeLog
>>
>> This is the list of changes for maintenance of JSR-243.
>>
>> PROPOSED
>>
>> Add methods to PersistenceManager and PersistenceManagerFactory to  
>> allow a user to get the current time and date from the server.  
>> Allow the PersistenceManagerFactory to be configured statically  
>> with TimeZoneand Locale in case the information is not available  
>> from the server itself.
>>
>> Clarify 18.15.8 that the ordering field should be managed by the  
>> implementation, not by the user.
>>
>> Remove the "serialized" attribute from 18.15.8 since the ordering  
>> column is not serialized.
>>
>> Add property CopyOnAttach to PersistenceManager and  
>> PersistenceManagerFactory. With the property set to true, makes a  
>> copy of the detached instance on makePersistent. If the property is  
>> set to false, it attaches the detached instance itself.
>>
>> Add ObjectState enum and convenience methods in JDOHelper to return  
>> the ObjectState of an instance.
>>
>> Add method void evictAll (boolean subclasses, Class pcClass) to  
>> PersistenceManager. This allows to evict instances for a particluar  
>> class. Change signatures of DataStoreCache methods pinAll,  
>> unpinAll, and evictAll from (Class pcClass, boolean subclasses) to  
>> (boolean subclasses, Class pcClass) to accommodate adding methods  
>> that change the pcClass parameter from Class to Class....
>>
>> Clarify the behavior of method evictAll if the parameter is a  
>> persistent interface. This comment also applies to the  
>> DataStoreCache interface method void evictAll (Class pcClass,  
>> boolean subclasses).
>>
>> Require that the implementation not hold a strong reference to  
>> flushed dirty instances, allowing these instances to be garbage  
>> collected.
>>
>> Change signatures of PersistenceManager methods that take Object[]  
>> as an argument to take Object... as an argument. These signatures  
>> are source and binary compatible with existing programs. Where  
>> theObject... parameter would not be the last parameter, deprecate  
>> the method and reorder the parameters so Object... is last.
>>
>> ACCEPTED
>>
>> In 5.4.1, Compound Identity should be updated to reflect that for  
>> key fields of reference types, the type of the key field is the  
>> reference type in the class but the oid of the reference type in  
>> the oid class.
>>
>> In Table 2: State Transitions, the transition for a transient-dirty  
>> instance during commit with DetachAllOnCommit = true should be to  
>> transient-clean. Also, state changes need to be added for detach  
>> methods and serialization.
>>
>> In 5.5.8 and 5.5.9, detachCopy should be removed from the list of  
>> methods that throw exceptions if applied to detached-clean or  
>> detached-dirty instances.
>>
>> In 6.4.3, change "Portable JDO applications must not depend on  
>> whether instances of these classes are treated as SCOs or FCOs. "  
>> to "Portable JDO applications must not depend on SCO or FCO  
>> uniquing behavior, nor on the storage mechanism in the datastore.  
>> Portable applications may use the same instance of these classes as  
>> field values in any persistence-capable class instance."
>>
>> In section 7.5, change "If the class is abstract, null is  
>> returned." to "If the class is abstract, JDOFatalInternalException  
>> is thrown".
>>
>> In section 7.5, add public byte fetchByteField(int fieldNumber); to  
>> ObjectIdFieldSupplier.
>>
>> In section 7.5, add public byte storeByteField(int fieldNumber,  
>> byte value); to ObjectIdFieldConsumer.
>>
>> In Chapter 8, add after class JDOHelper {
>>
>> public JDOHelper();
>>
>> For some usage patterns, an instance of JDOHelper on which to  
>> invoke methods is preferable to the use of static methods. For this  
>> purpose, a public constructor is provided.
>>
>> In Chapter 8, add a convenience method that returns a  
>> PersistenceManager proxy that can be used in web and ejb containers  
>> to dynamically bind to the transaction-associated PersistenceManager.
>>
>> In Chapter 9, add section on managing date formatting for  
>> ObjectIdentity constructors.
>>
>> public synchronized void registerDateFormat(java.text.DateFormat df);
>>
>> In 9.4, add method to retrieve persistence-capable classes that  
>> have been registered.
>>
>> public java.util.Collection getRegisteredClasses();
>>
>> In 9.5, add method to verify that the class is authorized to be a  
>> state manager.
>>
>> public static void checkAuthorizedStateManagerClass(Class smClass);
>>
>> In 9.5, add method to register multiple state manager classes.
>>
>> public static void  
>> registerAuthorizedStateManagerClasses(java.util.Collection  
>> smClasses) throws SecurityException;
>>
>> In Chapter 11, add properties for configuring  
>> PersistenceManagerFactory that are consistent with JPA  
>> specification of TransactionType and Persistence Unit Name.
>>
>> In Chapter 12, specify the behavior of PersistenceManager if it  
>> extends Serializable and writeObject is called.
>>
>> In 12.6.6, clarify that a JDOUserException will be thrown when  
>> invoking newInstance: if a class is not persistence-capable, or  
>> does not declare a public no-args constructor; if an interface is  
>> not persistence-capable or declares methods that are not defined as  
>> persistent properties; if an abstract class is not persistence- 
>> capable or declares abstract methods that are not defined as  
>> persistent properties.
>>
>> In 12.6.8, section heading Explicit Detach, the sentence "If the  
>> parameter instance is detached, then JDOUserException is thrown. "  
>> should be removed.
>>
>> In 12.6.8, add a note that serialization for storage using the  
>> serialized, serialized-element, serialized-key, or serialized-value  
>> metadata attributes does not create a detached instance.
>>
>> In 12.6.8, clarify the behavior of instances during serialization  
>> both with and without an active transaction.
>>
>> In 12.7.5, change public int setMaxFetchDepth(); to public int  
>> getMaxFetchDepth();
>>
>> In 12.7.5, specify that getFetchGroups returns a read-only copy of  
>> the active Fetch Groups.
>>
>> In 12.7.6, p. 127, change "A recursion-depth of 0 will fetch the  
>> whole graph of instances reachable from this field." to "A  
>> recursion-depth of -1 will fetch the whole graph of instances  
>> reachable from this field."
>>
>> In 12.7.6 p. 129, change fetch-depth to recursion-depth in the  
>> example.
>>
>> In 14, add subqueries to permit e.g. select from Employee where  
>> this.salary > (select avg(salary) from Employee)
>>
>> In 14.6.2 p. 159, the sectionheading "Methods" is not marked as a  
>> sectionheading.
>>
>> Add to 14.6.9: Projected SCOs are never owned, projected FCOs are  
>> always managed. Modifying unowned SCOs never has an effect on the  
>> database. Modifying FCOs no matter how you get them always has an  
>> effect if the tx commits.
>>
>> In 15.3, p. 187, the third paragraph, beginning "The field on the  
>> other side" and ending "in the next transaction", is duplicated and  
>> will be removed.
>>
>> In 15.3, add text to describe updating the other side of  
>> relationships where this side is deleted. This maintains  
>> referential integrity for delete as well as update.
>>
>> Add to 17.1.11
>>
>> JDOUserCallbackException extends javax.jdo.JDOUserException
>>
>> In Chapter 18, add an xml element to specify the fetch plan to use  
>> for a query.
>>
>> In 18.15.1, change "(e.g. a field of type Object can specify field- 
>> type=”Integer”)." to "(e.g. an element of type Object can specify  
>> element-type=”Integer”).
>>
>> In Chapter 18, add to .jdo metadata:
>>
>> <!ATTLIST property field-type CDATA #IMPLIED>
>>
>> Add to 18.15.1 "The default for dependent-element is false."
>>
>> Add to 18.15.2 "The default for dependent-key is false."
>>
>> Add to 18.15.2 "The default for dependent-value is false."
>>
>> Change the last paragraph of 21.6 from "For Detachable classes, the  
>> results of restoring a serialized persistent instance graph is a  
>> graph of interconnected detached instances that might be attached  
>> via the attachCopy methods." to "For Detachable classes, the  
>> results of restoring a serialized persistent instance graph is a  
>> graph of interconnected detached instances that might be attached  
>> via the makePersistent methods."
>>
>> Change 21.13 from "Some methods require a non-null state manager.  
>> In these cases, if the jdoStateManager is null, then  
>> IllegalStateException is thrown." to "Some methods require a non- 
>> null state manager. In these cases, if the jdoStateManager is null,  
>> then JDOFatalInternalException is thrown."
>>
>> Change 21.21.7 Generated jdoGetManagedFieldCount sample  
>> implementation to avoid using the jdoFieldNames field that might be  
>> initialized after it is used during initialization of a subclass.
>>
>> protected static int jdoGetManagedFieldCount () {
>> return jdoFieldNames.length;
>> }
>>
>> to
>>
>> protected static int jdoGetManagedFieldCount () {
>> return <enhancer-generated constant>;
>> }
>>
>> Add to Chapter 23, constants defined in the JDOPermission class:
>>
>> public static final javax.jdo.spi.JDOPermission  
>> CLOSE_PERSISTENCE_MANAGER_FACTORY = "closePersistenceManagerFactory";
>> public static final javax.jdo.spi.JDOPermission GET_METADATA =  
>> "getMetadata";
>> public static final javax.jdo.spi.JDOPermission MANAGE_METADATA =  
>> "manageMetadata";
>> public static final javax.jdo.spi.JDOPermission SET_STATE_MANAGER =  
>> "setStateManager";
>> JDK 1.5 changes
>>
>> These are changes proposed for JDO 2 to better support JDK 1.5.
>>
>> Add to 6.3 a section requiring support for enum types, including  
>> subclasses of enum types.
>>
>> Change in 12.6 signatures of the following PersistenceManager  
>> methods to be generic. Note that these changes are source  
>> compatible with existing application programs.
>>
>> JDO 2.0
>>
>> JDO 2.0 Maintenance Release
>>
>> Object getObjectById (Class cls, Object key)
>>
>> <T> T getObjectById (Class<T> cls, Object key)
>>
>> Object newInstance(Class persistenceCapable)
>>
>> <T> T newInstance(Class<T> persistenceCapable)
>>
>> Object makePersistent (Object pc)
>>
>> <T> T makePersistent (T pc)
>>
>> Object[ ] makePersistentAll (Object[ ] pcs)
>>
>> <T> T[ ] makePersistentAll (T[ ] pcs)
>>
>> Collection makePersistentAll (Collection pcs)
>>
>> <T> Collection<T> makePersistentAll (Collection<T> pcs)
>>
>> Object detachCopy(Object pc)
>>
>> <T> T detachCopy(T pc)
>>
>> Collection detachCopyAll(Collection pcs)
>>
>> <T> Collection<T> detachCopyAll(Collection<T> pcs)
>>
>> Object[ ] detachCopyAll(Object[ ] pcs)
>>
>> <T> T[ ] detachCopyAll(T[ ] pcs)
>>
>> Add to 15.1 a paragraph describing that mapping an enum to a fixed- 
>> precision numeric type uses the ordinal() value for storage;  
>> mapping to a character column type (CHAR, VARCHAR, etc.) uses the  
>> name() value for storage; mapping to any other column type is an  
>> error.
>>
>> Provide in a new chapter a set of annotations that map directly to  
>> xml elements as an alternative to using xml metadata. Describe how  
>> jdo implementations can use either JDO annotations or JPA  
>> annotations to provide metadata.
>>
>> Provide interfaces that extend both JDO and JPA in order to make it  
>> easier to migrate applications from JDO to JPA.
>>
>> DEFERRED
>>
>> - none yet -
>>
>> last edited 2008-01-28 13:52:14 by CraigRussell
>>
>> Edit
>> Show Changes
>> Get Info
>> Subscribe
>> More Actions:
>> MoinMoin Powered
>> Python Powered
>> Valid HTML 4.01
>>
>>
>>
>> Craig Russell
>> Architect, Sun Java Enterprise System http://java.sun.com/products/ 
>> jdo
>> 408 276-5638 mailto:Craig.Russell@sun.com
>> P.S. A good JDO? O, Gasp!
> <Liz.vcf>

Craig Russell
Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
408 276-5638 mailto:Craig.Russell@sun.com
P.S. A good JDO? O, Gasp!


Re: Maintenance Review for JSR-243

Posted by Liz M Kiener <Li...@jcp.org>.
Hello Craig -

Sorry, I missed your call.  We acknowledge receipt of the MR materials.  
You used the correct email alias on 29 Jan with your submission to 
spec-submit@jcp.org.

Would you please provide the desired length for the review (30, 45, 60 
or 90 days).

Thanks
Liz :-)



Craig L Russell a écrit :
> Hi,
>
> JSR-243 is planning a minor revision according to 
> http://jcp.org/en/procedures/jcp2#4.2.1
>
> The proposed changes are attached for the maintenance review.
>
> Comments should be directed to jdo-comments@sun.com
>
> Thanks,
>
> Craig
>
> ------------------------------------------------------------------------
>
> Jdo Wiki </jdo/FrontPage>
> Search:
>
>     * CraigRussell </jdo/CraigRussell>
>     * UserPreferences </jdo/UserPreferences>
>
>     * KeySigning </jdo/KeySigning>
>     * KeysAtApache </jdo/KeysAtApache>
>     * CurrentDevelopment </jdo/CurrentDevelopment>
>     * FrontPage </jdo/FrontPage>
>
>     * FrontPage </jdo/FrontPage>
>     * RecentChanges </jdo/RecentChanges>
>     * FindPage </jdo/FindPage>
>     * HelpContents </jdo/HelpContents>
>     * ChangeLog </jdo/ChangeLog>
>
> ------------------------------------------------------------------------
>
>     * Edit </jdo/ChangeLog?action=edit>
>     * Show Changes </jdo/ChangeLog?action=diff>
>     * Get Info </jdo/ChangeLog?action=info>
>     * Subscribe </jdo/ChangeLog?action=subscribe>
>    *
>       More Actions:
>
>
>   ChangeLog
>   </jdo/ChangeLog?action=fullsearch&value=linkto%3A%22ChangeLog%22&context=180>
>
>
>     This is the list of changes for maintenance of JSR-243.
>
>
>       PROPOSED
>
>   1.
>
>       Add methods to PersistenceManager and PersistenceManagerFactory
>       to allow a user to get the current time and date from the
>       server. Allow the PersistenceManagerFactory to be configured
>       statically with TimeZone and Locale in case the information is
>       not available from the server itself.
>
>   2.
>
>       Clarify 18.15.8 that the ordering field should be managed by the
>       implementation, not by the user.
>
>   3.
>
>       Remove the "serialized" attribute from 18.15.8 since the
>       ordering column is not serialized.
>
>   4.
>
>       Add property CopyOnAttach to PersistenceManager and
>       PersistenceManagerFactory. With the property set to true, makes
>       a copy of the detached instance on makePersistent. If the
>       property is set to false, it attaches the detached instance itself.
>
>   5.
>
>       Add ObjectState enum and convenience methods in JDOHelper to
>       return the ObjectState of an instance.
>
>   6.
>
>       Add method void evictAll (boolean subclasses, Class pcClass) to
>       PersistenceManager. This allows to evict instances for a
>       particluar class. Change signatures of DataStoreCache methods
>       pinAll, unpinAll, and evictAll from
>       (Class pcClass, boolean subclasses) to
>       (boolean subclasses, Class pcClass) to accommodate adding
>       methods that change the pcClass parameter from Class to Class....
>
>   7.
>
>       Clarify the behavior of method evictAll if the parameter is a
>       persistent interface. This comment also applies to the
>       DataStoreCache interface method
>       void evictAll (Class pcClass, boolean subclasses).
>
>   8.
>
>       Require that the implementation not hold a strong reference to
>       flushed dirty instances, allowing these instances to be garbage
>       collected.
>
>   9.
>
>       Change signatures of PersistenceManager methods that take
>       Object[] as an argument to take Object... as an argument. These
>       signatures are source and binary compatible with existing
>       programs. Where the Object... parameter would not be the last
>       parameter, deprecate the method and reorder the parameters so
>       Object... is last.
>
>
>       ACCEPTED
>
>   1.
>
>       In 5.4.1, Compound Identity should be updated to reflect that
>       for key fields of reference types, the type of the key field is
>       the reference type in the class but the oid of the reference
>       type in the oid class.
>
>   2.
>
>       In Table 2: State Transitions, the transition for a
>       transient-dirty instance during commit with
>       DetachAllOnCommit = true should be to transient-clean. Also,
>       state changes need to be added for detach methods and
>       serialization.
>
>   3.
>
>       In 5.5.8 and 5.5.9, detachCopy should be removed from the list
>       of methods that throw exceptions if applied to detached-clean or
>       detached-dirty instances.
>
>   4.
>
>       In 6.4.3, change "Portable JDO applications must not depend on
>       whether instances of these classes are treated as SCOs or FCOs.
>       " to "Portable JDO applications must not depend on SCO or FCO
>       uniquing behavior, nor on the storage mechanism in the
>       datastore. Portable applications may use the same instance of
>       these classes as field values in any persistence-capable class
>       instance."
>
>   5.
>
>       In section 7.5, change "If the class is abstract, null is
>       returned." to "If the class is abstract,
>       JDOFatalInternalException is thrown".
>
>   6.
>
>       In section 7.5, add public byte fetchByteField(int fieldNumber);
>       to ObjectIdFieldSupplier.
>
>   7.
>
>       In section 7.5, add
>       public byte storeByteField(int fieldNumber, byte value); to
>       ObjectIdFieldConsumer.
>
>   8.
>
>       In Chapter 8, add after class JDOHelper {
>
>          *
>
>             public JDOHelper();
>
>             For some usage patterns, an instance of JDOHelper on which
>             to invoke methods is preferable to the use of static
>             methods. For this purpose, a public constructor is provided.
>
>   9.
>
>       In Chapter 8, add a convenience method that returns a
>       PersistenceManager proxy that can be used in web and ejb
>       containers to dynamically bind to the transaction-associated
>       PersistenceManager.
>
>  10.
>
>       In Chapter 9, add section on managing date formatting for
>       ObjectIdentity constructors.
>
>          *
>
>             public synchronized void registerDateFormat(java.text.DateFormat df);
>
>
>  11.
>
>       In 9.4, add method to retrieve persistence-capable classes that
>       have been registered.
>
>          *
>
>             public java.util.Collection getRegisteredClasses();
>
>  12.
>
>       In 9.5, add method to verify that the class is authorized to be
>       a state manager.
>
>          *
>
>             public static void checkAuthorizedStateManagerClass(Class smClass);
>
>
>  13.
>
>       In 9.5, add method to register multiple state manager classes.
>
>          *
>
>             public static void registerAuthorizedStateManagerClasses(java.util.Collection smClasses) throws SecurityException;
>
>
>  14.
>
>       In Chapter 11, add properties for configuring
>       PersistenceManagerFactory that are consistent with JPA
>       specification of TransactionType and Persistence Unit Name.
>
>  15.
>
>       In Chapter 12, specify the behavior of PersistenceManager if it
>       extends Serializable and writeObject is called.
>
>  16.
>
>       In 12.6.6, clarify that a JDOUserException will be thrown when
>       invoking newInstance: if a class is not persistence-capable, or
>       does not declare a public no-args constructor; if an interface
>       is not persistence-capable or declares methods that are not
>       defined as persistent properties; if an abstract class is not
>       persistence-capable or declares abstract methods that are not
>       defined as persistent properties.
>
>  17.
>
>       In 12.6.8, section heading Explicit Detach, the sentence "If the
>       parameter instance is detached, then JDOUserException is thrown.
>       " should be removed.
>
>  18.
>
>       In 12.6.8, add a note that serialization for storage using the
>       serialized, serialized-element, serialized-key, or
>       serialized-value metadata attributes does not create a detached
>       instance.
>
>  19.
>
>       In 12.6.8, clarify the behavior of instances during
>       serialization both with and without an active transaction.
>
>  20.
>
>       In 12.7.5, change public int setMaxFetchDepth(); to
>       public int getMaxFetchDepth();
>
>  21.
>
>       In 12.7.5, specify that getFetchGroups returns a read-only copy
>       of the active Fetch Groups.
>
>  22.
>
>       In 12.7.6, p. 127, change "A recursion-depth of 0 will fetch the
>       whole graph of instances reachable from this field." to "A
>       recursion-depth of -1 will fetch the whole graph of instances
>       reachable from this field."
>
>  23.
>
>       In 12.7.6 p. 129, change fetch-depth to recursion-depth in the
>       example.
>
>  24.
>
>       In 14, add subqueries to permit e.g. select from Employee where
>       this.salary > (select avg(salary) from Employee)
>
>  25.
>
>       In 14.6.2 p. 159, the sectionheading "Methods" is not marked as
>       a sectionheading.
>
>  26.
>
>       Add to 14.6.9: Projected SCOs are never owned, projected FCOs
>       are always managed. Modifying unowned SCOs never has an effect
>       on the database. Modifying FCOs no matter how you get them
>       always has an effect if the tx commits.
>
>  27.
>
>       In 15.3, p. 187, the third paragraph, beginning "The field on
>       the other side" and ending "in the next transaction", is
>       duplicated and will be removed.
>
>  28.
>
>       In 15.3, add text to describe updating the other side of
>       relationships where this side is deleted. This maintains
>       referential integrity for delete as well as update.
>
>  29.
>
>       Add to 17.1.11
>
>          *
>
>             JDOUserCallbackException extends javax.jdo.JDOUserException
>
>  30.
>
>       In Chapter 18, add an xml element to specify the fetch plan to
>       use for a query.
>
>  31.
>
>       In 18.15.1, change "(e.g. a field of type Object can specify
>       field-type="Integer")." to "(e.g. an element of type Object can
>       specify element-type="Integer").
>
>  32.
>
>       In Chapter 18, add to .jdo metadata:
>
>          *
>
>             <!ATTLIST property field-type CDATA #IMPLIED> 
>
>  33.
>
>       Add to 18.15.1 "The default for dependent-element is false."
>
>  34.
>
>       Add to 18.15.2 "The default for dependent-key is false."
>
>  35.
>
>       Add to 18.15.2 "The default for dependent-value is false."
>
>  36.
>
>       Change the last paragraph of 21.6 from "For Detachable classes,
>       the results of restoring a serialized persistent instance graph
>       is a graph of interconnected detached instances that might be
>       attached via the attachCopy methods." to "For Detachable
>       classes, the results of restoring a serialized persistent
>       instance graph is a graph of interconnected detached instances
>       that might be attached via the makePersistent methods."
>
>  37.
>
>       Change 21.13 from "Some methods require a non-null state
>       manager. In these cases, if the jdoStateManager is null, then
>       IllegalStateException is thrown." to "Some methods require a
>       non-null state manager. In these cases, if the jdoStateManager
>       is null, then JDOFatalInternalException is thrown."
>
>  38.
>
>       Change 21.21.7 Generated jdoGetManagedFieldCount sample
>       implementation to avoid using the jdoFieldNames field that might
>       be initialized after it is used during initialization of a
>       subclass.
>
>          *
>             protected static int jdoGetManagedFieldCount () {  
>             return jdoFieldNames.length;
>             }
>                       
>
>             to
>
>             protected static int jdoGetManagedFieldCount () { 
>             return <enhancer-generated constant>;
>             }
>                       
>  39.
>
>       Add to Chapter 23, constants defined in the JDOPermission class:
>
>          *
>             public static final javax.jdo.spi.JDOPermission CLOSE_PERSISTENCE_MANAGER_FACTORY = "closePersistenceManagerFactory"; 
>             public static final javax.jdo.spi.JDOPermission GET_METADATA = "getMetadata";
>             public static final javax.jdo.spi.JDOPermission MANAGE_METADATA = "manageMetadata";
>             public static final javax.jdo.spi.JDOPermission SET_STATE_MANAGER = "setStateManager";
>
>
>         JDK 1.5 changes
>
> These are changes proposed for JDO 2 to better support JDK 1.5.
>
>   1.
>
>       Add to 6.3 a section requiring support for enum types, including
>       subclasses of enum types.
>
>   2.
>
>       Change in 12.6 signatures of the following PersistenceManager
>       methods to be generic. Note that these changes are source
>       compatible with existing application programs.
>
>          *
>
>             JDO 2.0
>
>             	
>
>             JDO 2.0 Maintenance Release
>
>             Object getObjectById (Class cls, Object key)
>
>             	
>
>             <T> T getObjectById (Class<T> cls, Object key)
>
>             Object newInstance(Class persistenceCapable)
>
>             	
>
>             <T> T newInstance(Class<T> persistenceCapable)
>
>             Object makePersistent (Object pc)
>
>             	
>
>             <T> T makePersistent (T pc)
>
>             Object[ ] makePersistentAll (Object[ ] pcs)
>
>             	
>
>             <T> T[ ] makePersistentAll (T[ ] pcs)
>
>             Collection makePersistentAll (Collection pcs)
>
>             	
>
>             <T> Collection<T> makePersistentAll (Collection<T> pcs)
>
>             Object detachCopy(Object pc)
>
>             	
>
>             <T> T detachCopy(T pc)
>
>             Collection detachCopyAll(Collection pcs)
>
>             	
>
>             <T> Collection<T> detachCopyAll(Collection<T> pcs)
>
>             Object[ ] detachCopyAll(Object[ ] pcs)
>
>             	
>
>             <T> T[ ] detachCopyAll(T[ ] pcs)
>
>   3.
>
>       Add to 15.1 a paragraph describing that mapping an enum to a
>       fixed-precision numeric type uses the ordinal() value for
>       storage; mapping to a character column type (CHAR, VARCHAR,
>       etc.) uses the name() value for storage; mapping to any other
>       column type is an error.
>
>   4.
>
>       Provide in a new chapter a set of annotations that map directly
>       to xml elements as an alternative to using xml metadata.
>       Describe how jdo implementations can use either JDO annotations
>       or JPA annotations to provide metadata.
>
>   5.
>
>       Provide interfaces that extend both JDO and JPA in order to make
>       it easier to migrate applications from JDO to JPA.
>
>
>       DEFERRED
>
> - none yet -
>
> last edited 2008-01-28 13:52:14 by CraigRussell
>
>     * Edit </jdo/ChangeLog?action=edit>
>     * Show Changes </jdo/ChangeLog?action=diff>
>     * Get Info </jdo/ChangeLog?action=info>
>     * Subscribe </jdo/ChangeLog?action=subscribe>
>    *
>       More Actions:
>
>     * MoinMoin Powered <http://moinmoin.wikiwikiweb.de/>
>     * Python Powered <http://www.python.org/>
>     * Valid HTML 4.01 <http://validator.w3.org/check?uri=referer>
>
>
>
>
> Craig Russell
> Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
> 408 276-5638 mailto:Craig.Russell@sun.com
> P.S. A good JDO? O, Gasp!

Fwd: Maintenance Review for JSR-243

Posted by Craig L Russell <Cr...@Sun.COM>.
Hi,

JSR-243 is planning a minor revision according to http://jcp.org/en/procedures/jcp2#4.2.1

The proposed changes are attached for the maintenance review.

Comments should be directed to jdo-comments@sun.com

Thanks,

Craig