Sonntag, 17. Juli 2016

TYPO3 Barcamp Berlin 2016

Meine Fotos vom TYPO3 Barcamp Berlin 2016:

'Product Owner' Mathias "Mattes" Schreiber: Was war und wohin geht es mit TYPO3?

Helmut Hummel über PHPUnit in TYPO3 mit PHPStorm



Jochen Weiland über Security mit TYPO3

Security: CMS im Vergleich

Das Camp hatte Super Vorträge, nette und interessante Teilnehmer und war exzellent vorbereitet vom Orga-Team. Mehr Infos:

Sonntag, 14. Februar 2016

Spring Framework on OpenShift: persistence.xml and EntityManager Configuration on Wildfly 10 and MySQL

Running an Web Application with Spring Framework 4.2.x with Spring-Data-JPA and MySQL on OpenShift the RedHat Cloud is good with Wildfly10.

But how to configure the MySQL Database for Spring-Data-JPA?

Spring-Data-JPA with Wildfly10 and MySQL on Openshift 

First Step: edit persistence.xml. Here is an Example:

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.1"
xsi:schemaLocation=""> <persistence-unit name="mySimpleWorkListPU" transaction-type="JTA"><jta-data-source>java:jboss/datasources/MySQLDS</jta-data-source>
<property name="" value="update"/>
<!-- Bind entity manager factory to JNDI at java:jboss/myEntityManagerFactory -->
<property name=""
  value="java:jboss/mySimpleWorkListEntityManagerFactory" /> 
<property name=""

set <jta-data-source>java:jboss/datasources/MySQLDS</jta-data-source>

and the Properties to:

<property name=""
 value="java:jboss/mySimpleWorkListEntityManagerFactory" /> 
<property name="" value="java:/mySimpleWorkListEntityManager"/>

Second Step: Edit the Spring Application Context (XML):

<jpa:repositories base-package="org.woehlke.simpleworklist" />

<!-- Look up the database in JNDI -->
id="dataSource"expected-type="javax.sql.DataSource" /> 

<!-- Look up the container deployed EntityManager -->
expected-type="javax.persistence.EntityManager" />

<!-- Look up the container deployed EntityManager -->
expected-type="javax.persistence.EntityManagerFactory" /> 

<!-- JPA Configuration -->
<bean class="" />

<bean class="org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor" />

<bean id="jpaDialect" class="org.springframework.orm.jpa.vendor.HibernateJpaDialect" /> <!-- Use JTA transactions with the container-deployed EntityManager -->
<tx:jta-transaction-manager /> 

<!-- Transactions -->
<tx:annotation-driven transaction-manager="transactionManager" />

The Beans dataSource, entityManager and entityManagerFactory are configured to be fetched via JNDI.

Webapp URL:

Github Source-Code:

JPA on Slideshare:

MySQL DataSource for Wildfly10 like Openshift

how to configure Wildfly10 to have a DataSource for MySQL like Openshift the RedHat Cloud.

I installed Wildfly10 on ~/srv/wildfly-10.0.0.Final

Step 1: Add MySQL Driver to modules:

Download the mysql-driver mysql-connector-java-5.1.38.jar from any Maven Repository e.g.:

go to WildFly modules Directory:
cd wildfly-10.0.0.Final/modules/system/layers/base
mkdir -p mysql/mysql-connector-java/main

copy  mysql-driver mysql-connector-java-5.1.38.jar here.

add a file module.xml with content:

<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.1" 
        <resource-root path="mysql-connector-java-5.1.38.jar"/>
        <!-- Insert resources here -->
        <module name="javax.api"/>
        <module name="javax.transaction.api"/>
        <module name="javax.servlet.api" optional="true"/>

Step 2: add Driver and Datasource in standalone.xml

cd wildfly-10.0.0.Final//standalone/configuration/
edit standalone.xml
find <subsystem xmlns="urn:jboss:domain:datasources:2.0">
add MySQL datasource and driver:

  <datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true">
  <!-- add MySQL DataSource here: -->

 <driver name="h2" module="com.h2database.h2">
<!-- add MySQL Driver here: -->
    <driver name="com.mysql" module="mysql.mysql-connector-java">

change credentials for your needs.
insure the database is encoded UTF-8-bin.

Dienstag, 19. Januar 2016

Cyclic cellular automaton


The cyclic cellular automaton is a cellular automaton rule developed by David Griffeath and studied by several other cellular automaton researchers.

In this system, each cell remains unchanged until some neighboring cell has a modular value exactly one unit larger than that of the cell itself, at which point it copies its neighbor's value.

Run the Application

git clone
cd cyclic-cellular-automaton
mvn clean install exec:java

or Download the jar and double click on it to start the Application:


Early Screen



Diffusion-limited aggregation

Fractals and random walk due to Brownian motion cluster



Diffusion-limited aggregation (DLA) is the process whereby particles undergoing a random walk due to Brownian motion cluster together to form aggregates of such particles.

This theory, proposed by T.A. Witten Jr. (not to be confused with Edward Witten) and L.M. Sander in 1981,[1] is applicable to aggregation in any system where diffusion is the primary means of transport in the system. DLA can be observed in many systems such as electrodeposition, Hele-Shaw flow, mineral deposits, and dielectric breakdown.


Run the Application

git clone
cd diffusion-limited-aggregation
mvn clean install exec:java

or Download the jar and double click on it to start the Application:






Simulated Evolution - Artificial Life and DNA


Green food appears in a world with red moving cells. These cells eat the food if it is on their position. Movement of the cells depends on random and their DNA. A fit cell moves around and eats enough to reproduce. Reproduction is done by splitting the cell and randomly changing the DNA of the two new Cells. If a cell doesn't eat enough, it will first stand still and after a while it dies.

Run the Application

git clone
cd simulated-evolution
mvn clean install exec:java

or Download the jar and double click on it to start the Application:





   cell is young

cell is fat enough to reproduce

cell is old enough to reproduce

cell is hungry and waiting for food or death

cell is old and waiting for death
*(if cell is fat and old enough for reproduction it splits and changes the childrens DNA)


UML Class Modell

UML Class Modell of Simulated Evolution Application


Montag, 18. Januar 2016

Mandelbrot Set drawn by a Turing Machine


the Mandelbrot set is the set of values of c in the complex plane for which the orbit of 0 under iteration of the complex quadratic polynomial z_(n+1)=z_n^2+c remains bounded.

That is, a complex number c is part of the Mandelbrot set if, when starting with z0 = 0 and applying the iteration repeatedly, the absolute value of zn remains bounded however large n gets. 


The Turing Machine runs around the Mandelbrot Set

The Mandelbrot Set completed
a click into the Mandelbrot Set draws the Julia Set

a click into the Mandelbrot Set draws the Julia Set

Running the Java Application

git clone
cd mandelbrot
mvn clean install exec:java

or Download the jar and double click on it to start the Application:

Running the JavaScript Application


The Turing Machine to Compute the Mandelbrot Set

The Complex Number Plane is divided into Cells for the two dimensional Tape of the Turing-Machine.

Starting with Complex Number of Cell right from the Mandelbrot Set the Turing Machine goes one Step to the left and computes, wether the Complex Number of the Cell is inside the Set. If not, it continues to go left.

The Turing-Machine then goes around the Set by computing wether the Complex Number of the Cell is inside the Set. If not it turns left, else it turns right. After that it goes one step forward.

After the Turing Machine finished to run around the Set, the Application paints the Inside of the Set Black und computes the Colors of the Outside.

Julia Set

The Mandelbrot Set is drawn into the Complex Number Plane and so clicking into it, it delivers the Complex Number to calculate a Julia Set for it.

The most beautiful Julia Sets are drawn by clicking into the Border of the Mandelbrot Set.