Confluence on OS X Glassfish

HEALTH WARNING – These are roughcut notes at the moment. I’ll tidy them up as soon as I get a chance.

Have been re-jigging stuff on this box today to provide enough space for Atlassian’s rather lovely wiki server, Confluence. As Rasputnik has been so busy playing around with Glassfish recently, I thought I’d follow suit and take a look at getting Confluence (and maybe JIRA, as a test) on Glassfish for many of the reasons that he has been looking at it.

sandbox:~/src/glassfish fishsticks$ java -Xmx256m -jar glassfish-installer-v1_ur1-p01-b02.jar

n.b. actually I ended up running with Glassfish v2 in the end – need to re-edit this bit.

sandbox:~/src/glassfish fishsticks$ cd glassfish
sandbox:~/src/glassfish fishsticks$ sh lib/ant/bin/ant -f setup.xml

That’s the unpack and build done. Now it’s time to add GF’s bin directory to the path. Note: I’m doing this temporarily and will revisit these notes to tidy up later.

sandbox:~/src/glassfish fishsticks$ export PATH=$PATH:/Users/fishsticks/src/glassfish/glassfish/bin

And once that’s done, it’s time to run up the server for the first time

sandbox:~/src/glassfish fishsticjs$ asadmin start-domain domain1
Starting Domain domain1, please wait.
Log redirected to /Users/fishsticks/src/glassfish/glassfish/domains/domain1/logs/server.log.
Jun 8, 2007 9:21:43 PM com.sun.enterprise.addon.AddonInstaller installAllAddons
WARNING: Error while installing the addon resourceadapters
java.io.FileNotFoundException: /Users/fishsticks/src/glassfish/glassfish/domains/domain1/config/domain-registry (Permission denied)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.(FileOutputStream.java:179)
...
at com.sun.enterprise.cli.framework.CLIMain.main(CLIMain.java:63)
Domain domain1 is ready to receive client requests. Additional services are being started in background.
Domain [domain1] is running [Sun Java System Application Server Platform Edition 9.0_01 (build b02-p01)] with its configuration and logs at: [/Users/fishsticks/src/glassfish/glassfish/domains].
Admin Console is available at [http://localhost:4848].
Use the same port [4848] for "asadmin" commands.
User web applications are available at these URLs:
[http://localhost:8080 https://localhost:8181 ].
Following web-contexts are available:
[/web1 /asadmin ].
Standard JMX Clients (like JConsole) can connect to JMXServiceURL:
[service:jmx:rmi:///jndi/rmi://www.local:8686/jmxrmi] for domain management purposes.
Domain listens on at least following ports for connections:
[8080 8181 4848 3700 3820 3920 8686 ].

Hmm – better check out that exception in a bit – probably a permissions problem because I’m being hopeless and running the process as an unpriveleged user. D’oh!

Anyhoo. We need to grab the EAR/WAR distribution of Confluence from Atlassian. For the purposes of this proof of concept, I’m going to use a Personal Wiki license for the install, but the method is the same for whatever version of Confluence you’re running.

Unpack the distribution and cd to the source directory. A quick edit of the ./confluence/WEB-INF/lib/classes/confluence-init.properties before building the WAR sorts out where Confluence will store stuff. Once that’s done, just run Atlassian’s build script.

sh build.sh

The resulting WAR file is in ./dist/ and can be uploaded to Glassfish using the management console running on http://localhost:4848/ or dropped in to the domain1/autodeploy directory if you fancy skipping the GUI approach. Dick will likely chastise me for not doing it command line stylee.

Once it’s deployed, head over to localhost:8080/atlassian-confluence-2.5.3 and follow the normal install procedure. Hey presto! It works just fine and dandy.

So far this is just the vanilla install – no DB backend and no LDAP at the moment, but more on that in a while.

  • Share/Bookmark

Related posts:

  1. Roller on Glassfish
  2. Bad, Bad Tomcat!
  3. Mailnames revisited
  4. Google Desktop for Mac – Why?
  5. Lotus Connections continued…

About the Author

Paul lives, rides and works in Cardiff, South Wales. His work seems to largely entail fixing things and keeping wheels on. Officially, he is actively engaged and interested in Enterprise Architecture these days, but has a secret past that involved standing around on glaciers collecting meltwater samples, and walking through endless fields of wheat taking radiance measurements.