chemistry-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Florian Müller <f...@apache.org>
Subject Re: NPE trying to session.getRootFolder
Date Tue, 25 Feb 2014 08:02:20 GMT
 Thanks for sharing your findings!

 - Florian


> Yeah!! I fixed it.
>
> For posterity, and any other poor souls that need to get this working 
> on
> weblogic 12c, embellish your weblogic-application.xml with the 
> following
>
>  <prefer-application-packages>
>  <package-name>com.sun.istack.*</package-name>
>  <package-name>com.sun.xml.*</package-name>
>  <package-name>javax.xml.bind.*</package-name>
>  <package-name>javax.xml.soap.*</package-name>
>  <package-name>javax.xml.ws.*</package-name>
>  <package-name>org.glassfish.gmbal.*</package-name>
>  <package-name>org.jvnet.mimepull.*</package-name>
>  <package-name>org.jvnet.staxex.*</package-name>
>  </prefer-application-packages>
>
>  <prefer-application-resources>
>  <resource-name>javax.xml.ws.*</resource-name>
>  <resource-name>com.sun.xml.ws.*</resource-name>
>  <resource-name>javax.xml.soap.*</resource-name>
>
> 
> <resource-name>META-INF/services/javax.xml.ws.spi.Provider</resource-name>
>
> 
> <resource-name>META-INF/services/com.sun.xml.ws.api.client.ServiceInterceptorFactory</resource-name>
>
> 
> <resource-name>META-INF/services/com.sun.xml.ws.api.wsdl.parser.WSDLParserExtension</resource-name>
>
> 
> <resource-name>META-INF/services/javax.xml.soap.MetaFactory</resource-name>
>
> 
> <resource-name>META-INF/services/javax.xml.soap.SOAPFactory</resource-name>
>
> 
> <resource-name>META-INF/services/javax.xml.soap.SOAPConnectionFactory</resource-name>
>
> 
> <resource-name>META-INF/services/javax.xml.soap.MessageFactory</resource-name>
>
> 
> <resource-name>META-INF/services/javax.xml.bind.JAXBContext</resource-name>
>
> 
> <resource-name>META-INF/services/com.sun.xml.ws.spi.db.DatabindingProvider</resource-name>
>
> 
> <resource-name>META-INF/services/com.sun.xml.ws.spi.db.BindingContextFactory</resource-name>
>  </prefer-application-resources>
>
> thanks for the help.
> dave
>
> ---
> <br type="_moz" />
>
> On 2014-02-21 11:59, Dave Brosius wrote:
>
>> In jaxws-rt-2.2.6-6.jar, the code
>>
>> com.sun.xml.ws.api.client.ServiceInterceptorFactory.java
>>
>> method
>>
>> public static @NotNull ServiceInterceptor load(@NotNull WSService 
>> service, @Nullable ClassLoader cl) {
>> List<ServiceInterceptor> l = new ArrayList<ServiceInterceptor>();
>>
>> // first service look-up
>> for( ServiceInterceptorFactory f : 
>> ServiceFinder.find(ServiceInterceptorFactory.class))
>> l.add(f.create(service));
>>
>> // then thread-local
>> for( ServiceInterceptorFactory f : threadLocalFactories.get())
>> l.add(f.create(service));
>>
>> return ServiceInterceptor.aggregate(l.toArray(new 
>> ServiceInterceptor[l.size()]));
>> }
>>
>> SHOULD PROBABLY BE
>>
>> public static @NotNull ServiceInterceptor load(@NotNull WSService 
>> service, @Nullable ClassLoader cl) {
>> List<ServiceInterceptor> l = new ArrayList<ServiceInterceptor>();
>>
>> // first service look-up
>> for( Object f : ServiceFinder.find(ServiceInterceptorFactory.class)) 
>> {
>> if (f instanceof ServiceInterceptorFactory)
>> l.add(f.create(service));
>> }
>>
>> // then thread-local
>> for( ServiceInterceptorFactory f : threadLocalFactories.get())
>> l.add(f.create(service));
>>
>> return ServiceInterceptor.aggregate(l.toArray(new 
>> ServiceInterceptor[l.size()]));
>> }
>>
>> ---
>> <br type="_moz" />
>>
>> On 2014-02-21 11:41, Dave Brosius wrote:
>>> Caused by: java.lang.ClassCastException: Cannot cast
>>> weblogic.wsee.jaxws.spi.WLSServiceInterceptorFactory to
>>> com.sun.xml.ws.api.client.ServiceInterceptorFactory
>>> at java.lang.Class.cast(Class.java:3094)
>>> at 
>>> com.sun.xml.ws.util.ServiceFinder$LazyIterator.next(ServiceFinder.java:460)
>>> at
>>> 
>>> com.sun.xml.ws.util.ServiceFinder$CompositeIterator.next(ServiceFinder.java:402)
>>> at
>>> 
>>> com.sun.xml.ws.api.client.ServiceInterceptorFactory.load(ServiceInterceptorFactory.java:84)
>>> at 
>>> com.sun.xml.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:245)
>>> at 
>>> com.sun.xml.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:205)
>>> at 
>>> com.sun.xml.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:195)
>>> at 
>>> com.sun.xml.ws.spi.ProviderImpl.createServiceDelegate(ProviderImpl.java:112)
>>> at javax.xml.ws.Service.<init>(Service.java:92)
>>> at
>>> 
>>> org.apache.chemistry.opencmis.commons.impl.jaxb.RepositoryService.<init>(RepositoryService.java:46)
>>> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native 
>>> Method)
>>> at
>>> 
>>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
>>> at
>>> 
>>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>>> at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
>>> at
>>> 
>>> org.apache.chemistry.opencmis.client.bindings.spi.webservices.AbstractPortProvider$CmisServiceHolder.createServiceObject(AbstractPortProvider.java:200)
>>> at
>>> 
>>> org.apache.chemistry.opencmis.client.bindings.spi.webservices.AbstractPortProvider$CmisServiceHolder.<init>(AbstractPortProvider.java:187)
>>> at
>>> 
>>> org.apache.chemistry.opencmis.client.bindings.spi.webservices.AbstractPortProvider.initServiceObject(AbstractPortProvider.java:514)
>>> at
>>> 
>>> org.apache.chemistry.opencmis.client.bindings.spi.webservices.AbstractPortProvider.getPortObject(AbstractPortProvider.java:454)
>>> at
>>> 
>>> org.apache.chemistry.opencmis.client.bindings.spi.webservices.AbstractPortProvider.getRepositoryServicePort(AbstractPortProvider.java:280)
>>> at
>>> 
>>> org.apache.chemistry.opencmis.client.bindings.spi.webservices.RepositoryServiceImpl.getRepositoryInfos(RepositoryServiceImpl.java:69)
>>> at
>>> 
>>> org.apache.chemistry.opencmis.client.bindings.impl.RepositoryServiceImpl.getRepositoryInfos(RepositoryServiceImpl.java:85)
>>> at
>>> 
>>> org.apache.chemistry.opencmis.client.runtime.SessionFactoryImpl.getRepositories(SessionFactoryImpl.java:109)
>>> at
>>> 
>>> org.apache.chemistry.opencmis.client.runtime.SessionFactoryImpl.getRepositories(SessionFactoryImpl.java:96)
>>>
>>>
>>>
>>> com.sun.xml.ws.api.client.ServiceInterceptorFactory: Provider
>>> weblogic.wsee.jaxws.spi.WLSServiceInterceptorFactory is specified 
>>> in
>>> 
>>> jar:file:/home/dave/Oracle/Middleware/Oracle_Home/oracle_common/modules/com.oracle.webservices.wls.wls-ws-metainf-services_2.0.0.0.jar!/META-INF/services/com.sun.xml.ws.api.client.ServiceInterceptorFactorybut

>>> could not be instantiated: java.lang.ClassCastException: Cannot cast 
>>> weblogic.wsee.jaxws.spi.WLSServiceInterceptorFactory to 
>>> com.sun.xml.ws.api.client.ServiceInterceptorFactory
>>>
>>>
>>>
>>>
>>> ---
>>> <br type="_moz" />
>>>
>>> On 2014-02-21 11:32, Dave Brosius wrote:
>>>> I've added more to paths to my <prefer-application-packages> in my

>>>> ear
>>>>
>>>>
>>>> and now i get
>>>>
>>>> Caused by: java.lang.ClassCastException: Cannot cast
>>>> weblogic.wsee.jaxws.spi.WLSServiceInterceptorFactory to
>>>> com.sun.xml.ws.api.client.ServiceInterceptorFactory
>>>>
>>>> Now this SPI is found in jaxws-rt-2.2.26-6.jar and is
>>>> javax.xml.ws.spi.Provider=com.sun.xml.ws.spi.ProviderImpl there
>>>>
>>>> and i have
>>>>
>>>> <prefer-application-packages>
>>>> <package-name>javax.xml.ws.*</package-name>
>>>> ....
>>>>
>>>>
>>>> in my weblogic-application.xml in my ear, so it should be using 
>>>> that
>>>> jar. But yet it is still picking up WLSServiceInterceptorFactory 
>>>> thru
>>>> spi somehow.
>>>>
>>>> Anyone know what my problem is?
>>>>
>>>>
>>>> ---
>>>> <br type="_moz" />
>>>>
>>>> On 2014-02-20 17:08, Dave Brosius wrote:
>>>>> It must be a classloader issue with some jar in wls, as this web 
>>>>> app fails
>>>>>
>>>>> package com.suckage;
>>>>>
>>>>> import java.io.IOException;
>>>>> import java.net.Authenticator;
>>>>> import java.net.PasswordAuthentication;
>>>>> import java.util.HashMap;
>>>>> import java.util.List;
>>>>> import java.util.Map;
>>>>>
>>>>> import javax.servlet.ServletException;
>>>>> import javax.servlet.http.HttpServlet;
>>>>> import javax.servlet.http.HttpServletRequest;
>>>>> import javax.servlet.http.HttpServletResponse;
>>>>>
>>>>> import org.apache.chemistry.opencmis.client.api.Folder;
>>>>> import org.apache.chemistry.opencmis.client.api.Repository;
>>>>> import org.apache.chemistry.opencmis.client.api.Session;
>>>>> import 
>>>>> org.apache.chemistry.opencmis.client.bindings.CmisBindingFactory;
>>>>> import 
>>>>> org.apache.chemistry.opencmis.client.runtime.SessionFactoryImpl;
>>>>> import org.apache.chemistry.opencmis.commons.SessionParameter;
>>>>> import org.apache.chemistry.opencmis.commons.enums.BindingType;
>>>>>
>>>>> public class CmisServlet extends HttpServlet {
>>>>>
>>>>> private Repository repository = null;
>>>>> private Session session = null;
>>>>>
>>>>> @Override
>>>>> public void init() throws ServletException {
>>>>> super.init();
>>>>>
>>>>> List<Repository> repositories =
>>>>> SessionFactoryImpl.newInstance().getRepositories(getProps());
>>>>>
>>>>> for (Repository rep : repositories) {
>>>>> if (rep.getName().equalsIgnoreCase("Main Repository")) {
>>>>> repository = rep;
>>>>> break;
>>>>> }
>>>>> }
>>>>>
>>>>> session = repository.createSession();
>>>>> }
>>>>>
>>>>> @Override
>>>>> protected void doGet(HttpServletRequest request,
>>>>> HttpServletResponse response)
>>>>> throws ServletException, IOException {
>>>>>
>>>>> if (session != null) {
>>>>> Folder f = session.getRootFolder();
>>>>>
>>>>> response.setStatus(HttpServletResponse.SC_OK);
>>>>> response.getOutputStream().write(f.getName().getBytes("UTF-8"));
>>>>> }
>>>>> }
>>>>>
>>>>> private static Map<String, String> getProps() {
>>>>> String wsdl =
>>>>> 
>>>>> "http://10.177.101.190:9080/alfresco/cmisws/RepositoryService?wsdl";
>>>>>
>>>>> Map<String, String> properties = new HashMap<String, String>();
>>>>> properties.put(SessionParameter.BINDING_TYPE,
>>>>> BindingType.WEBSERVICES.value());
>>>>> properties.put(SessionParameter.WEBSERVICES_ACL_SERVICE, wsdl);
>>>>> properties.put(SessionParameter.WEBSERVICES_DISCOVERY_SERVICE, 
>>>>> wsdl);
>>>>> properties.put(SessionParameter.WEBSERVICES_MULTIFILING_SERVICE, 
>>>>> wsdl);
>>>>> properties.put(SessionParameter.WEBSERVICES_NAVIGATION_SERVICE, 
>>>>> wsdl);
>>>>> properties.put(SessionParameter.WEBSERVICES_OBJECT_SERVICE, 
>>>>> wsdl);
>>>>> properties.put(SessionParameter.WEBSERVICES_POLICY_SERVICE, 
>>>>> wsdl);
>>>>> properties.put(SessionParameter.WEBSERVICES_RELATIONSHIP_SERVICE, 
>>>>> wsdl);
>>>>> properties.put(SessionParameter.WEBSERVICES_REPOSITORY_SERVICE, 
>>>>> wsdl);
>>>>> properties.put(SessionParameter.WEBSERVICES_VERSIONING_SERVICE, 
>>>>> wsdl);
>>>>>
>>>>> String username = "xxx";
>>>>> String password = "yyy";
>>>>>
>>>>> properties.put(SessionParameter.AUTHENTICATION_PROVIDER_CLASS,
>>>>> CmisBindingFactory.STANDARD_AUTHENTICATION_PROVIDER);
>>>>>
>>>>> properties.put(SessionParameter.USER, username);
>>>>> properties.put(SessionParameter.PASSWORD, password);
>>>>>
>>>>> Authenticator.setDefault(new BasicAuthenticator(username, 
>>>>> password));
>>>>>
>>>>> return properties;
>>>>> }
>>>>>
>>>>> static class BasicAuthenticator extends Authenticator
>>>>> {
>>>>> private PasswordAuthentication passwordAuthentication;
>>>>>
>>>>> public BasicAuthenticator(String user, String password)
>>>>> {
>>>>> passwordAuthentication = new PasswordAuthentication(user,
>>>>> password.toCharArray());
>>>>> }
>>>>>
>>>>> @Override
>>>>> protected synchronized PasswordAuthentication
>>>>> getPasswordAuthentication()
>>>>> {
>>>>> return passwordAuthentication;
>>>>> }
>>>>> }
>>>>> }
>>>>>
>>>>> and this standalone succeeds
>>>>>
>>>>> import java.net.Authenticator;
>>>>> import java.net.PasswordAuthentication;
>>>>> import java.util.HashMap;
>>>>> import java.util.List;
>>>>> import java.util.Map;
>>>>>
>>>>> import org.apache.chemistry.opencmis.client.api.Folder;
>>>>> import org.apache.chemistry.opencmis.client.api.Repository;
>>>>> import org.apache.chemistry.opencmis.client.api.Session;
>>>>> import 
>>>>> org.apache.chemistry.opencmis.client.bindings.CmisBindingFactory;
>>>>> import 
>>>>> org.apache.chemistry.opencmis.client.runtime.SessionFactoryImpl;
>>>>> import org.apache.chemistry.opencmis.commons.SessionParameter;
>>>>> import org.apache.chemistry.opencmis.commons.enums.BindingType;
>>>>>
>>>>>
>>>>> public class Al {
>>>>>
>>>>> public static void main(String[] args) {
>>>>>
>>>>> Map<String, String> props = getProps();
>>>>>
>>>>> List<Repository> repositories =
>>>>> SessionFactoryImpl.newInstance().getRepositories(props);
>>>>>
>>>>> Repository repository = null;
>>>>> for (Repository rep : repositories) {
>>>>> if (rep.getName().equalsIgnoreCase("Main Repository")) {
>>>>> repository = rep;
>>>>> break;
>>>>> }
>>>>> }
>>>>>
>>>>> if (repository != null) {
>>>>> Session session = repository.createSession();
>>>>>
>>>>> Folder f = session.getRootFolder();
>>>>> System.out.println(f.getName());
>>>>> }
>>>>> }
>>>>>
>>>>> private static Map<String, String> getProps() {
>>>>> String wsdl =
>>>>> 
>>>>> "http://10.177.101.190:9080/alfresco/cmisws/RepositoryService?wsdl";
>>>>>
>>>>> Map<String, String> properties = new HashMap<String, String>();
>>>>> properties.put(SessionParameter.BINDING_TYPE,
>>>>> BindingType.WEBSERVICES.value());
>>>>> properties.put(SessionParameter.WEBSERVICES_ACL_SERVICE, wsdl);
>>>>> properties.put(SessionParameter.WEBSERVICES_DISCOVERY_SERVICE, 
>>>>> wsdl);
>>>>> properties.put(SessionParameter.WEBSERVICES_MULTIFILING_SERVICE, 
>>>>> wsdl);
>>>>> properties.put(SessionParameter.WEBSERVICES_NAVIGATION_SERVICE, 
>>>>> wsdl);
>>>>> properties.put(SessionParameter.WEBSERVICES_OBJECT_SERVICE, 
>>>>> wsdl);
>>>>> properties.put(SessionParameter.WEBSERVICES_POLICY_SERVICE, 
>>>>> wsdl);
>>>>> properties.put(SessionParameter.WEBSERVICES_RELATIONSHIP_SERVICE, 
>>>>> wsdl);
>>>>> properties.put(SessionParameter.WEBSERVICES_REPOSITORY_SERVICE, 
>>>>> wsdl);
>>>>> properties.put(SessionParameter.WEBSERVICES_VERSIONING_SERVICE, 
>>>>> wsdl);
>>>>>
>>>>> String username = "xxx";
>>>>> String password = "yyy";
>>>>>
>>>>> properties.put(SessionParameter.AUTHENTICATION_PROVIDER_CLASS,
>>>>> CmisBindingFactory.STANDARD_AUTHENTICATION_PROVIDER);
>>>>>
>>>>> properties.put(SessionParameter.USER, username);
>>>>> properties.put(SessionParameter.PASSWORD, password);
>>>>>
>>>>> Authenticator.setDefault(new BasicAuthenticator(username, 
>>>>> password));
>>>>>
>>>>> return properties;
>>>>> }
>>>>>
>>>>> }
>>>>>
>>>>> class BasicAuthenticator extends Authenticator
>>>>> {
>>>>> private PasswordAuthentication passwordAuthentication;
>>>>>
>>>>> public BasicAuthenticator(String user, String password)
>>>>> {
>>>>> passwordAuthentication = new PasswordAuthentication(user,
>>>>> password.toCharArray());
>>>>> }
>>>>>
>>>>> @Override
>>>>> protected synchronized PasswordAuthentication 
>>>>> getPasswordAuthentication()
>>>>> {
>>>>> return passwordAuthentication;
>>>>> }
>>>>> }
>>>>>
>>>>>
>>>>> i even added <prefer-application-packages> like the following to

>>>>> try
>>>>> to use my copies of the jars in weblogic-application.xml
>>>>>
>>>>> <prefer-application-packages>
>>>>> <package-name>org.apache.chemistry.*</package-name>
>>>>> <package-name>com.glassfish.gmbal.*</package-name>
>>>>> <package-name>com.sun.istack.*</package-name>
>>>>> <package-name>com.sun.xml.stream.*</package-name>
>>>>> <package-name>com.sun.xml.ws.*</package-name>
>>>>> <package-name>com.sun.xml.bind.*</package-name>
>>>>> <package-name>com.sun.xml.txw2.*</package-name>
>>>>> <package-name>org.jvnet.*</package-name>
>>>>> <package-name>javax.xml.bind.*</package-name>
>>>>> <package-name>javax.xml.ws.*</package-name>
>>>>> </prefer-application-packages>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> ---
>>>>> <br type="_moz" />
>>>>>
>>>>> On 2014-02-20 14:10, Dave Brosius wrote:
>>>>>> I'm using
>>>>>>
>>>>>> Alfresco Community v4.0.0
>>>>>> (4003) schema 5025
>>>>>>
>>>>>> The web service url is
>>>>>>
>>>>>> 
>>>>>> http://some.local.host.com:9080/alfresco/cmisws/RepositoryService?wsdl
>>>>>>
>>>>>>
>>>>>> I decided to build a standalone app that just tested that one 
>>>>>> thing,
>>>>>> so it would be easier to test (the real thing is part of a web 
>>>>>> app on
>>>>>> weblogic)
>>>>>>
>>>>>> It works fine in the standalone app. I'm now thinking that it's 
>>>>>> a
>>>>>> quiet jar conflict, as i had to download a bunch of jars that
>>>>>> apparently
>>>>>> wls was providing.
>>>>>>
>>>>>> I'm going to stuff all the jars i downloaded into WEB-INF/lib 
>>>>>> and see
>>>>>> what happens.
>>>>>>
>>>>>> ---
>>>>>> <br type="_moz" />
>>>>>>
>>>>>> On 2014-02-20 11:56, Florian Müller wrote:
>>>>>>> Hi Dave,
>>>>>>>
>>>>>>> Looks like the transferred XML is somehow corrupt. All 
>>>>>>> properties
>>>>>>> became extensions.
>>>>>>> Would it be possible to capture the response from the Alfresco

>>>>>>> server?
>>>>>>> Which Alfresco version are you connection to and which Alfresco

>>>>>>> CMIS
>>>>>>> URL did you use?
>>>>>>>
>>>>>>>
>>>>>>> Thanks,
>>>>>>>
>>>>>>> Florian
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> Greetings,
>>>>>>>>
>>>>>>>> I am running into a NPE trying to get the root folder from
an
>>>>>>>> Alfresco cmis thru chemistry 0.10.0.
>>>>>>>>
>>>>>>>> I'm assuming that there is some sort of configuration missing

>>>>>>>> on my
>>>>>>>> part, but i'm not sure how to debug further.
>>>>>>>>
>>>>>>>> Basically, when calling Session.getRootFolder it gets to
>>>>>>>>
>>>>>>>> SessionImpl getObject(ObjectId objectId, OperationContext

>>>>>>>> context);
>>>>>>>>
>>>>>>>> where it fetches ObjectData, that looks like this:
>>>>>>>>
>>>>>>>> Object Data [properties=Properties Data
>>>>>>>>
>>>>>>>> 
>>>>>>>> [properties=[]][extensions=[{http://docs.oasis-open.org/ns/cmis/core/200908/}propertyId
>>>>>>>> {null=cmis:allowedChildObjectTypeIds}: ,
>>>>>>>> {http://docs.oasis-open.org/ns/cmis/core/200908/}propertyId
>>>>>>>> {null=cmis:objectTypeId}:
>>>>>>>> [{http://docs.oasis-open.org/ns/cmis/core/200908/}value {}:
>>>>>>>> cmis:folder],
>>>>>>>> 
>>>>>>>> {http://docs.oasis-open.org/ns/cmis/core/200908/}propertyString
>>>>>>>> {null=cmis:path}:
>>>>>>>> [{http://docs.oasis-open.org/ns/cmis/core/200908/}value {}:

>>>>>>>> /],
>>>>>>>> 
>>>>>>>> {http://docs.oasis-open.org/ns/cmis/core/200908/}propertyString
>>>>>>>> {null=cmis:name}:
>>>>>>>> [{http://docs.oasis-open.org/ns/cmis/core/200908/}value {}:

>>>>>>>> Company
>>>>>>>> Home],
>>>>>>>> 
>>>>>>>> {http://docs.oasis-open.org/ns/cmis/core/200908/}propertyDateTime
>>>>>>>> {null=cmis:creationDate}:
>>>>>>>> [{http://docs.oasis-open.org/ns/cmis/core/200908/}value {}:
>>>>>>>> 2013-11-18T19:22:26.382+05:30],
>>>>>>>> 
>>>>>>>> {http://docs.oasis-open.org/ns/cmis/core/200908/}propertyString
>>>>>>>> {null=cmis:changeToken}: ,
>>>>>>>> 
>>>>>>>> {http://docs.oasis-open.org/ns/cmis/core/200908/}propertyString
>>>>>>>> {null=cmis:lastModifiedBy}:
>>>>>>>> [{http://docs.oasis-open.org/ns/cmis/core/200908/}value {}:

>>>>>>>> System],
>>>>>>>> 
>>>>>>>> {http://docs.oasis-open.org/ns/cmis/core/200908/}propertyString
>>>>>>>> {null=cmis:createdBy}:
>>>>>>>> [{http://docs.oasis-open.org/ns/cmis/core/200908/}value {}:

>>>>>>>> System],
>>>>>>>> {http://docs.oasis-open.org/ns/cmis/core/200908/}propertyId
>>>>>>>> {null=cmis:objectId}:
>>>>>>>> [{http://docs.oasis-open.org/ns/cmis/core/200908/}value {}:
>>>>>>>> workspace://SpacesStore/03ceb69e-5168-4f1c-a3b4-64cbb2ad4bf7],
>>>>>>>> {http://docs.oasis-open.org/ns/cmis/core/200908/}propertyId
>>>>>>>> {null=cmis:baseTypeId}:
>>>>>>>> [{http://docs.oasis-open.org/ns/cmis/core/200908/}value {}:
>>>>>>>> cmis:folder],
>>>>>>>> {http://docs.oasis-open.org/ns/cmis/core/200908/}propertyId
>>>>>>>> {null=alfcmis:nodeRef}:
>>>>>>>> [{http://docs.oasis-open.org/ns/cmis/core/200908/}value {}:
>>>>>>>> workspace://SpacesStore/03ceb69e-5168-4f1c-a3b4-64cbb2ad4bf7],
>>>>>>>> 
>>>>>>>> {http://docs.oasis-open.org/ns/cmis/core/200908/}propertyDateTime
>>>>>>>> {null=cmis:lastModificationDate}:
>>>>>>>> [{http://docs.oasis-open.org/ns/cmis/core/200908/}value {}:
>>>>>>>> 2013-11-18T19:44:23.898+05:30],
>>>>>>>> {http://docs.oasis-open.org/ns/cmis/core/200908/}propertyId
>>>>>>>> {null=cmis:parentId}: , {http://www.alfresco.org}aspects
{}:
>>>>>>>> [{http://www.alfresco.org}appliedAspects {}: P:app:uifacets,
>>>>>>>> {http://www.alfresco.org}properties {}:
>>>>>>>> 
>>>>>>>> [{http://docs.oasis-open.org/ns/cmis/core/200908/}propertyString
>>>>>>>> {propertyDefinitionId=app:icon}:
>>>>>>>> [{http://docs.oasis-open.org/ns/cmis/core/200908/}value {}:
>>>>>>>> space-icon-default],
>>>>>>>> 
>>>>>>>> {http://docs.oasis-open.org/ns/cmis/core/200908/}propertyString
>>>>>>>> {propertyDefinitionId=cm:description}:
>>>>>>>> [{http://docs.oasis-open.org/ns/cmis/core/200908/}value {}:

>>>>>>>> The
>>>>>>>> company root space],
>>>>>>>> 
>>>>>>>> {http://docs.oasis-open.org/ns/cmis/core/200908/}propertyString
>>>>>>>> {propertyDefinitionId=cmis:policyText}: ,
>>>>>>>> 
>>>>>>>> {http://docs.oasis-open.org/ns/cmis/core/200908/}propertyString
>>>>>>>> {propertyDefinitionId=cm:title}:
>>>>>>>> [{http://docs.oasis-open.org/ns/cmis/core/200908/}value {}:

>>>>>>>> Company
>>>>>>>> Home]], {http://www.alfresco.org}appliedAspects {}: 
>>>>>>>> P:cm:titled,
>>>>>>>> {http://www.alfresco.org}appliedAspects {}: 
>>>>>>>> P:sys:localized]]],
>>>>>>>> allowable
>>>>>>>> actions=Allowable Actions [allowable 
>>>>>>>> actions=[CAN_UPDATE_PROPERTIES,
>>>>>>>> CAN_GET_FOLDER_TREE, CAN_GET_PROPERTIES, 
>>>>>>>> CAN_GET_OBJECT_RELATIONSHIPS,
>>>>>>>> CAN_GET_DESCENDANTS, CAN_GET_APPLIED_POLICIES, 
>>>>>>>> CAN_GET_CHILDREN,
>>>>>>>> CAN_CREATE_DOCUMENT, CAN_CREATE_FOLDER, 
>>>>>>>> CAN_CREATE_RELATIONSHIP,
>>>>>>>> CAN_GET_ACL, CAN_APPLY_ACL]][extensions=null], change event

>>>>>>>> info=null,
>>>>>>>> ACL=null, is exact ACL=null, policy ids=null, 
>>>>>>>> relationships=[],
>>>>>>>> renditions=[]][extensions=null]
>>>>>>>>
>>>>>>>> It then switches on the objectData's baseTypeId
>>>>>>>>
>>>>>>>> which uses the entry in the properties.properties object
as
>>>>>>>>
>>>>>>>> PropertyData<?> property =
>>>>>>>> properties.getProperties().get("cmis:baseTypeId");
>>>>>>>>
>>>>>>>> but as you can see above the properties.properties collection

>>>>>>>> is empty.
>>>>>>>>
>>>>>>>> since the value returned is null, the switch NPEs on me.
>>>>>>>>
>>>>>>>> So i'm not sure why the properties.properties collection
is 
>>>>>>>> empty.
>>>>>>>>
>>>>>>>> Any help would be greatly appreciated.
>>>>>>>>
>>>>>>>> dave


Mime
View raw message