Friday, October 17, 2008

Wann kommt die nächste Bahn?

Mit einem kleinen Stückchen Javascript kann man dem Firefox die Verarbeitung von mehreren Argumenten bei der Keyword Search beibringen.

Die Bahn bietet ja jetzt so schreckliche personalisierte Services an, bei denen man seine häufigsten Fahrplansuchen hinterlegen kann. Das ganze wird als Cookie gespeichert. Da jeder, der ein wenig Wert auf Privatspäre im Netz legt, diese klugerweise nach Schliessen des Browsers wegwirft, sind auch diese Einstellungen weg.
Zumal man sich zum Fahrkartenkauf sowieso noch geschätzte 72mal einloggen muss.
Auf jeden Fall nicht benutzbar. Aber: Muss man ja auch nicht :)

In einem seltenen Moment der Erkenntnis, hat die Bahn ein geiles Feature in die Suche eingebaut: Man kann statt der vollen Ortsnamen auch deren KFZ-Kennzeichen eingeben.
HH=Hamburg. Mit dem u.g. Skript kann man dann im Browser einfach "bahn m hh" eingeben und bekommt direkt die nächste Verbindung von München nach Hamburg angezeigt.
Geht doch!

javascript:var%C2%A0s='%s';%20url='http://reiseauskunft.bahn.de/bin/query.exe/dn?datesel=custom&start=1&returnTimesel=depart&S=%s&Z=%s&timesel=depart&REQ0Tariff_TravellerType.1=E&REQ0Tariff_TravellerReductionClass.1=0&REQ0Tariff_Class=2';%20t='';%20qc=0;%20chunks=url.split('%s');%20for(i=0;%20i<s.length;%20i++){if(s.charAt(i)=='"')qc=qc^1;%20t+=((s.charAt(i)=='%20'&&qc)?'^':s.charAt(i));%20}args=t.split(/\s/);%20nurl='';%20for(i=0;%20i<chunks.length;%20i++){nurl+=chunks[i];%20if(args[i]!=undefined)%C2%A0{args[i]=args[i].replace(/\^/g,'%20');%20nurl+=args[i];%20}}location.replace(nurl,'<%20BR>');

Thursday, September 18, 2008

Yet to be seen...

... is a presentation on spring that does not contain the phrase "de-facto standard".

wow. that short, it could be on twitter.

Friday, August 22, 2008

Continuum 1.1 on Tomcat 6 with GMail notification

I "just" wanted to use my gmail account to send build errors to my real account until the integration server is in the right network that i can configure right the mailserver. Making this work took a bit longer. As you can see in the previous post, I skipped mailserver config in archiva. This time, I had to do it. First, you need activation-1.1.jar and mail.jar in your tomcat lib directory. ("folder" is windows-speak, isn't it?)

The jndi mail config in context.xml looks like this:

<Resource name="mail/Session"
           type="javax.mail.Session"
           mail.transport.protocol="smtp"
           mail.smtp.host="smtp.gmail.com"
           mail.smtp.auth="true"
           mail.smtp.port="465"
           mail.smtp.socketFactory.port="465"
           mail.smtp.socketFactory.class="javax.net.ssl.SSLSocketFactory"
           mail.smtp.user="something@gmail.com"
           password="makemyday"
           mail.smtp.starttls.enable="true"/>


Note the user is "mail.smtp.user" but the password is just "password". (For more on this, check here and here.

Great. But that's not all. There's a bug in the mailing system causing the password
not to be set right. Or something. With the patch provided, you'll have to recreate some jars.

Get the source:

svn co http://svn.codehaus.org/plexus/tags/plexus-mail-sender-1.0-alpha-7

find JndiJavamailMailSender.java and change the return line to return s; according to the patch (or just use the patch).
Run mvn package and copy the resulting jar files plexus-mail-sender-javamail-1.0-alpha-7.jar and plexus-mail-sender-api-1.0-alpha-7.jar to your continuum installations lib directory. (er, i extracted the .war file into my $CATALINA_HOME/webapps, if you're running the war itself, you need to repackage it).

Finally, tweak the sender in WEB-INF/classes/META-INF/plexus/application.xml, look
for the tags from-mailbox and from-name.
That's about it.

Wednesday, August 20, 2008

Installing archiva/continuum with tomcat+mysql on ubuntu

continuum documentation is kinda ... not finished yet. I'm in the process of installing the archiva/continuum double on an recent ubuntu server (hardy).
Database is a mysql 5.0 which I installed before.

Some trouble occurred when trying to connect the archiva webapp (which i installed first) to the database. For this, check /etc/my.cnf for the bind address as well as
the connect properties of the archiva database user (self-reminder). It can make a
difference if you connect at 127.0.0.1, localhost or the "real" IP.
Also, you may have to allow the port through the firewall (the "ufw allow" thing).

For archiva, I created the file /usr/local/tomcat/conf/Catalina/localhost/archiva.xml (with /usr/local/tomcat being my CATALINA_HOME):

<Context path="/archiva"quot;>
<Resource name="jdbc/users"
auth="Container"
type="javax.sql.DataSource"
username="archiva"
password="freetibet"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/archiva" />

<Resource name="jdbc/archiva"
auth="Container"
type="javax.sql.DataSource"
username="archiva"
password="freetibet"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/archiva" />

<Resource name="mail/Session"
auth="Container"
type="javax.mail.Session"
mail.smtp.host="localhost"/>
</Context>


For continuum, just copy the file, rename it to continuum.xml, change the username
accordingly and switch jdbc/archiva to jdbc/continuum.

If you are using Tomcat 6.0.18 beware. Due to these bugs (MRM-905 and CONTINUUM-1844) you will have to apply
two patches or just fire up some sed commands to replace "empty(" with "empty ("
and "not(" with "not (" in the jsp and tag directories.

I didn't put the webapps into the CATALINA_HOME like the documentation tell you to,
but into the standard CATALINA_HOME/webapps Folder.

Be sure to put the necessary libs into CATALINA_HOME/lib: mail.jar, activation.jar
and the mysql-connector.

Boy, this post is a mess.

Wednesday, July 30, 2008

The peach window

The peach window is the time interval where the peaches you bought are in an edible state. That is, the time between rock hard causing gum bleeding and moldy,
covered with fruit flies.

While the time before the window takes up to a week (and after as long a you can stand the flies), the peach window seems to be sized 12 hours in average.

Unfortunately, here they come packed at least by eight, and worse I seem always to get them in a synchronized set. So once a week, it's peach diet. Lucky me.

Wednesday, July 16, 2008

The longest classnames in spring security

If you ever wondered, how long a classname can become, have a look at spring security.

Here are the top-five of the longest ones (excluding package-name):

Sharing the second place, there are:

BasicAclEntryAfterInvocationCollectionFilteringProvider
J2eeBasedPreAuthenticatedWebAuthenticationDetailsSource
PreAuthenticatedGrantedAuthoritiesAuthenticationDetails
WebSpherePreAuthenticatedWebAuthenticationDetailsSource


This almost look like a PGP key block.
Excited, who the winner is *gasp*? Here we go.

PreAuthenticatedGrantedAuthoritiesWebAuthenticationDetails

HemingwayWroteStoriesShorterThanThat.

Wednesday, July 9, 2008

Eclipse Ganymede branding - Getting your launcher icon right

Still, eclipse is picky when you're not explicit on your branding.
When providing icons for your windows application one by one (i.e. not with a combined .ico but single bitmaps) it is mandatory to specify a file for each
of the six sizes/depths.
Looks like win xp is looking for a 32-bit icon, so the "fault" is not on eclipse's side. Of course, it's on mine.

Iconomaker is capable of creating 32-bit bitmaps, but it is shareware.
Haven't tried gimp yet, but i suppose it can do so as well.

[update]
Yeah, gimp can do. Eclipse is just overwriting the icons from the original launcher.
If you drag your launcher in irfanview you will see a multipage icon (7 pages) you can
scroll through. I only wonder where i can specify the seventh icon, since the branding wizard only allows for six?