Hi,
as a test, I tried to upgrade jackrabbit-core to JCR 2.0, by replacing
all instances of "org.apache.jackrabbit.api.jsr283" by "javax.jcr". I
found the following issues:
1) New methods on javax.jcr.Repository
The type BindableRepository must implement the inherited abstract
method Repository.getDescriptorValue(String) BindableRepository.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/jndi line 60
Java Problem
The type BindableRepository must implement the inherited abstract
method Repository.getDescriptorValues(String) BindableRepository.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/jndi line 60
Java Problem
The type BindableRepository must implement the inherited abstract
method Repository.isSingleValueDescriptor(String)
BindableRepository.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/jndi line 60
Java Problem
The type BindableRepository must implement the inherited abstract
method Repository.isStandardDescriptor(String)
BindableRepository.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/jndi line 60
Java Problem
The type RepositoryImpl must implement the inherited abstract method
Repository.getDescriptorValue(String) RepositoryImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core line 112 Java
Problem
The type RepositoryImpl must implement the inherited abstract method
Repository.getDescriptorValues(String) RepositoryImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core line 112 Java
Problem
The type RepositoryImpl must implement the inherited abstract method
Repository.isSingleValueDescriptor(String) RepositoryImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core line 112 Java
Problem
The type RepositoryImpl must implement the inherited abstract method
Repository.isStandardDescriptor(String) RepositoryImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core line 112 Java
Problem
The type TransientRepository must implement the inherited abstract
method Repository.getDescriptorValue(String) TransientRepository.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core line 50 Java
Problem
The type TransientRepository must implement the inherited abstract
method Repository.getDescriptorValues(String) TransientRepository.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core line 50 Java
Problem
The type TransientRepository must implement the inherited abstract
method Repository.isSingleValueDescriptor(String) TransientRepository.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core line 50 Java
Problem
The type TransientRepository must implement the inherited abstract
method Repository.isStandardDescriptor(String) TransientRepository.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core line 50 Java
Problem
-> I have added o.a.j.api.jsr283.Repository to jackrabbit-api, and added
method stubs in jackrabbit-core (r769795)
2) New methods on javax.jcr.Session:
The type ClusterSession must implement the inherited abstract method
Session.getAccessControlManager() ClusterSession.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cluster line
36 Java Problem
The type ClusterSession must implement the inherited abstract method
Session.getNode(String) ClusterSession.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cluster line
36 Java Problem
The type ClusterSession must implement the inherited abstract method
Session.getNodeByIdentifier(String) ClusterSession.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cluster line
36 Java Problem
The type ClusterSession must implement the inherited abstract method
Session.getProperty(String) ClusterSession.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cluster line
36 Java Problem
The type ClusterSession must implement the inherited abstract method
Session.getRetentionManager() ClusterSession.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cluster line
36 Java Problem
The type ClusterSession must implement the inherited abstract method
Session.hasCapability(String, Object, Map) ClusterSession.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cluster line
36 Java Problem
The type ClusterSession must implement the inherited abstract method
Session.hasPermission(String, String) ClusterSession.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cluster line
36 Java Problem
The type ClusterSession must implement the inherited abstract method
Session.nodeExists(String) ClusterSession.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cluster line
36 Java Problem
The type ClusterSession must implement the inherited abstract method
Session.propertyExists(String) ClusterSession.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cluster line
36 Java Problem
The type ClusterSession must implement the inherited abstract method
Session.removeItem(String) ClusterSession.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cluster line
36 Java Problem
-> ClusterSession needs to implement o.a.j.api.jsr283.Session.
3) New methods on javax.jcr.observation.EventIterator:
The type EventJournalImpl must implement the inherited abstract method
EventIterator.getDate() EventJournalImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/observation
line 52 Java Problem
The type FilteredEventIterator must implement the inherited abstract
method EventIterator.getDate() FilteredEventIterator.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/observation
line 32 Java Problem
4) New methods on javax.jcr.nodetype.NodeDefinitionTemplate:
The type NodeDefinitionTemplateImpl must implement the inherited
abstract method NodeDefinitionTemplate.setDefaultPrimaryTypeName(String)
NodeDefinitionTemplateImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype line
29 Java Problem
The type NodeDefinitionTemplateImpl must implement the inherited
abstract method
NodeDefinitionTemplate.setRequiredPrimaryTypeNames(String[])
NodeDefinitionTemplateImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype line
29 Java Problem
5) New methods on javax.jcr.Node:
The type NodeImpl must implement the inherited abstract method
Node.getNodes(String[]) NodeImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core
line 110 Java Problem
The type NodeImpl must implement the inherited abstract method
Node.getProperty(String[]) NodeImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core line 110 Java
Problem
The type NodeImpl must implement the inherited abstract method
Node.getWeakReferences() NodeImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core
line 110 Java Problem
The type NodeImpl must implement the inherited abstract method
Node.getWeakReferences(String) NodeImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core line 110 Java
Problem
The type NodeImpl must implement the inherited abstract method
Node.setProperty(String, BigDecimal) NodeImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core line 110 Java
Problem
The type NodeImpl must implement the inherited abstract method
Node.setProperty(String, Binary) NodeImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core line 110 Java
Problem
6) New methods in javax.jcr.nodetype.*:
The type NodeTypeDefinitionImpl must implement the inherited abstract
method NodeTypeDefinition.isQueryable() NodeTypeDefinitionImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype line
35 Java Problem
The type NodeTypeImpl must implement the inherited abstract method
NodeType.getDeclaredSubtypes() NodeTypeImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype line
45 Java Problem
The type NodeTypeImpl must implement the inherited abstract method
NodeType.getSubtypes() NodeTypeImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype line
45 Java Problem
The type NodeTypeImpl must implement the inherited abstract method
NodeTypeDefinition.isQueryable() NodeTypeImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype line
45 Java Problem
The type NodeTypeManagerImpl must implement the inherited abstract
method NodeTypeManager.registerNodeTypes(NodeTypeDefinition[], boolean)
NodeTypeManagerImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype line
73 Java Problem
The type NodeTypeTemplateImpl must implement the inherited abstract
method NodeTypeDefinition.isQueryable() NodeTypeTemplateImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype line
33 Java Problem
The type NodeTypeTemplateImpl must implement the inherited abstract
method NodeTypeTemplate.setQueryable(boolean) NodeTypeTemplateImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype line
33 Java Problem
The type ObservationManagerImpl must implement the inherited abstract
method ObservationManager.getEventJournal() ObservationManagerImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/observation
line 39 Java Problem
The type PropertyDefinitionImpl must implement the inherited abstract
method PropertyDefinition.getAvailableQueryOperators()
PropertyDefinitionImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype line
34 Java Problem
The type PropertyDefinitionImpl must implement the inherited abstract
method PropertyDefinition.isFullTextSearchable()
PropertyDefinitionImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype line
34 Java Problem
The type PropertyDefinitionImpl must implement the inherited abstract
method PropertyDefinition.isQueryOrderable() PropertyDefinitionImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype line
34 Java Problem
The type PropertyDefinitionTemplateImpl must implement the inherited
abstract method PropertyDefinition.getAvailableQueryOperators()
PropertyDefinitionTemplateImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype line
28 Java Problem
The type PropertyDefinitionTemplateImpl must implement the inherited
abstract method PropertyDefinition.isFullTextSearchable()
PropertyDefinitionTemplateImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype line
28 Java Problem
The type PropertyDefinitionTemplateImpl must implement the inherited
abstract method PropertyDefinition.isQueryOrderable()
PropertyDefinitionTemplateImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype line
28 Java Problem
The type PropertyDefinitionTemplateImpl must implement the inherited
abstract method
PropertyDefinitionTemplate.setAvailablrQueryOperators(String[])
PropertyDefinitionTemplateImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype line
28 Java Problem
The type PropertyDefinitionTemplateImpl must implement the inherited
abstract method PropertyDefinitionTemplate.setFullTextSearchable(boolean)
PropertyDefinitionTemplateImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype line
28 Java Problem
The type PropertyDefinitionTemplateImpl must implement the inherited
abstract method PropertyDefinitionTemplate.setQueryOrderable(boolean)
PropertyDefinitionTemplateImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype line
28 Java Problem
7) New methods on javax.jcr.Property:
The type PropertyImpl must implement the inherited abstract method
Property.getBinary() PropertyImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core line 54 Java
Problem
The type PropertyImpl must implement the inherited abstract method
Property.getDecimal() PropertyImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core line 54 Java
Problem
The type PropertyImpl must implement the inherited abstract method
Property.getProperty() PropertyImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core line 54 Java
Problem
The type PropertyImpl must implement the inherited abstract method
Property.setValue(BigDecimal) PropertyImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core line 54 Java
Problem
The type PropertyImpl must implement the inherited abstract method
Property.setValue(Binary) PropertyImpl.java
jackrabbit-core/src/main/java/org/apache/jackrabbit/core line 54 Java
Problem
--> Permitting time, I will try adding workarounds (by adding stubs) for
now to make the transition at the end of the week less painful. On the
other hand, help would be appreciated as well :-)
BR, Julian