blogs

PHP File Upload Size Issues

Ran into a problem when I was maintaining a customer's site today. They wanted to upload 10 - 20 MB movies as attachments to their Drupal blog posts. The standard limit set in Drupal is 2MB. I changed the setting to no avail. There was a note at the bottom stating that my PHP settings limited the upload to 4MB. So I did a search and come up with this post. So I changed my upload_max_filesize setting to "20M" this still did not work. The problem is that PHP also limits the post size and my default config limited post size to 8MB.

Resin and Session Clustering

In a world where AJAX is becoming the norm instead of the exception we need technology platforms that allow us to scale these applications. I have been working on an application for a major hotel chain that is used by their call center agents to book reservations at their hotels. The application uses AJAX techniques to run several queries simultaneously and presents the data in a very dynamic interface that closely resembles a traditional desktop application.

iPhone SDK and OCUnit

I have started fooling around with the iPhone SDK. I am planning to release a product soon but the plans are quite preliminary so mums the word on exactly what is coming. However, I ran into a little problem right off the bat.

Setting Environment Variables for Mac OS X Programs

For the most part, Mac OS X programs do not use environment variables or the PATH. They behave in a very different way from other Unix environments on this score. However, as Java developer I use several tools that require that other command line programs be available on the system PATH. In Windows and Unix there are well known places to put this kind of information but in Mac OS X the location for these changes is obscure.

Acegi Filter Does Not Work in WebSphere 6.1.0.3

It seems there is a bug in WAS that was introduced with 6.1.0.3. I found this forum post on the subject.

Apparently, WAS looks for a resource in the WAR that matches the URL before allowing the servlet filters a chance to process the URL. Despite the fact that the design of the Servlet Filter mechanism is to allow web applications more control over their URLs and how they are accessed.

This affects all servlet filters not just Acegi's. IBM has had similar issues in the past like this one and this one. You'd think they could get it right after a few tries.

IE Rendering Problems Solved

Well I figured out what was causing my IE Rendering problems. I was using a "code" tag and that seemed to throw off the floating of the right hand navigation elements. Weird but it looked great in Firefox. This is not new but, damn I wish IE would just implement the standards. Perhaps a meta tag could be created that tells IE to use a standards compliant interpretation of CSS and HTML. That way, a standards compliant web site can just add a meta tag and IE will render it correctly without all the weirdnesses that are left in for "backwards compatibility".

For a great site on the power of CSS check out the CSS Zen Garden.

Java 1.5 Generic DAO

I am always looking for ways to limit the amount of typing I have to do. Hibernate helps me alot because I don't have to write all the SQL and I can concentrate on the less tedious aspects of designing my persistence model. Spring helps me alot because I don't have to write all those factories and other "glue" code.

In the interests of getting more done quickly, I started looking at how I can automate the generatin of the DAO pattern. Data Access Objects allow the service or session facade layer to be agnostic to the persistence layer used. As I have already said, I use hibernate but there might come a time when I need to use some other persistence layer and by keeping all the persistence layer specific code behind the DAO pattern, I can easily switch it out. I also love the fact that I can use jMock to test my service layer components without fooling around with actually changing database tables.

Spring for Plain old Java Applications (POJAs)

Most J2EE developers have at least heard of the Spring framework and know that it is an excellent framework for creating enterprise applications. I have recently needed to create an application that runs from the command line and is short lived. It has no GUI but I wanted it to be configurable and extendable in various ways. To that end, I defined a bunch of interfaces for the objects in the system to use when interfacing with other objects. Then I started thinking about the implementations of these interfaces and the factory classes I would need to create. I said to myself "Self, doesn't Spring already do this?" and I answered myself, "Why, yes". So I decided to try it.

A Review of jBPM

Lately I have been reading the hype surrounding the concept of Business Process Modeling (BPM) systems. I always take this stuff with a grain of salt because I have not seen an idea that lived up the hype since the Object Oriented hype of the early nineties. I know some would debate that point and of course I don't mean to say that OO lived up to some of the more absurd hype. I remember some marketing fools actually were saying that OO would allow us to get rid of programmers. However, in this case, I think BPM and Graph Oriented Design/Programming has the potential to rival OO in its impact on our industry and jBPM is an excellent entry into this market.

Memoirs of a Gentoo Junkie - Part I

Memoirs of a Gentoo Junkie - Part I

I first heard the word Gentoo from a colleague of mine I met while I was doing a gig at Cingular, Chris Bravo. Chris is a very savvy developer and I learned quickly to trust his judgment during our time working together. When he told me to give Gentoo a try I took the plunge. I have not regretted my trust. The Gentoo system is by far the best distribution I have used. Keep in mind, my requirements may not be the same as yours. Through the course of this article I will point out where Gentoo meets my requirements.

Some History

Let me start by telling you about my history with Linux. I have been using linux since 1993 when I installed Slackware on my Northgate 25mhz 386. I did not have a PPP or SLIP connection to the internet back then so I downloaded the disk images at work and copied them on to floppies and took them home. I can't remember how many disks there were but I am certain it was over 20. Having fooled around with Minix and even installed on a floppy and booted it on one of my old 8086 computers, I was familiar with the process of bootstraping an operating system install. Slackware made it much easier but there were still some pretty hariy parts to the installation. That system still boots, I never throw anything away. I was still doing most of my development in Windows at the time so I mostly used it to fool around. Since then, I have installed several versions of RedHat, Mandrake, and Debian. One particularly good experience was with a RedHat derivative called ClarkConnect. I never could get Debian to work for me, but I don't blame the distro, I just did not have the patience to work around some network card issues.

Syndicate content