@MapKey vs @MapKeyColumn

// @MapKey refers the field/property (unique one) in the Entity witch is the value of a Map field/property
// @MapKeyColumn refers the column in an @ElementCollection

@Entity
public class Person6 {
    @OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL, orphanRemoval = true, mappedBy = "person6")
    @MapKey(name = "address") // is the Address6's address property
    public Map<String, Address6> getAddress6Map() {
        return address6Map;
    }
...

@Entity
public class Address6 {
    private Integer id;
    private String address;
    private Person6 person6;
...

ESB

ESB
- match and route (filter node for IBM)
- convert (protocols)
- format data
- orchestration (e.g. from some web services, dbs, files, etc collect partial data and create a new web services)
- event delivering

ESB = Enterprise service bus
contains the integration logic

IBM Integration BUS = IBM's ESB implementation

Ubuntu XRDP (remote desktop from windows)

installation
Consider ubuntu xrdp error problem connecting 5910 solution:
tightvncserver MUST be installed before xrdp!!!

sudo apt-get install xfce4
sudo apt-get install tightvncserver
sudo apt-get install xrdp
sudo usermod -aG xrdp adr

configure XRDP (option 1)
cat ~/.xsession
echo 'xfce4-session' > ~/.xsession (when having XFCE or xubuntu desktop)
or
echo 'mate-session' > ~/.xsession (when having MATE desktop)
or
echo 'startlxde' > ~/.xsession (when having LXDE or lubuntu desktop)
or use 'lxsession -s Lubuntu -e LXDE' or 'lxsession -s Lubuntu-Netbook -e LXDE' instead of 'startlxde'

configure XRDP (option 2)
In /etc/xrdp/startwm.sh replace the line ". /etc/X11/Xsession":
sudo sed -i s/"^\. \/etc\/X11\/Xsession"/"#\. \/etc\/X11\/Xsession\nstartxfce4"/ /etc/xrdp/startwm.sh
or
sudo sed -i s/"^\. \/etc\/X11\/Xsession"/"#\. \/etc\/X11\/Xsession\nmate-session"/ /etc/xrdp/startwm.sh
or
sudo sed -i s/"^\. \/etc\/X11\/Xsession"/"#\. \/etc\/X11\/Xsession\nstartlxde"/ /etc/xrdp/startwm.sh
or use 'lxsession -s Lubuntu -e LXDE' or 'lxsession -s Lubuntu-Netbook -e LXDE' instead of 'startlxde'

configure XRDP for PATH and .profile problem
Change in /etc/xrdp/startwm.sh:
#!/bin/sh
# see http://askubuntu.com/questions/92333/ubuntu-haves-a-different-path-when-access-via-xrdp-session
. /etc/environment
. ~/.profile
...

start xrdp
sudo systemctl restart xrdp
See the log file:
tail -f /var/log/xrdp-sesman.log

login from windows
When logging with windows RDC first you'll get an error message. Press ok in the error's message window then you'll be asked (using a linux-style window) for the user and password. Fill the required fields (the ones already filled in RDC) then press ok and that's it.

See also
gnome-fallback-way: http://c-nergy.be/blog/?p=3518
inspired by: http://www.tweaking4all.com/software/linux-software/use-xrdp-remote-access-ubuntu-14-04/

Handling video in Linux

video exif tool
sudo apt-get install libimage-exiftool-perl

display video's rotation exif
exiftool -Rotation 20151024_132350.mp4

rotate the exif metadata only
ffmpeg -i 20151024_132350.mp4 -metadata:s:v rotate="0" -vf "hflip,vflip" -c:v libx264 -crf 23 -acodec copy 20151024_132350b.mp4

resize to 720p
ffmpeg -i IMG_0001.MOV -vf scale=-1:720 IMG_0001-720p.MOV

VMWare

ERROR1
	VMWare says something like "vmware kernel module updater ..." and requires pressing Install button then nothing happens.
ERROR2
	After some Ubuntu updates the vmware network adapters are gone.
SOLUTION
	sudo vmware-modconfig --console --install-all