Montag, 12. April 2010

Running Mediawiki on Tomcat

The idea of running a PHP-Application on a Java application server might seem weird to most people – but if you have a working Java infrastructure and are familiar with setting up Tomcat this might be an option to avoid the “compiling PHP/Apache – hassle”. Follow my step-by-step guide to get Mediawiki up and running on Tomcat.

Running Mediawiki on Tomcat weiterlesen »

Dienstag, 27. Januar 2009

Mein eigener Websphere-Bug

Die Umstellungsarbeiten von Websphere Application Server (WAS) Version 6 auf Version 7 gingen eigentlich ziemlich gut voran. Sogar das Clustering der Webanwendungen lief wie geschmiert. Trotzdem habe ich mich – wie bei allem IBM-Produkten – gefragt, wann und in welcher Gestalt der “Showstopper” kommt.

Gestern war es dann soweit. Der JSP-Parser (der endlich Java 5 & 6 spricht) versagt bei einer doppelten Definition eines Tag-Verzeichnisses:

SRVE0293E: [Servlet-Fehler]-[/WEB-INF/jsp/index.jsp]: com.ibm.ws.jsp.JspCoreException: /WEB-INF/jsp/index.jsp(66,63) /WEB-INF/jsp/other.jsp(5,53) JSPG0240E: Es wurde versucht, das Präfix "ringwelt" in "urn:jsptagdir:/WEB-INF/tags" zu ändern, obwohl es im aktuellen Geltungsbereich bereits mit "/WEB-INF/tags" definiert ist.

Nach einigem Suchen ließ sich das Problem wiefolgt isolieren: Die JSP index.jsp inkludiert die JSP other.jsp statisch. Beide Dateien enthalten eine identische Tagdir-Definition und nutzen den gleichen Taglib-Prefix. Sobald der Include in der index.jsp innerhalb eines JSP-Tags erfolgt, schmeißt der WAS7 die o.g. Exception.

index.jsp
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ taglib prefix="ringwelt" tagdir="/WEB-INF/tags"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!-- This will work -->
<%@ include file="other.jsp" %>
<!--
This will fail due to the second declaration of
the tagdir prefix above
-->
<c:if test="${1 == 1}">
<%@ include file="other.jsp" %>
</c:if>

other.jsp
<%@ page contentType="text/html;charset=UTF-8"%>
<taglib prefix="ringwelt" tagdir="/WEB-INF/tags"%>
<ringwelt:hello />

Wie kann man so etwas nicht getestet haben? Ist mir unbegreiflich? Wir haben den Bug zur IBM gegeben. Vielleicht zeigt sich “Big Blue” ja erkenntlich und lädt mich zu irgendeiner Webspherekonferenz ein. Gerne in Übersee ;-)

Montag, 12. Januar 2009

Extreme Feedback Device

Zugegeben, die Idee eines “Extreme Feedback Devices” ist für agile Projekte nicht wirklich neu. Sie stellen den Zustand es aktuellen Softwarebuilds unmittelbar für das gesamte Team – durchaus sehr plastisch – dar, z.B. in Form einer Ampel. Rot steht für einen fehlgeschlagenen Compile, gelb für fehlgeschlagene Tests und grün für alles Schoko. Über die Sinnhaftigkeit kann man vielleicht vorher schmunzeln, aber so ein Teil wirkt. Ich habe Tests noch nie so schnell gefixt gesehen.

buildampel_aufbau2

Als ich einen Teil der Buildprozesse beim Deutschen Ring auf den Hudson Buildserver umgestellt habe, bin ich auf das “Red Bear Alert Extreme Feedback Device” gestossen. Die Idee, farbige Lampen über eine USB-Steckdose zu schalten war so einfach und genial – das wollte ich auch. Leider habe ich keinen reine 5V-USB-Lösung gefunden, dafür aber eine relativ kostengünstige Steckdosenleiste, die sich per USB von einem Windowsrechner steuern lässt. Da ich den Spaß privat bezahlt habe, sollten noch ein paar günstige Lampen dazu und fertig.

Extreme Feedback Device weiterlesen »