Hi Ashish,
That's a really good starting point! The Workbench is a good benchmark.
Unfortunately, the exception doesn't provide any details.
Could you increase the log level (in the Workbench Log window)? Maybe
there is more information in CXF debug messages.
Maybe a CXF library is missing?!?
You can also try adding a log message in the catch block of the port
provider.
Cheers,
Florian
Florian,
Thanks for your response.
Today, I successfully recompiled the chemistry source (from tag -
0.7.0)using the CXFPortProvider implementation that was left in there
from the past. I mimicked the
chemistry-opencmis-client-bindings-websphere POM artifact and created
a chemistry-opencmis-client-bindings-cxf POM. I tried the following
successfully using the CXF client bindings -
Folder creation - (session.getObjectByPath followed by
Folder.createFolder)
Document creation - (Folder.createDocument)
Type tree retrieval - (session.getTypeDescendants)
We haven't really used much functionality within Alfresco yet. So I
do not have a really strong test suite beyond the above, unless I
write more test cases. I thought the opencmis-workbench would be a
good benchmark to shake out. Let me know if you agree.
Anyways, I tried to test the newly compiled workbench (with the cxf
bindings and cxf jars in the classpath, and the jax-ws-rt-2.1.7.jar
removed from the workbench\lib folder). However I get the following
error during workbench login ( SessionFactoryImpl.getRepositories) -
17:31:02 DEBUG dings.spi.webservices.CmisWebServicesSpi:
Initializing Web Services SPI...
17:31:02 DEBUG ngs.spi.webservices.AbstractPortProvider:
Initializing Web Service
org.apache.chemistry.opencmis.binding.webservices.RepositoryService...
17:31:02 ERROR hemistry.opencmis.workbench.ClientHelper:
CmisConnectionException: Cannot initalize Web Services service object
[org.apache.chemistry.opencmis.binding.webservices.RepositoryService]:
org.apache.cxf.service.factory.ServiceConstructionException: Failed to
create service.
org.apache.chemistry.opencmis.commons.exceptions.CmisConnectionException:
Cannot initalize Web Services service object
[org.apache.chemistry.opencmis.binding.webservices.RepositoryService]:
org.apache.cxf.service.factory.ServiceConstructionException: Failed
to
create service.
at
org.apache.chemistry.opencmis.client.bindings.spi.webservices.AbstractPortProvider.initServiceObject(AbstractPortProvider.java:288)
at
org.apache.chemistry.opencmis.client.bindings.spi.webservices.AbstractPortProvider.getPortObject(AbstractPortProvider.java:206)
at
org.apache.chemistry.opencmis.client.bindings.spi.webservices.AbstractPortProvider.getRepositoryServicePort(AbstractPortProvider.java:109)
at
org.apache.chemistry.opencmis.client.bindings.spi.webservices.RepositoryServiceImpl.getRepositoryInfos(RepositoryServiceImpl.java:57)
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)
at
org.apache.chemistry.opencmis.workbench.model.ClientSession.connect(ClientSession.java:184)
at
org.apache.chemistry.opencmis.workbench.model.ClientSession.<init>(ClientSession.java:103)
at
org.apache.chemistry.opencmis.workbench.LoginDialog.createClientSession(LoginDialog.java:535)
at
org.apache.chemistry.opencmis.workbench.LoginDialog$1.actionPerformed(LoginDialog.java:199)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown
Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown
Source)
17:31:02 ERROR hemistry.opencmis.workbench.ClientHelper: Error code:
0
17:51:13 DEBUG dings.spi.webservices.CmisWebServicesSpi:
Initializing Web Services SPI...
17:51:13 DEBUG ngs.spi.webservices.AbstractPortProvider:
Initializing Web Service
org.apache.chemistry.opencmis.binding.webservices.RepositoryService...
17:51:13 ERROR hemistry.opencmis.workbench.ClientHelper:
CmisConnectionException: Cannot initalize Web Services service object
[org.apache.chemistry.opencmis.binding.webservices.RepositoryService]:
org.apache.cxf.service.factory.ServiceConstructionException: Failed to
create service.
org.apache.chemistry.opencmis.commons.exceptions.CmisConnectionException:
Cannot initalize Web Services service object
[org.apache.chemistry.opencmis.binding.webservices.RepositoryService]:
org.apache.cxf.service.factory.ServiceConstructionException: Failed
to
create service.
at
org.apache.chemistry.opencmis.client.bindings.spi.webservices.AbstractPortProvider.initServiceObject(AbstractPortProvider.java:288)
at
org.apache.chemistry.opencmis.client.bindings.spi.webservices.AbstractPortProvider.getPortObject(AbstractPortProvider.java:206)
at
org.apache.chemistry.opencmis.client.bindings.spi.webservices.AbstractPortProvider.getRepositoryServicePort(AbstractPortProvider.java:109)
at
org.apache.chemistry.opencmis.client.bindings.spi.webservices.RepositoryServiceImpl.getRepositoryInfos(RepositoryServiceImpl.java:57)
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)
at
org.apache.chemistry.opencmis.workbench.model.ClientSession.connect(ClientSession.java:184)
at
org.apache.chemistry.opencmis.workbench.model.ClientSession.<init>(ClientSession.java:103)
at
org.apache.chemistry.opencmis.workbench.LoginDialog.createClientSession(LoginDialog.java:535)
at
org.apache.chemistry.opencmis.workbench.LoginDialog$1.actionPerformed(LoginDialog.java:199)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown
Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown
Source)
17:51:13 ERROR hemistry.opencmis.workbench.ClientHelper: Error code:
0
-----Original Message-----
From: Florian Müller [mailto:[email protected]]
Sent: Wednesday, August 22, 2012 7:53 AM
To: [email protected]
Cc: Desai, Ashish (CGI Federal)
Subject: Re: Apache Chemistry - compatibility with Apache CXF
Hi Ashish,
Nothing has changed since the conversations you have mentioned.
There is code, but it is unfinished and untested. Since there is no
driver for the CXF support, I don't expect that is going to change
any
time soon.
If you want to pick it up, I'm happy to assist you. But I don't want
to touch a complex feature like this without demand.
Florian
Hello,
We are currently using Apache Chemistry(0.6.0) to communicate with
Alfresco (4.0.1).
Chemistry internally seems to use JAX-WS Reference Implementation
(jax-ws-rt-2.1.7.jar) as the WS service provider.
Our project architecture is using Apache CXF elsewhere in the
architecture. We are starting to run into issues because of this
usage of two different stacks (Apache CXF and jax-ws-rt.2.1.7.jar),
when it comes to using them in the same Java container.
I was wondering if there was any way to make Apache Chemistry work
with Apache CXF?
I tried changing the SPI using the system property
-Djavax.xml.ws.spi.Provider=org.apache.cxf.jaxws.spi.ProviderImpl,
but soon found out that the chemistry source code is specifically
looking for Sun implementation classes like -
com.sun.xml.ws.developer.WSBindingProvider
I see the following posts from Florian Muller that indicate that
some
work has been done, but it looks like a point in time fix that was
provided for that specific scenario.
http://dev.day.com/discussion-groups/content/lists/cmis-chemistry/2011
-01/2011-01-14__OpenCMIS_Incompatibility_with_CXF_kmvgejegno.html
http://mail-archives.apache.org/mod_mbox/chemistry-dev/201101.mbox/%3C
[email protected]%3E
Please let me know if any further pointers are available that I may
have missed.