Documentum Mobile Server and iPad Application and DNS stuff
Well, suppose you installed the Documentum Mobile Server on your Tomcat application server under http://dctmappserver/mobile URL.
The first thing you need to do is define the profile. See my previous post for details on that.
It can come in handy to test the accesibility of the mobile server from a browser. You can safely do this by accesing this URL:
This produces a nice XML with more navigationable URL-s such as http://dctmappserver/mobile/repositories/REPONAME/folders). Enjoy them.
For more hints visit the web.xml.
After all goes well, the application will start to chat with the server when needed. Communication is based on simple JSON HTTP calls. Authentication is HTTP BASIC (so you can play from your browser..).
The conversation is very clean. Again, thanks for not using DFS. Much appreciated!
Ok, but why are you telling all this? Because I was kind of forced to look into it when my installation of the software did not work properly. Browsing was ok but I could not see any specific document type/format icons and could not download any document content.
And now the fun stuff.
The iPad app runs on… well.. your iPad. Which network is your iPad connected to (3G, public WiFi, VPN)? This matters quite a lot because you iPad will need to solve some DNS names while you frenetically touch it :).
“names”? As in plural? Yes!
One name: the application server where the mobile server is installed to. This is easily controllable since you entered it when configuring the plugin. So you can put in IP there and forget about DNS resolution.
Second name: the ACS name. This is the ACS server communicated by the content server when you need to download content of a file. While that specific ACS might be accesible by regular Documentum web end users or enteprise applications… your iPad might have a problema with that. Because of the DNS resolution or the firewall. You can control what will be used here from within Documentum Administrator at the repository Distributed Content ACS configuration… ok…
Third name: the thumbnail server name. This is used at least for providing a nice icon for each object you see when browsing on the iPad. And this “thumbnail URL” is a mistery where it comes from. I’m not sure actually who generates it. The thumbnail server has multiple (uh!) configuration files, each in different places and in different formats (user.dat, storage.dat, pfile.txt, server.xml, …). Not documented, of course. Inspecting these files you can see in storage.dat (in it’s “binary” format) what looks like an URL template for getting thumbnails. And which looks extremely and very similar to the one returned in the JSON talk between the app and the mobile server. Here the server name seems to be the one defines as the computer name (I’m not sure if it’s the FQDN… could be). Nobody asked this during configuration so it’s taken automatically when you configure the thumbnail server for each docbase. And why this is not good? Because your iPad might not know that server by that name. And… no nice icons for you!
One can think you can change the value here (binary edit, mind you) and have the issue solved. Wrong! At least for me. I changed it, restarted everything on earth… nothing happened. So.. mind you.. in order to get thumbnails working properly in Documentum Mobile Application on iPad you need to provide DNS services to your iPad to solve correctly that server name. How do you do that? It’s your task, for me I solved it so it can be done.
Now I’m off to see the custom properties handling and tasks.
As of right now custom properties are not displayed for documents. And not even transferred from the server (even though a lot of other/all system attributes are transferred by default).
Also, I have trouble opening tasks… Some null pointer exception on the server.
PS: Did I tell you that I think java.lang.NullPointerException is always a developer error?
I hope this helps other demonstrate this mobile app for Documentum. Making it easier for the new user. Meanwhile somebody is pulling a lot of hair.