Here's how to setup scheduled (periodic or timed) tasks with Spring3
in Grails using the concurrency executors introduced in Java5.
This replaces the use of a Spring2 TimerTask
which was deprecated in
Spring3 and removed from Spring4. Grails2 uses Spring3 so
the TimerTask
should still work, but this method should work
in Grails2 and Grails3. Note that in Grails3 and
possibly 2.4/2.5,
you might be able to use the much simpler Spring
@Scheduled
annotation on a service method.
I've moved this blog (perhaps only temporarily) to a
Metalsmith
generated static site served via my
GitHub pages repo.
Here are some notes on how to setup git clones
with the gh-pages
branch in the build directory,
based upon krlmlr's answer at
stackoverflow.
The comic strip Garfield is generally rather banal, but if the three panels are selected randomly from the archive, then the resulting strip can be surreal.
(read more)Grails 2.3.11 (or any 2.3.x) does not work with Java8 (jdk1.8.0_40
or
later). Following are some notes on how to get things working.
The default yum packages for tomcat and tomcat-jsvc (version 7.0.54-2.el7_1
)
are broken on CentOS 7 (we're currently on 7.1.1503
). Newer packages available
from Fedora don't help. Here's how to make things work.
It's really surprising and annoying that the default structured editor for
dates and times in Grails is so limited. It only allows one to edit (or enter)
time information down to the minute. Seconds and smaller are ignored, even
though the editor specifically returns an epoch time in milliseconds with the
getTime()
method! The default editor also only works for java.util.Date
and java.sql.Date
-- not the also common java.sql.Timestamp
.
We've been banging our heads over some quirks and inconsistencies that we eventually traced to plugin dependency naming in Grails 2.3.x. My main Grails app gets its domain classes from a local plugin. That plugin needs the Hibernate and JodaTime plugins. Spelling the plugin names can be confusing and caused problems with run-app and run-script.
(read more)At work, I run the mysql clients on multiple hosts with multiple versions. My
home directory is a network mount and thus my .mysql_history file is shared
between all these hosts. Often the command history gets weirdly munged, with
spaces converted to \040
-- the character sequence for the octal escape code
for ASCII space. Here's a little workaround/fix:
Here's an info dump of some things I did to get Linux aspell-based spell checking working with the Grails CKEditor plugin.
(read more)Here is a JSP version of the server-side script needed for the CKEditor plugin for aspell.
(read more)