Thu - September 13, 2007
Web Standards Solutions & Bulletproof Web Design
The excellent Web Standards Solutions book has
been around for a while, but it is still the book I most often refer to
developers who are trying to move away from ugly tagitis-ridden table based
layouts and who want to embrace web standards, CSS layout and
styling.....
Posted at 02:35 PM
Read More
Fri - August 3, 2007
WebObjects Feed Aggregator
I had not looked at Yahoo pipes before until
Quinton from Australia posted about it on the WebObjects list. The nice thing is
that you can edit anyone's feed and save a customized copy under your own
profile. Here is the one I made from Quinton's original ....
Posted at 08:32 AM
Read More
Thu - July 19, 2007
Installing MySQL on OS X 10.4 Tiger
This article details how to setup MySQL 4.1 or
later on Mac OS X Tiger 10.4.x. Additionally it tells you how to add java
support and configure MySQL so that all new database tables use the InnoDB
transaction-safe database engine instead of the default MyISAM engine. This is
essential if you are writing applications with technologies such as WebObjects
that automatically utilize the ACID commit or rollback capabilities of a
transaction-safe database.
Posted at 09:52 AM
Read More
Tue - July 17, 2007
Monitoring and Resetting MySQL Replication
OK, so you have a nice replication setup, but how
do you know it is actually working, and what do you do when it stops? This short
article shows how to check and quickly fix replication that has stopped. This
procedure takes 2 minutes and can be done remotely on the command
line.
Posted at 10:51 AM
Read More
Wed - July 11, 2007
Eclipse Regex (Regular Expression) Plugin
Came across this little gem, "QuickREx
", the other day. Up to now I have used the free open source "RegexPlor.app"
for OS X, but I really like this open source Eclipse plugin ...
Posted at 11:49 AM
Read More
Thu - July 5, 2007
Importing a WOLips Project into Subversion Repository
Simple tutorial on how to do an initial import of
an existing WebObjects project into a Subversion repository using the Subclipse
plugin. At time of writing I had latest subversion (1.4.4) and subclipse (1.2.3)
installed.
Posted at 02:36 PM
Read More
Setting up Subclipse for access to a Subversion Repository
This is pretty simple task, but for completeness
of the Subversion articles I am doing, here it is .........
Posted at 12:55 PM
Read More
Setting Up Subversion Repository on OS X
Subversion is becoming more popular than CVS over
time as a source code version control system. Subversion is impressive in it's
design goals and from the outset, it's goals and objectives appear to be very
well thought out. Subversion is flexible and repositories can be made available
in many flexible ways from as simple as a repository on your local hard drive to
internet based repositories served over http or https
protocols.For this exercise we show
how to set up a simple repository on a network server with secure shell access.
The requirements of the repository are accessibility by a small stable
development team of 3 trusted inhouse developers with a need to update and
commit remotely outside of the local area network. The requirement for tunneling
repository traffic over ssh is simply to protect the small amounts of sensitive
data such as API pins or private SSL keys that are shared by the repository.
Also keep in mind that there are many, many ways to set up a Subversion
infrastructure. This is just one way that suits my needs and is based on the
concept explained in the Subversion book in the section SSH
configuration tricks . There are other ways and variations that may
suit your needs better.This article
assumes that you have a basic knowledge of unix command line
usage...
Posted at 12:41 PM
Read More
Fri - June 29, 2007
WebObjects Community Survey
Posted at 10:06 AM
Read More
Wed - June 27, 2007
Wonder Source Download, Installation, Setup and Upgrading
I had Wonder CVS source tree on disk and also had
some Wonder projects checked out directly from CVS into Eclipse workspace.
Anyhow, this means I had to update both simultaneously and it made sense to have
only one Wonder source tree on my hard drive, so I reconfigured for what I
consider the "ideal" Wonder setup for Eclipse development. While I was at it, I
decided I may as well document it for others .......
Posted at 12:17 PM
Read More
Sat
- April 21, 2007
Goodbye XCode!
At last, I am free of XCode ......
Posted at 03:58 PM
Read More
Tue - April 17, 2007
WOWODC 2007
Agenda just posted to the mailing lists by
Pascal Robert .......
nice agenda ..... can't wait to get the digital download afterward ..... great
job by the usual suspects in organizing this sharing of their extensive
knowledge and experience .........
Posted at 11:23 PM
Read More
Mon - March 12, 2007
Compiling MySQL from Source
OK, I just upgraded to a MacBook Pro Core 2 Duo.
Generally the binary distributions are easier to work with, but I need SSL
connections capability, so I have to compile from source to have that feature
included. Her is how...........
Posted at 01:47 PM
Read More
I Really Like MySQL
I really like MySQL. I definitely would recommend
it for any enterprise database beginner with the only caveat being that you
should configure your /etc/my.cnf paying attention to using innodb as the
default table engine.....
Posted at 01:19 PM
Read More
Fri - March 2, 2007
Templates in Eclipse
I am loving Eclipse more and more every time I
use. This IDE just rocks. Yes, it has it's quirks, but it still beats XCode
hands down ..... no competition whatsoever. With Eclipse, your productivity
soars. Anyway enough ranting, here is a tip on making your life easy with
Templates........ saving keystrokes = more productivity = "More Fun" (TM) (Mike
Schrag recently trademarked the "No Fun" statement on the wolips mailing list,
so I had better trademark "More Fun" before he grabs it ;-)
Posted at 09:27 PM
Read More
Wed - January 17, 2007
Adding a Second WebObjects Host to a Basic Config
This article explains how to add another computer
as a WebObjects application host to an existing simple setup. By simple setup, I
mean a setup where currently one computer is running the default WO setup of
being the apache web server and also hosting WO apps.
Posted at 09:59 PM
Read More
Tue - January 16, 2007
Creating a WebObjects Framework using Eclipse
Finally getting around to refactoring my biggest
XCode app by creating frameworks in Eclipse and reusing those in XCode. Creating
WebObjects frameworks in Eclipse is easy....
Posted at 02:40 PM
Read More
Mon - January 15, 2007
Nice Intro to Ant
If you are switching from XCode to Eclipse for
your WO development, then understanding 'ant', the popular java build tool is
very important. Check out this easy to digest PowerPoint presentation from John
Munsch:
http://www.johnmunsch.com/projects/Presentations/
Posted at 11:13 AM
Read More
Fri - January 5, 2007
Setting up Java Packages in XCode
I has a few source classes belonging to a package
and I had trouble figuring out how to set up the physical folder structure on
the hard drive and the group structure in XCode so that XCode would not change
its mind about where it expected the java files every time I tried to build the
app. Ray Kiddy
had the know how .......... here is a transcript ........
Posted at 04:28 PM
Read More
Tue - December
19, 2006
OpenSSL
Some useful links:
Posted at 12:05 PM
Read More
Mon - December
11, 2006
Nice OS X Command Line Guide
Even though the guide is named "OS X Server
Command Line Administration", anyone who is familializing themselves with unix
on OS X will benefit greatly from the first 6 chapters of this handy reference
manual......
Posted at 11:27 AM
Read More
Wed - December
6, 2006
SSL Virtual Hosting
I recently implemented branding or skinning on my
WebObjects app since we are allowing private label resellers to sell our product
offerings. Most of the site runs thru https. For our resellers, we decided to
implement host names of the form brand-name.domain.com since we could purchase a
wildcard https cert for *.domain.com. If we did not need https we would just
have given these resellers any domain name they could get their hands on.
Anyway, I discovered that you cannot, right now anyway,
do SSL virtual hosting of different domains and corresponding SSL certificates
on the same IP address! The cleanest way is to use another IP address for the
new SSL virtual host.....
Posted at 03:23 PM
Read More
Tue - November 28, 2006
ssh without password interaction
OK, interacting with my build and deploy script
to enter the server password for scp was a pain, so I implemented dsa
authentication keys instead. Pretty easy.....
Posted at 02:54 PM
Read More
Wed - November 22, 2006
mounting a volume in a script
diskutil requires the use of a device name to
mount a disk....
Posted at 02:47 PM
Read More
Tue - November 21, 2006
Building MySQL From Source with SSL Secure Connections Support
I needed SSL connection feature for secure
offsite replication. The prebuilt binaries do not include the SSL option, so I
had to build MySQL from source with the SSL option....
Posted at 02:14 PM
Read More
EOGenerator - Referencing Prototypes in a different EOModel
Today when I ran my eogenerator script, I got an
error ... it has been over 10 days since I needed to run eogenerator on my
project, so I had obviously done something. After getting over the few seconds
of that uneasy feeling in your stomach at the thought of losing productivity (I
was in the developer coding rapidly zone .... and now I had a derailment to deal
with) fixing a problem on something that has always worked reliably up to
now.......
Posted at 10:33 AM
Read More
Wed - November 15, 2006
Using 'wc' to check the size of your project.
Navigate to your project folder on the command
line and ....
Posted at 12:51 PM
Read More
Fri - November 10, 2006
Configuring Mac OS X Server Tiger for WebObjects Deployment
This are the steps to setup a brand new
installation of OS X Server Tiger. This is for an "all in one" server typical
for a small or startup WebObjects website or as a server used for testing. This
setup is for MySQL 4.1, WebObjects 5.3, Apache webserver. The mechanics of
WebObjects setup on a new installation of OS X Tiger is straight-forward and
easier than with previous versions of OS X Server.
Posted at 12:16 PM
Read More
Mon - November 6, 2006
Using launchd
Now that we have Tiger, launchd seems to be the
preferred way to run regular tasks instead of cron and besides just editing the
crontab file with a new task like I used to do does not seem to work, so rather
than mucking around with it I decided to learn how to use launchd. Setting up a
launchd task to run daily is pretty straighforward....
Posted at 11:49 AM
Read More
Fri - November 3, 2006
MySQL Backup and Maintenance Strategy
This is a description of a simple backup strategy
for MySQL. At the time of this writing, we were using MySQL version 4.1.21 in a
master-slave replication configuration, described in a previous
article . The replication setup forms a basis for the backup strategy
and makes backup very easy while providing 24/7 planned uptime on the master
MySQL server.
Posted at 04:11 PM
Read More
Thu - November 2, 2006
MySQL built-in help
When I was upgrading from 4.0 to 4.1 I noticed
the internal 'mysql' database had tables of reference data. This allows clients
to get help directly from the server instead of browsign the online docs at
mysql.com. This is convenient when you are not connected to the
internet.....
Posted at 03:19 PM
Read More
Mon - October 30, 2006
Setup XServe G5 with 10.4 Client as MySQL Server
Well, the new Quad Xeon 64-bit Intel XServes are
shipping November 2006, so there are deals to be found on PowerPC XServes on
eBay. We needed another XServe to add to our few G4 XServes, so we decided to
get the fastest machine we could on eBay and use it as our dedicated MySQL
server instead of the G4. We got a good deal on a cluster Dual 2.0 GHz G5 on
eBay recently. It came with 10.3 Panther Server, but we want to use Tiger and I
don't want to pay $499 for OS X Server Tiger right now (I'll wait a year when
they are going to be $149 long after Leopard Server has shipped). So we are
going to use Tiger 10.4 client on this headless G5 XServe. This article
documents some of the details in getting this set up......
Posted at 01:37 PM
Read More
Fri - October 27, 2006
"Setting up a MySQL Replication Slave" Revisited for MySQL 4.1
Ah well, since my first article on this, MySQL
has had multiple version changes and I have gained more experience in using
MySQL. (Off topic...... I really like the fact that I am stuck in everything
from MySQL server config/support thru Apache thru WebObjects/Java development,
deployment and administration ...... never a dull day in the job!). Here is my
"new improved" process for setting up a replication master-slave configuration
using MySQL 4.1.21. These instructions will definitely not work for version
4.0.XX and earlier and may not work for some earlier versions of 4.1. Earlier
version incompatabilities are mostly related to the parameters used in
mysqldump.
This article assumes a
basic knowledge of unix (cd, ssh, scp, mkdir, chown) and a basic knowledge of
mysql (mysqld, mysql, mysqldump, mysqladmin)
Posted at 09:51 PM
Read More
Mon - October 16, 2006
Screenshots
Using Grab and default OS X settings can be slow
when trying to construct a series of jpeg screenshots of portions of the screen
associated with a tutorial article, but there are better ways to get this done
without buying yet another little shareware utility...
Posted at 03:00 PM
Read More
Mon - October 2, 2006
SIPS
sips is a great little command line utility built
into OS X....
Posted at 09:50 AM
Read More
Mon - September 18, 2006
VNC over ssh on OS X Tiger Server
Apple Remote Desktop 3 includes secure encrypted
sessions for remote access. However, I use the free alternative - VNC over ssh
tunnel. Here is how to get up and running.
Posted at 10:18 PM
Read More
Sun - September 17, 2006
First-time install of MySQL 4.1 on OS X Tiger Server
Just the notes for the installation steps on a
clean OS X Tiger Server 10.4.7 setup.
Posted at 06:52 PM
Read More
Thu - August 24, 2006
One of Mike Schrag's Favorite Eclipse Commands
Mike posted this tip to the mailing list
recently..........
Posted at 09:46 PM
Read More
Understanding Class Paths
Class Paths can be confusing. Here is some info
and links to info on that:...
Posted at 02:56 PM
Read More
Wed - August 16, 2006
Eclipse/WOLips Community Tutorials, Hints and Tips
As I learn Eclipse and WOLips, I've decided that
it is better by default to put the info on the WOLips wiki where others can correct and we can
participate as a community in helping ourselves. If it does not belong there,
then I'll put it here, but by default I will put stuff there since I definitely
am a one-man-show limited resource with lots of work to do every day to pay the
bills. So if...
Posted at 04:03 PM
Read More
Tue - August 15, 2006
Editing your Properties file
After I created my first project in Eclipse, I
wondered why I could not see my Properties file in the Package Explorer
view.
Posted at 01:17 PM
Read More
Getting Started with Eclipse
I've decided to have another attempt at switching
from XCode to Eclipse for a few reasons:
-
I keep hearing about the productivity of
Eclipse
- Apple is deprecating the WO tools,
and .....
- Also, Eclipse 3.2 has matured
nicely and works very speedily on the new Intel
Macs
- The guys on the WOLips team have to
be commended for their work which makes this possible.
Posted at 01:02 PM
Read More
Mon - June 12, 2006
Java Debugger for debugging deadlocked apps
Article can be found here
http://wocode.com/cgi-bin/WebObjects/WOCode.woa/2/wa/ShareCodeItem?itemId=439
Posted at 12:20 AM
Read More
Thu - May 18, 2006
Using niutil to get user and group info
Some common niutil commands....
Posted at 12:26 AM
Read More
Thu - May 11, 2006
Export CSV file from MySQL with headings in first row
A tip posted by Heywood in the MySQL
manual on how to export headings in your CSV export....
Posted at 02:10 PM
Read More
WOBuilder 5.3.1 - Delete key
When deleting a key in WOBuilder 5.3.1
(right-click on the key and select Delete), we get a message "The key 'aKey' is
currently used in the bindings of this component. What would you like to do with
those references?" and three choices: Ignore, Cancel and
Unbind.
The key is deleted BEFORE that
message is displayed! .... and clicking on any of the buttons has no additional
effect. Specifically Cancel does NOT cancel! and Unbind does NOT unbind. In any
case the key should not be deleted until AFTER a choice of Ignore or Unbind is
selected.
Posted at 10:05 AM
Read More
Thu - May 4, 2006
DarwinPorts and example installation of tcpflow port
I needed to use tcpflow the other day for the
first time since I got my Intel Macbook Pro running Tiger. I downloaded and
installed Marc Liyanage's Panther installer sicne no Tiger installer available.
I figured it might work, but it did not. I really needed to use this excellent
tool, so after a quick Google search, I came across the tcpflow port in
DarwinPorts. Now I was familiar with DarwinPorts, but had never looked at it in
detail or installed it. So, after understanding it a little, I just installed it
and then used it to install (download, fetch, make, build, install, etc) in one
easy command. This was a really simple, smooth and pleasant
experience.....
Posted at 08:23 AM
Read More
Thu - April 27, 2006
WebObjects on Rails
Pierce T Wetter shared a nice trick on global
page direct actions with url query parameters. Nice tip
Pierce!
Read More....
Posted at 09:02 AM
Read More
Wed - April 26, 2006
Submitting a form when a popup menu is changed
Simply add a "onChange" attribute binding to the
popup menu with a value of "this.form.submit()" as shown in the
picture...
Posted at 11:34 AM
Read More
Tue - April 25, 2006
Default Submit Action on Multiple Submit Form
This tip comes from the webobjects-dev mailing
list....
"Problem: Some browsers trigger
the WOForm action, whilst other trigger the first submit button action when a
user hits the enter key. I've tested my test app with IE v4+, Netscape v6+,
Opera and Chimera on both mac and windows and can confirm that it is a browser
related issue.
After much playing about
with this issue, i have decided that the best way to get the behaviour i
required was to add a 1x1 pixel image as an WOImageButton at the very top of my
form and bind it's action to the action that I want to trigger if the user hits
the enter key, and leave the form action method unbound (thanks to Pierre
Bernard for this tip). This provides consistent behaviour across all browsers
mentioned above. Note that i also add an extra tag to the WOImagButton of
TABINDEX="" - this means that as the user tabs through the form elements it
doesn't pick up on the single pixel image and hence it is completely invisible
to the user."
Posted at 08:51 AM
Read More