Building the latest version of the code in the trunk, the InMemory
Repository can't deploy anymore, it returns this exception trying deploying
on Jetty:

 GRAVE: WSSERVLET11: failed to parse runtime descriptor:
> com.sun.xml.ws.util.ServiceConfigurationError:
> com.sun.xml.ws.api.pipe.TubelineAssemblerFactory: Provider
> org.apache.chemistry.opencmis.client.bindings.spi.webservices.wss.WssTubelineAssemblerFactory
> is specified in
> file:/Users/piergiorgiolucidi/Documents/workspaces/manifold/opencmis/chemistry-opencmis-client/chemistry-opencmis-client-bindings/target/classes/META-INF/services/com.sun.xml.ws.api.pipe.TubelineAssemblerFactorybut
> could not be instantiated: java.lang.ClassCastException
> com.sun.xml.ws.util.ServiceConfigurationError:
> com.sun.xml.ws.api.pipe.TubelineAssemblerFactory: Provider
> org.apache.chemistry.opencmis.client.bindings.spi.webservices.wss.WssTubelineAssemblerFactory
> is specified in
> file:/Users/piergiorgiolucidi/Documents/workspaces/manifold/opencmis/chemistry-opencmis-client/chemistry-opencmis-client-bindings/target/classes/META-INF/services/com.sun.xml.ws.api.pipe.TubelineAssemblerFactorybut
> could not be instantiated: java.lang.ClassCastException
> at com.sun.xml.ws.util.ServiceFinder.fail(ServiceFinder.java:233)
> at com.sun.xml.ws.util.ServiceFinder.access$300(ServiceFinder.java:141)
> at com.sun.xml.ws.util.ServiceFinder$LazyIterator.next(
> ServiceFinder.java:379)
> at com.sun.xml.ws.api.pipe.TubelineAssemblerFactory.create(
> TubelineAssemblerFactory.java:104)
> at com.sun.xml.ws.server.WSEndpointImpl.<init>(WSEndpointImpl.java:147)
> at com.sun.xml.ws.server.EndpointFactory.createEndpoint(
> EndpointFactory.java:218)
> at com.sun.xml.ws.api.server.WSEndpoint.create(WSEndpoint.java:467)
> at com.sun.xml.ws.transport.http.DeploymentDescriptorParser.parseAdapters(
> DeploymentDescriptorParser.java:253)
> at com.sun.xml.ws.transport.http.DeploymentDescriptorParser.parse(
> DeploymentDescriptorParser.java:147)
> at
> com.sun.xml.ws.transport.http.servlet.WSServletContextListener.contextInitialized(
> WSServletContextListener.java:108)
> at org.mortbay.jetty.handler.ContextHandler.startContext(
> ContextHandler.java:549)
> at org.mortbay.jetty.servlet.Context.startContext(Context.java:136)
> at org.mortbay.jetty.webapp.WebAppContext.startContext(
> WebAppContext.java:1282)
> at org.mortbay.jetty.handler.ContextHandler.doStart(
> ContextHandler.java:518)
> at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499)
> at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50
> )
> at org.mortbay.jetty.handler.HandlerCollection.doStart(
> HandlerCollection.java:152)
> at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50
> )
> at org.mortbay.jetty.handler.HandlerWrapper.doStart(
> HandlerWrapper.java:130)
> at org.mortbay.jetty.Server.doStart(Server.java:224)
> at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50
> )
> at org.apache.manifoldcf.cmis_tests.Base.setUp(Base.java:333)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(
> NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(
> DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(
> FrameworkMethod.java:44)
> at org.junit.internal.runners.model.ReflectiveCallable.run(
> ReflectiveCallable.java:15)
> at org.junit.runners.model.FrameworkMethod.invokeExplosively(
> FrameworkMethod.java:41)
> at org.junit.internal.runners.statements.RunBefores.evaluate(
> RunBefores.java:27)
> at org.junit.internal.runners.statements.RunAfters.evaluate(
> RunAfters.java:31)
> at org.junit.runners.BlockJUnit4ClassRunner.runNotIgnored(
> BlockJUnit4ClassRunner.java:79)
> at org.junit.runners.BlockJUnit4ClassRunner.runChild(
> BlockJUnit4ClassRunner.java:71)
> at org.junit.runners.BlockJUnit4ClassRunner.runChild(
> BlockJUnit4ClassRunner.java:49)
> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
> at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
> at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(
> JUnit4TestReference.java:49)
> at org.eclipse.jdt.internal.junit.runner.TestExecution.run(
> TestExecution.java:38)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(
> RemoteTestRunner.java:467)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(
> RemoteTestRunner.java:683)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(
> RemoteTestRunner.java:390)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(
> RemoteTestRunner.java:197)
> Caused by: java.lang.ClassCastException
> at java.lang.Class.cast(Class.java:2990)
> at com.sun.xml.ws.util.ServiceFinder$LazyIterator.next(
> ServiceFinder.java:374)
> ... 43 more



2011/8/3 Piergiorgio Lucidi <[email protected]>

> I'm building OpenCMIS to investigate me too :-P
>
>
> 2011/8/3 Jens Hübel <[email protected]>
>
>> Thanks for posting! I will try to rebuild and take a look why it does not
>> work. To get further information I need the server logs, but with your code
>> I can debug it.
>>
>> Jens
>>
>> -----Original Message-----
>> From: Piergiorgio Lucidi [mailto:[email protected]]
>> Sent: Mittwoch, 3. August 2011 14:48
>> To: [email protected]
>> Subject: Re: CMIS and Lucene
>>
>> Hi Jens,
>>
>> here the code of my integration test that is used to create some content
>> in
>> the InMemory Repository, the OpenCMIS server is running because it is
>> bootstrapped by Jetty / Maven. The CMIS Repository Connector works fine
>> with
>> Alfresco 3.4d Community, but I would like to have the OpenCMIS server in
>> the
>> test suite.
>>
>> In the following snippet I started to initialize the test environment with
>> a
>> new folder with a new content, here I don't have any problem, it works
>> with
>> the InMemory Repository:
>>
>>  private Session getCmisClientSession(){
>> >     // default factory implementation
>> >     SessionFactory factory = SessionFactoryImpl.newInstance();
>> >     Map<String, String> parameters = new HashMap<String, String>();
>> >     // user credentials
>> >     parameters.put(SessionParameter.USER, "dummyuser");
>> >     parameters.put(SessionParameter.PASSWORD, "dummysecret");
>> >     // connection settings
>> >     parameters.put(SessionParameter.ATOMPUB_URL,
>> CMIS_ENDPOINT_TEST_SERVER
>> > );
>> >     parameters.put(SessionParameter.BINDING_TYPE, BindingType.ATOMPUB
>> > .value());
>> >     // create session
>> >     return factory.getRepositories(parameters).get(0).createSession();
>> >   }
>> >  @Before
>> >   public void createTestArea()
>> >     throws Exception
>> >   {
>> >     try
>> >     {
>> >       Session session = getCmisClientSession();
>> >       //creating a new folder
>> >       Folder root = session.getRootFolder();
>> >       Map<String, Object> folderProperties = new HashMap<String,
>> > Object>();
>> >       folderProperties.put(PropertyIds.OBJECT_TYPE_ID, "cmis:folder");
>> >       folderProperties.put(PropertyIds.NAME, "testdata");
>> >
>> >       Folder newFolder = root.createFolder(folderProperties);
>> >       //create a new content in the folder
>> >       String name = "testdata1.txt";
>> >       // properties
>> >       // (minimal set: name and object type id)
>> >       Map<String, Object> contentProperties = new HashMap<String,
>> > Object>();
>> >       contentProperties.put(PropertyIds.OBJECT_TYPE_ID,
>> "cmis:document");
>> >       contentProperties.put(PropertyIds.NAME, name);
>> >
>> >       // content
>> >       byte[] content = "CMIS Testdata One".getBytes();
>> >       InputStream stream = new ByteArrayInputStream(content);
>> >       ContentStream contentStream = new ContentStreamImpl(name,
>> newBigInteger(content),
>> > "text/plain", stream);
>> >
>> >        // create a major version
>> >       Document newContent1 = newFolder.createDocument(contentProperties,
>> > contentStream, null);
>>
>>
>> But if I try to search the new content in the InMemory Repository, in the
>> same way I implemented in the CMIS Repository Connector:
>>
>>  ItemIterable<QueryResult> results = session.query("SELECT * FROM
>> > cmis:folder WHERE cmis:name='testdata'", false);
>> >       for (QueryResult result : results) {
>> >         String id = result.getPropertyValueById(PropertyIds.OBJECT_ID);
>> >       }
>>
>>
>>
>> It returns the following exception:
>>
>>  org.apache.chemistry.opencmis.commons.exceptions.CmisRuntimeException:
>> null
>> > at
>> >
>> org.apache.chemistry.opencmis.client.bindings.spi.atompub.AbstractAtomPubService.convertStatusCode(
>> > AbstractAtomPubService.java:450)
>> > at
>> >
>> org.apache.chemistry.opencmis.client.bindings.spi.atompub.AbstractAtomPubService.post(
>> > AbstractAtomPubService.java:568)
>> > at
>> >
>> org.apache.chemistry.opencmis.client.bindings.spi.atompub.DiscoveryServiceImpl.query(
>> > DiscoveryServiceImpl.java:141)
>> > at org.apache.chemistry.opencmis.client.runtime.SessionImpl$3.fetchPage(
>> > SessionImpl.java:557)
>> > at
>> >
>> org.apache.chemistry.opencmis.client.runtime.util.AbstractIterator.getCurrentPage(
>> > AbstractIterator.java:132)
>> > at
>> >
>> org.apache.chemistry.opencmis.client.runtime.util.CollectionIterator.hasNext(
>> > CollectionIterator.java:48)
>> > at org.apache.manifoldcf.cmis_tests.APISanityTest.createTestArea(
>> > APISanityTest.java:139)
>> > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> > at sun.reflect.NativeMethodAccessorImpl.invoke(
>> > NativeMethodAccessorImpl.java:39)
>> > at sun.reflect.DelegatingMethodAccessorImpl.invoke(
>> > DelegatingMethodAccessorImpl.java:25)
>> > at java.lang.reflect.Method.invoke(Method.java:597)
>> > at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(
>> > FrameworkMethod.java:44)
>> > at org.junit.internal.runners.model.ReflectiveCallable.run(
>> > ReflectiveCallable.java:15)
>> > at org.junit.runners.model.FrameworkMethod.invokeExplosively(
>> > FrameworkMethod.java:41)
>> > at org.junit.internal.runners.statements.RunBefores.evaluate(
>> > RunBefores.java:27)
>> > at org.junit.internal.runners.statements.RunAfters.evaluate(
>> > RunAfters.java:31)
>> > at org.junit.runners.BlockJUnit4ClassRunner.runNotIgnored(
>> > BlockJUnit4ClassRunner.java:79)
>> > at org.junit.runners.BlockJUnit4ClassRunner.runChild(
>> > BlockJUnit4ClassRunner.java:71)
>> > at org.junit.runners.BlockJUnit4ClassRunner.runChild(
>> > BlockJUnit4ClassRunner.java:49)
>> > at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
>> > at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
>> > at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
>> > at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
>> > at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
>> > at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
>> > at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(
>> > JUnit4TestReference.java:49)
>> > at org.eclipse.jdt.internal.junit.runner.TestExecution.run(
>> > TestExecution.java:38)
>> > at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(
>> > RemoteTestRunner.java:467)
>> > at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(
>> > RemoteTestRunner.java:683)
>> > at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(
>> > RemoteTestRunner.java:390)
>> > at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(
>> > RemoteTestRunner.java:197)
>>
>>
>> Let me know if you have any hints!
>>
>> Thank you again for your support.
>>
>> Regards,
>>
>> Piergiorgio
>>
>> 2011/8/3 Jens Hübel <[email protected]>
>>
>> > Hi Pergiorio,
>> >
>> > do you have a code piece that I can take a look at? What is your client
>> > API? Do you connect to Chemistry client API
>> (chemistry-opencmis-client-api)?
>> > Or perhaps you can grab the query sent from the log file?
>> >
>> > Thanks Jens
>> >
>> >
>> > -----Original Message-----
>> > From: Piergiorgio Lucidi [mailto:[email protected]]
>> > Sent: Mittwoch, 3. August 2011 13:22
>> > To: [email protected]
>> > Subject: Re: CMIS and Lucene
>> >
>> > Hi Jens,
>> >
>> > I contributed to the Apache ManifoldCF (ex Lucene Connector Framework)
>> > project implementing the CMIS Connector using OpenCMIS 0.4.0.
>> >
>> > Now I'm working on integration test trying to use the OpenCMIS InMemory
>> > Repository that is available from Apache Chemistry ;)
>> >
>> > I have some problems because now I'm finishing my test implementation
>> but
>> > it
>> > seems that I can't execute queries on the InMemory Repository, it
>> returns a
>> > null string in the convertStatusCode method.
>> >
>> > The CMIS Repository Connector that I implemented for ManifoldCF has a
>> job
>> > parameter that is the CMIS Query, this parameter is used by agents to
>> > select
>> > all the contents that needs to be indexed on the Output Connector (for
>> > example Apache Solr).
>> > Without a query feature exposed by the InMemory Repository I can't test
>> the
>> > connector in the right way.
>> >
>> > I tried to use the latest version of the InMemory Repository
>> > (0.5.0-SNAPSHOT) but with the same result.
>> >
>> > Have you got any ideas to solve this problem?
>> > Thank you for your support.
>> >
>> > Regards,
>> > Piergiorgio
>> >
>> >
>> > 2011/8/3 Jens Hübel <[email protected]>
>> >
>> > > Hi Chemistries,
>> > >
>> > >
>> > >
>> > > is anyone of us already involved in the Lucene project?
>> > >
>> > >
>> > >
>> > > Reading this here
>> > > http://search-lucene.com/m/wI38e1K3BWJ&subj=Re+CMIS+Connector+Tests
>> > >
>> > >
>> > >
>> > > I think it would make sense to give them an introduction to what we
>> have.
>> > >
>> > >
>> > >
>> > > if I understand this correctly one of the options they discuss is to
>> > create
>> > > an InMemory mock server. It does not make much sense to duplicate what
>> we
>> > > already have (and if we need getContentChanges() for that I am happy
>> to
>> > > implement this).
>> > >
>> > >
>> > >
>> > > Jens
>> > >
>> > >
>> > >
>> > >
>> >
>> >
>> > --
>> > Piergiorgio Lucidi
>> > Web: http://about.me/piergiorgiolucidi
>> >
>>
>>
>>
>> --
>> Piergiorgio Lucidi
>> Web: http://about.me/piergiorgiolucidi
>>
>
>
>
> --
> Piergiorgio Lucidi
> Web: http://about.me/piergiorgiolucidi
>
>


-- 
Piergiorgio Lucidi
Web: http://about.me/piergiorgiolucidi

Reply via email to