As the old adage goes necessity is the mother of trouble, oh sorry I meant invention or something like that. I had the immediate need to have wiki in our landscape. Here is why. Besides being a consultant constantly on the road, I also manage our solution center for my employer. We have quite a few systems setup as demo systems for consulting presentations. It was getting difficult to manage documentation about the systems and the applications we have installed on these systems. In my opinion wiki was best remedy for my woes. Now any one doing any thing with the systems or application inside the solution center can document it right there. No more searching the emails. Having implemented PHP based wikis I thought of installing Mediawiki first. It is not at all difficult to integrate LAMP based wikis with portal. But that won’t be fun right. I mean here I have the power of SAP’s Netweaver platform waiting to be unleashed and I am going ahead and putting another stack in the mix which no doubt has to be managed as well. So what do you do? Naturally hunt for a J2EE based wiki which can be deployed easily on WebAS.
In my hunt for a suitable wiki there were couple of things that I was looking for – it should be
- easy to use,
- provision of templates,
But the prime requirement for me was it should NOT be database driven. A database driven wiki would have required more time to port. So SnipSnap , XWiki all were out of picture. I settled on JSPWiki which also holds the distinction for being the oldest among Java wikis.
JSPWiki provides a .war or web archive file to be deployed in the J2EE engine. The task was to deploy this JSPWiki.war file on to WebAS. Before deployment some customizations have to be preformed. I chose to do it the dirty way. So I appended the .zip extension to the .war file. Extracted the jspwiki.properties out of the archive. Made the necessary customizations essentially pointed to the directories which will act as the file and attachment store for wiki. REMEMBER for windows if you are considering making D:wiki as your file store you have to specify it as D:
wiki. You can also specify the template over here but we will come to that later as I want to show another place for modifying jspwiki.properties file. After modifying this properties file I repackaged it and renamed the file back to .war.
Since most of the deployments these days occur thru SDM I started with that. But failed on my very first attempt. No need to worry. There is another nice tool that SAP provides with WebAS called Deployment Tool. In short open the deployment tool, create a new project, add the .war file to this project, create a .ear file, connect to j2ee engine, deploy the .ear file. For more info on how to perform all these tasks please read my Running EP5.0 SP5 PDK on SAP J2EE 6.20 on porting PDK 5.0 from Tomcat to J2EE. Once deployed you can hit the wiki at the following URL
If you have worked with J2EE engine for some time you would know that where is this application is deployed, during the deployment phase .ear file expanded and copied at place in the engine. Here is my path, let us call it WEB-INF.
Once the above changes are done we have to restart the JSPWiki application to reflect these changes. How do you do that? One very easy and brute force method is to restart the J2EE engine. But that would be like using a gun to kill a fly. A better way is to launch Visual Admin, expand server node, services, Deploy service, and select the Wiki application node. From here you can stop and start wiki application using the buttons given on the right hand side.
Here is a screen shot for your viewing pleasure.
It shouldn’t be too difficult from here to integrate this wiki with the portal using a URL based iView. I wanted to integrate the security features provided by WebAS with JSPWiki Application but that for some other time. I hope this weblog was useful for you. Besides migrating an open source J2EE based wiki to WebAS we learnt about using Deployment tool to create .ear files and deploying them, modifying properties file of these applications and restarting these applications from Visual Admin.