The blog formerly known as The Strawberry Project

Tags

ACM alfresco beta blackberry bold BRDF confluence connections corsica Cycling domino eclipse edrm evo2 expeditor facebook fail firefox garmin geotag glassfish gps humax ibm joost kapow kona lotus memory leak mpeg_streamclip notes orange OS X OS_X phd POLDER process_server profiles quickplace ruby safari sametime vacation websphere wiki

Me Out There

Digg  Facebook  Last.fm  LinkedIn  reddit  

Twitter Updates

    Recent Comments

    TripIt Updates

    Gallery

    OLYMPUS DIGITAL CAMERA         OLYMPUS DIGITAL CAMERA         OLYMPUS DIGITAL CAMERA         OLYMPUS DIGITAL CAMERA         OLYMPUS DIGITAL CAMERA         OLYMPUS DIGITAL CAMERA

    Meta

    Liferay / Alfresco

    On the back of getting Confluence up and running on Glassfish, on a Mac Mini, I’m now going to attempt to cram Liferay and Alfresco on there too, as I’d quite like to get a handle on the performance and footprint of the the two products. If it’s relatively low-fat, I can see that we could leverage this for rapid deployment point solutions – again on Glassfish as our chosen J2EE server.

    Update: I was talking nonsense. I looked at the installers for Liferay and they made me cry real tears at how horrid the distributions were. I’ve resolved to go and ‘do’ Open Portal instead, just as soon as I can extract myself from Facebook (which will be some day real soon now that I’m all Facebooked out).

    Right – apology time. I’ve pulled my head out of Facebook and come back to thinking about the Liferay / Alfresco post I originally made. I stand corrected on the ease of deployment front – I think I must have been in a very tired and dejected place then. Lucikly, Eduardo posted a little snippet saying that all was good with the world and that Liferay are distributing an official Liferay / Glassfish bundle.

    As recompense, I’ll run a review asap [I have to for work sanity anyway :) ]

    Start Slide Show with PicLens Lite PicLens

    Confluence on Glassfish (on OS X) Revisited

    Ok, this post is a repeat process of the other day, just to sanity check getting Confluence up and running on Glassfish, and actually deploying live on this very box. When we get a little more time in the office, we’ll probably look to deploy on Solaris and test integration with LDAP. Here I’m just using internal authentication for Confluence, but sticking a MySQL instance at the backend.

    To start off with, we need to grab the current version of Glassfish Beta 2
    % wget http://java.net/download/javaee5/v2_branch/promoted/Darwin/glassfish-installer-v2-b41d.jar

    It’s just under 70Mb, so won’t take that long to download. Not even for UK based folks at the mercy of BT’s so-called broadband offerings.

    What do you mean you don’t have wget? Pick up the binary here. And yes, you could use cURL if you really wanted to, but my memory is almost at capacity these days, and so I find the simple methods are often the only route open to me.

    Follow the glassfish install instructions – in this instance I’m installing in /usr/local – which is where my jar file is currently residing.

    % java -Xmx256m -jar glassfish-installer-v2-b41d.jar

    This command will unbundle GlassFish and create a new directory structure rooted under a directory named ‘glassfish’.


    % cd glassfish

    Set the execute permission for the Ant binaries that are included with the GlassFish bundle.

    % chmod -R +x lib/ant/bin
    % lib/ant/bin/ant -f setup.xml

    Now given that this is going to be running on my test Mini, there’s not uch point me adding in the clustering support right now, so I can step over the Clustering supported installation, but if you have a bunch of Macs or Xserves you want to try this on, then just change step 4 from the above installation

    % lib/ant/bin/ant -f setup-cluster.xml

    To test out Confluence, I’m going to use a Confluence Personal Server license from Atlassian. You need to head on over to Atlassian and setup an account to apply for a Personal Server License, which is valid for 12 months. The license will give you a 2 user limited version of the Wiki. That is to say 2 active registered users at any one time, if you catch my drift. You can, of course, leave anonymous access on for spaces that you want the world and their wife to have access to if you are so inclined and don’t have IP restrictions to contend with.

    The current version of Confluence at the time of writing is: 2.5.3, and you can grab it using:

    % wget http://www.atlassian.com/software/confluence/downloads/binary/confluence-2.5.3.tar.gz

    Which will give you the EAR/WAR deployment version as opposed to the Tomcat standalone version which you may recall is the cause of my initial pain and reason for looking in to Glassfish in the first place.

    Preparing Confluence for install.

    Unpack Confluence

    % tar -zxvf confluence-2.5.3.tar.gz
    % cd confluence-2.5.3
    % vi confluence/WEB-INF/classes/confluence-init.properties

    Edit the properties file to point confluence at a directory you want to use for storing uploads n’ stuff. In this case I’ll use one of the defaults in the file and create the directory structure on the mini – before I forget :)

    % mkdir -p /var/data/confluence

    Haven’t tried an EAR build and deploy (yet), but WAR definitely works – as per previous mail.

    Build the WAR by running the build script

    % sh build.sh

    Once the build is complete, you’ll find the output in ./dist
    Bung the resulting file in your glassfish autodeploy directory

    % cp dist/atlassian-confluence-2.5.3.war /usr/local/glassfish/domains/domain1/autodeploy

    Now in this case I’m going to use MySQL to handle content for Confluence. Don’t sneer (particularly not you Rasputnik), as it’s already running on the box for other reasons. Maybe sometime soon I can do a clean up and shift to Postgres – wouldn’t hold out hope of that happening anytime soon. For the record, Atlassian like Postgres, but support MySQL 4.1+ (but not 5), Oracle 10g+ and DB2 8.2+.

    We’ll need the JDBC Connector for MySQL which you can grab from MySQL at http://www.mysql.com/products/connector/j/index.html
    Unpack the distribution and copy the jar into glassfish/lib


    % tar -zxvf mysql-connector-java-5.0.6.tar.gz
    % cp mysql-connector-java-5.0.6/mysql-connector-java-5.0.6-bin.jar /usr/local/glassfish/lib

    Restart Glassfish to get this picked up.


    % asadmin stop-domain domain1
    % asadmin start-domain domain1

    The next task is to setup a JDBC Resource and Connection Pool in Glassfish. You can either do this through the cmdline, or through the GUI if you’re feeling all point-and-click.

    I’ve already setup my MySQL DB and added grants to the user I’m going to use for the service, so I can use that information here now. Then go and create your JDBC resource. Remember the name of the JDBC Resource, you’ll need it during the Confluence install.

    Now without changing anything else, the deployed copy of Confluence will be running on http://hostname.foo:8080/atlassian-confluence-2.5.3/

    I’m out of time to look at virtual servers and/or apache mod_proxy as options right now (though the former will get attention first)

    Easy-peasey-lemon-squeezy – and you can see it in action on breadedcod.com

    Start Slide Show with PicLens Lite PicLens

    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.

    The Definitive Guide to Humax 9200T video transfer to a Mac

    OK, I’ve just looked at the most recent Google brainwave inversion tracking stats for the site and found some traffic from discussion.apple.com. Seems that someone flagged the original Humax post I made as a ‘long winded’ approach to getting video from everyones’ (well, in the UK at least) twin decoder DVB PVR and converting it from MPEG TS.

    Looking back at that post, it’s slightly out of date, so I’m re-casting that information here for people to follow as a simple recipe to video success on their Macs.

    What you need to do:

    1) Get a copy of the HumaxGUI application from Andrew Smith’s site and install it.

    2) Connect your Hummy up to your Mac with a suitably long USB cable.

    3) Open the HumaxGUI Application and connect to your PVR. This works just like an average FTP package – select the file you want and hit transfer.

    4) Go and make tea, and more tea, and perhaps do the ironing. Take the dog for a walk, come back in, take a nap etc.

    (Yes the USB implementation that Humax have achieved absolutely stinks for fast data transfer – so you’ll have time on your hands. The best approach here is to queue up what you want to transfer and then let it batch run overnight.)

    5) Once you have the files on your Mac, you will need to either watch the files with something like VLC which will run just about anything.

    6) If you want to change the video format to something else (QT, MP4 or MPEG2) then you will need to transcode it using either VLC (not had much luck there myself), or use the excellent MPEG Streamclip. The only caveat here is that for MPEG2, you might need to buy a copy of the Quicktime MPEG2 component from the Apple Store online. I think this runs at around £15 / $20.

    That’s all there is to it. Honest.