In its version 1.0, IBM CMIS was shipped as a separate application. But now, where can you get it and how can you install IBM CMIS? If you are looking for it in the Software Catalog from IBM, you won’t find it. And that’s normal because it is now part of IBM Content Navigator.
We’ll see how to install CMIS. You can follow this procedure when you install ICN, upgrade ICN, or even if you have already installed it, just re-open the configuration tool. The procedure start when you are starting the IBM Content Navigator Configuration and Deployment Tool. If you are installing/upgrading ICN, it will start by itself. If you have ICN already installed, you can launch this tool by running:
/opt/IBM/ECMClient/configure/configmgr
The procedure is quite straight forward, when you open your profile (either create, update or modify, depending if you are installing for the first time, upgrading or only installing CMIS):
- Select IBM CMIS for FileNet Content Manager
- You might need to re-enter your WebSphere password at this point (Right Click on the profile and Edit Profile Properties…
- Run the Update the FileNet P8 Client Connector Files task
- Restart the ICN Content Navigator Configuration and Deployment tool
- Re-enter the WebSphere password (see 2.)
- Add, configure and run the Configure the Connection to Your LDAP Server
- Add and run the task Configure the IBM CMIS Client Authentication Method
- Complete (host/port) and run the task Configure IBM CMIS for FileNet Content Manager
- Rebuild the Web Application by running the task Build the Web Application
- Redeploy the application by running the task Deploy the Web Application
- Then access http://host:9080/fncmis/index.jsp to check if it works
- You can run the Java snippet at the end of this post to make sure everything works
Here is everything in pictures:
And finally you can do an ultimate verification by running this snippet to make sure the CMIS connection works. You need opencmis jar to make it work.
SessionFactory factory = SessionFactoryImpl.newInstance(); Map<String, String> parameter = new HashMap<String, String>(); parameter.put(SessionParameter.USER, "P8Admin"); // Your login here parameter.put(SessionParameter.PASSWORD, "YourPassword"); // Your password here parameter.put(SessionParameter.REPOSITORY_ID, "TARGETOS"); // Your object store symbolic name here parameter.put(SessionParameter.ATOMPUB_URL, "http://host:9080/fncmis/resources/Service"); // Your host/port here parameter.put(SessionParameter.BINDING_TYPE, BindingType.ATOMPUB.value()); Session session = factory.createSession(parameter); System.out.println("Name : " + session.getRepositoryInfo().getName()); ItemIterable<CmisObject> children = session.getRootFolder().getChildren(); for (CmisObject cmisObject : children) { System.out.println(cmisObject.getName()); }
You now have a working CMIS platform!