Sass in JEE 6/7-Environments with Maven

Draft release – This post has never been completed

For a project I needed support for Sass and found basically two ways on how to integrate it with my JEE7 Maven setup.

The easy one: sass-maven-plugin

Looking on github there is the sass-maven-plugin which provides a very easy way to compile sass files into css. Just add something like the following to your pom.xml and you are ready to go:

With this in place you already have a running Sass-setup in your JEE environment. But event better, with mvn sass:watch you get into a mode witch nearly instantly reflects your changes to your .scss- to your .css.files. Live changes are awesome!

More complex but also more powerful: wro4j

Wro4j‘s learning curve is pretty steep. But once you get to the point it is definitely worth it! Wro4j gives you not only compile abilities for Sass, but also for less, css/js-minifier and a lot more pretty cool stuff to totally control and shrink your css/js.

Magnolia Maven Settings

Draft release – This post has never been completed

I had to work on an existing Magnolia 5.3 lately and one thing stopped my from using it correct. My predecessors didn’t use maven properly, so I had a lot of messages like

There only a few informations about how to setup Magnolia with maven correctly, but non of them seemed to work with the setup I had.
Finally, this settings.xml was what made my maven work correctly

 

Start non running docker container

Just a very quick line to restart docker container that are not running

Command explained:
docker ps -a will get you all container
-f “Status=exited” filters for only the container that have exited
-q outputs the id of the container only

New stuff coming soon

Hi People,

we have some nice posts coming soon (so say we all), to break the silence. Everyone is very busy right now building awesome stuff. But hey, that is life =)

Cheers,
Finn

Bosch EcoLogixx 7 Kondenswasserbehälter voll

Ausnahmsweise mal wieder ein Beitrag auf Deutsch.

Ich zähle zu den Besitzern der Bosch EcoLogixx 7 der ersten Generation. Diese Maschine zeichnet sich durch einen wundervollen Fehler aus, dass sie nach unbestimmter Zeit immer meldet, dass der Kondenswasserbehälter voll sei. Dieser ist allerdings leer und auch der Filter ist sauber.
Wie man an den diversesten Stellen im Internet nachlesen kann, so scheint es ein Baufehler zu sein, welcher dafür sorgt das sich tonnenweise Flusen an dem “Self Cleaning”-Meachnismus vorbeischummeln und sich ganz unten in der Maschine sammeln.

Nun kann man für teuer Geld einen Techniker holen lassen, die Maschine selber zerlegen und reinigen oder aber man findet die Seite testberichte.de. Dort gibt es einen Beitrag welcher grob besagt:

  1. Kondensbehälter mit 50ml Dan-Klorix und 1L Wasser befüllen
  2. 10 Minuten den Modus: Kaltlüften
  3. 10 Minuten den Modus: Warmlüften

Done. Am Ende kann man einen Kondenswasserbehälter mit braunem Wasser entleren. Das Chlor scheint sämtliche Verstopfungen am Schwimmer zu beheben. Evtl. muss man noch ein paar normale Trockenvorgänge laufen lassen um das Chlor rauszubekommen.

Disclaimer: Ich kann in keiner Form sagen ob dadurch irgendwelche Schäden (Kurz- oder Langfristig) entstehen können, aber zumindest bei mir hat es geholfen und das Gerät trocknet wieder.

Mock void methods with mockito

Long time no see dear internet. We are not dead yet, just very busy. Which is kind of a good thing I guess.

I recently started using Mockito in my projects. Mockito enables you to very easily mock stuff in your unit tests. However I got stuck when I was about to test a method which calls the persist and refresh-method of the EntityManager. As you will know, or notice, is that the refresh method modifies the given argument and doesn’t return anything.
So now I needed to mock a void method, which modifies the argument instead of returning it.

The solution is suprisingly simple the Answer-Interface:

Et voilà, now we can mock methods that modify their arguments very easily.

 

WordPress LESS mit http://lessphp.gpeasy.com/

Ich wollte meinem WordPress Templates das sehr nützliche LESS beibringen. Nach einem Kurzen Googler war es klar dort gibt es ein Plugin von http://leafo.net/lessphp/

Leider musste ich beim erstellen des Templates feststellen das es hier Fehler ausgaben gab obwohl mein LESS Code völlig korrekt war. Nach ein bisschen lesen im netz musste ich leider feststellen das die Umsetzung dieser LESS PhP Schnittstelle nicht auf dem aktuellen Stand war. Somit habe ich mich entschlossen die aktuelle Version con http://lessphp.gpeasy.com/ zu verwenden. Da es hier kein so ein komfortables Plugin gibt stelle ich hier ein kleines Code Schnipsel zur Verfügung das Ihr in eure functions.php einsetzen könnt um immer eine aktuelle CSS aus eurer LESS zu erzeugen.

Vorab müsst ihr in eurem Template einen Ordner mit dem namen less erzeugen. Hier packt ihr die aktuelle Version der LESS.php von gpeasy rein.

Danach erstellt ihr im Template rootverzeichniss eine .less Datei. In meinem Fall war dies die template.less

folgenden code packt ihr einfach in eure functions.php

mit den Variablen $inputFile und $outputFile könnt ihr steuern welche LESSDatei eingebunden wird und welche CSS Datei erzeugt werden soll.

Die Variable $options beinhaltet die Konfigurationen für LESS.php hier im beispiel habe ich den Compressor aktiviert um die CSS Datei so gering wie möglich zu halten.

Nun immer wenn WordPress erkennt das ein eingeloggter user die Seite aufruft wird überprüft ob die CSS Datei existiert und eventuell älter ist als die LESS Datei. Sollte dies der fall sein wird die CSS Datei neu aus der LESS Datei erstellt.

Script Error = Can’t find variable: exports at …

I was playing around with appcelerator and suddenly got this error message:

What I did before was to rewrite a whole lot of code to get it more structured. So I moved a code around, created new libraries etc. Google didn’t help me much. I found some articles with the same error but other reasons for it.

After quite a while I had an epiphany and renamed my library “app.js” to something different and tada, it worked! Afterwards I searched for forbidden filenames or similar in the appcelerator docs but couldn’t find a thing. So for whatever reason, app.js seems to be not a good name for a library in appcelerator.

Maybe someone else has a clue what my problem was or this information can help someone =).

Relay access denied on a fresh ISPConfig 3.0.5

I had a fresh ISPConfig setup, following one of the howtoforge-articles. Everthing was looking good until I tried to send a mail. What happened is that the server presented me with a wonderful “Relay access denied” message

I rubbed my eyes and checked my mail client settings. But there was nothing to see, authentication for the SMTP was setup and I re-checked the information twice.
So I enabled dovecot debug and the log also told me that I authenticated me correctly.

After some search I found that postfix, since version 2.10, has this wonderful smtpd_relay_restrictions setting which seemed to do the job for me. A quick change from

to

combined with a little postfix restart and all my problems went away =)

403 Forbidden after Upgrade to Ubuntu 13.10

This is one for the “read your changelog”-category. After upgrading to Ubuntu 13.10 you will notice that your Apache starts throwing 403 forbidden at you. The reason behind this is pretty simple, the Apache version changed to 2.4 and there are a lot of things to have a look at (http://httpd.apache.org/docs/current/upgrading.html).

In this particular case I assume you had your working dev-setup with something like:

The following part is what causes your problem. In Apache 2.4 the configuration has changed from

to

Change this, restart and you are done =)

Cheers