On Thanksgiving Day this year I rode over 300 miles to Cleveland on my VStar motorcycle to visit my sister. The picture at the left was taken upon my arrival at Crocker Park in the evening.
Heading out at 10:30 in the morning it was about 50 degrees Fahrenheit and sunny, a beautiful day for a ride. I decided not to put the windshield on the bike as it reduces my ability to control airflow with layers of clothing and is too hot with my winter gear on at those temperatures.
Today was my last day of full time employment at the PA Capitol Preservation Committee. Thanks to everyone who made me feel welcome over the years. To commemorate my many commutes, enjoy this motorcycle video including part of a favorite route to work on my 2008 Honda Rebel.
Headed to work today, it was 32.7 degrees F with fog. I was convinced, seeing the sun starting to poke out, all would be fine once I got to the top of the mountain and out of our valley of perpetual fog.
I started up the Rebel and after warming up a while, I lurched out the lane (still wasn't warm yet, had to increase choke and putter along; pretty common below 50F). Even though visibility was less than ideal, the roads were clean and dry. After puttering along across the valley, half opening my visor as needed to clear it and at times so I could see at all, I made it to the top of the mountain, but alas, the fog continued in the next valley.
In Liferay 6.0 GA4 Community Edition there is an error in the CKEditor configuration; different configuration files are used to define the editing toolbar for the web content and other areas depending on the browsing path. This results in an issue where the toolbar changes seemingly at random. This is fixed in the Enterprise Edition and for future versions, but for those of us using the current Community Edition, the following workaround is useful.
The most problematic disappearing item for my use case is the spell checker; the same method can be used to restore other buttons as necessary. Back up, then apply this ckconfig.jsp patch to the Liferay root web app. For the tomcat download this is located in the liferay-portal-6.0.6/tomcat-6.0.29/webapps/ROOT/html/js/editor/ckeditor/ directory. Shut down Liferay, remove the tomcat work directory to clear the cache, then restart Liferay.
For a few weeks now Google Maps has a bug where 22/322 at Clark's Ferry is impassible via through route directions. This is not the first time I have found bugs in Google Maps, but it is the first one I have seen involving a major highway.
Although rain from the previous day resulted in the cancellation of the tractor parade and poor attendance, there were still many tractors on display at the 2011 Loyalsock Valley Antique Machinery Association Show. One advantage to going on Sunday is hearing and seeing them pull out, which was a reasonable substitute for the parade.
Attended Carlisle Bike Fest 2011 this year. Enjoyed looking at the rides people came in on; much of the show is the bikes people bring which they park in the middle of the show in wide enough aisles to easily wander up and down.
Other enjoyable attractions included the demo rides (which I didn't qualify for this year due to only having a permit, but watching and listening to new bikes was still cool), Biker Billy's cooking show (watch out if you're in the audience at one of these, he actively seeks victims to roast), and the Disc Connected K9's.
I drove in via a cage this year, scared off by the threat of rain which never materialized. By next year I hope to be more adventuresome.
Although Apple uses standard protocols for Airprint, the service is very picky about the exact broadcast settings before the printer will show up on iOS devices. The easiest way I've found to Airprint to an office workgroup printer:
Configure the printer to be printable via a Linux / CUPS server. On Debian install the cups and cups-pdf packages then log in via port 631 and configure the workgroup printer, making sure a test page prints.
Add ServerAlias * in /etc/cups.conf; this prevents "Request from x using invalid Host: field" errors.
Install avahi, on Debian use the avahi-daemon package.
Run this handy airprint-generate script. Copy the resulting file to /etc/avahi/services/ and restart avahi and cups.
Airprint should now be working for your iOS devices on the local network.
This Eastern Garter Snake was waiting for me on my shop workbench this morning. As soon as I saw him I ran to get my camera, fortunately he was still there for a portrait.
At the motorcycle store this week a kiosk for the GoPro HD video camera caught my attention. I had been looking to pick up a helmet mounted camera for on-motorcycle recording and this one fits the bill nicely.
Next time I will likely try to point downward more as the front of the motorcycle is not visible and I like that effect on other YouTube videos, but I am not disappointed with this 'flying through the air' look either focusing more on the scenery.
After Michael let me ride his Honda Shadow and thoroughly enjoying riding every second I was upright, it was clear to me it was time to take the plunge and buy one.
Needing a smaller cycle I could handle more easily starting out, I found this used 2008 Honda Rebel 250 on Craig's List.
When using Spring annotation based controllers, @RequestMapping must be applied to a method as well as the class or it will not work. For example:
@Controller
@RequestMapping("/blah.html")
public MyController {
@ModelAttribute("session")
public InventorySession getSession() {
return session;
}
}
Will result in No mapping found for HTTP request with URI [/[contextpath]/blah.html] errors. Request methods (or sub-pages) must be mapped to controller methods, i.e.:
. . .
@RequestMapping(method={RequestMethod.GET})
public String getForm() {
return "formView.jsp";
}
. . .
This mistake is particularly easy to make when migrating older code to the newer annotation based model, where mappings on legacy code may make it (erroneously) appear such linking is done in the xml file already.
Spring, my favorite Java application framework, doesn't provide an easy way to bind Spring-managed session beans to JSP pages. I have had success doing this by binding the bean to the request at creation time. When doing it this way, be sure to call the session bean somewhere in your dispatch servlet configuration or it will never be initialized when individual requests are created.
Note that for most applications, session beans are better left as plain objects managed independently of Spring for less overhead and to keep them as simple as possible. Each of these is going to take up space for each user. However, I have found some cases where accessing Spring objects from within a session bean is desirable; if you have as well or curiosity prevails, details are below.