30.12.2010

Review at amazon: Getting Started with Oracle BPM Suite 11gR1 – A Hands-On Tutorial

Last two weeks i read "Getting Started with Oracle BPM Suite 11gR1 – A Hands-On Tutorial" and played with the examples given in this book.

On the packtpub website the following can be found about this book:
What you will learn from this book :
  • Build a business process application
  • Model executable processes with Business Process Modeling Notation (BPMN) 2.0
  • Optimize your processes using process simulation
  • Analyze activity with Process Analytics and Business Activity Monitoring
  • Integrate business decisions with Business Rules
  • Design complex Human Task flows
  • Develop rich forms for BPM
  • Collaborate with Process Spaces (Social BPM)
  • Explore life-cycle management features


What they are not telling is, that this book contains many step by step examples with excellent screenshots. For this reason it is very easy to follow all the steps to set up a running BPM Suite (The installation process is described very detailed for windows) and get a process running.
On more than 500 pages you can find a short introduction in BPMN 2.0, Installation, BPM Studio, Roles, Simulation, ....
If you are interested, take a look at my review at amazon.de (like all my reviews: written in german ;-).

28.09.2010

Oracle BPM: How to use start and end events

For modelling a process you have to configure your Jdeveloper 11g like shown in this posting. Then you can create easliy a process like this one:

[The behaviour of the tool palette is a little bit weird, because you can not use drag&drop. You have to click an item and then move the mouse inside the graph. Then the item is beneath the mouse cursor and you can place it with a second click.]

The start event can be changed via right mouse click:

[The start event with the envelope is called "message start event"]

Here an excerpt from the official documentation about the start events:
The none start event is used when no instance trigger is defined. Process analysts can use the none start event as a placeholder when the necessary start event of a process is unknown or is defined and implemented later by process developers. None start events are also used to specify the beginning of a process where the process instance is created by another flow object. Although the none start event does not trigger the creation of a process instance, it is required when triggering a process instance using the following flow objects:
  • Receive task. The receive task must have the Create Instance property set to true.
  • User task implemented with the initiator pattern
The message start event triggers a process instance when a message is received. This message can be sent from another BPMN or BPEL process or from a service. Messages are types of data used for of exchanging information between processes. Just as data objects are used to define the data used within a project, messages are used to define the data used between processes or between a process and a service.
You can exposed a BPMN process as service which enables other processes and applications to invoke the process. To expose a process as a service, your process must begin with a message start event.

The signal start event is similar to a message start event in that it is based on communication from another process or service. However, the message start event responds to a message sent to a specific process. In contrast, the signal start event is a response to a signal broadcast to multiple processes. Signals can be broadcast from a BPMN process using the signal throw event. Using a combination of signal throw and signal start events, you can invoke multiple processes simultaneously.

The timer start event triggers the creation of a process instance based on a specific time condition. You can configure the timer start event to trigger a process instance based on the following:
  • A specific date and time. For example, a process could be triggered on December 31, at 11:59 PM.
  • A recurring interval. For example, a process could be triggered every 10 hours, 5 minutes, 32 seconds.
The following end events can be used:
  • None end event
    like start event
  • Error end event
    Errors end events are normally used with the error boundary event. The error
    boundary event is used to alter the process flow based on a specific error. This flow usually ends using an error end event.
  • Message end event
    like start event
  • Terminate end event
    The terminate end event is used to immediately terminate a process. When a terminate end event is reached, the process ends immediately. There is no error handling or additional clean up performed.

19.09.2010

Fritz!Box: New firmwares with IPv6-support!

Last week AVM released some new firmwares including IPv6-support. After running the online update my Fritz!Box 7270 showed the following version:

[54.04.86]
But how to activate IPv6? After some clicks i found the this tab:

Per default the IPv6-support is switched off:

After activating this checkbox the following options are shown:

That's all.
Now you can use IPv6 for your lan at home and first check is opening the Fritz!Box webinterface via IPv6:

12.09.2010

BPM on Linux...

Running jdeveloper on Linux is not really a problem. Just unzip the tarball (<11g) or run the installer (11g +) and start with ./jdev.
Jdeveloper 11g starts on Linux but after installing the BPM functionality i got:
Sep 12, 2010 9:02:55 PM oracle.ideimpl.extension.WarnAboutDisabledExtensionsAddinlogDisabledExtensions
SEVERE: jar:/file:/home/data/opt/Oracle11.1.1.3.0/jdeveloper/jdev/extensions/oracle.bpm.modeler.jar!/META-INF/extension.xml:0: Not loaded: Missing dependencies: oracle.sca.modeler

Sep 12, 2010 9:02:55 PM oracle.ideimpl.extension.WarnAboutDisabledExtensionsAddinlogDisabledExtensions
SEVERE: jar:/file:/home/data/opt/Oracle11.1.1.3.0/jdeveloper/jdev/extensions/oracle.bpm.tests.jdev-test.jar!/META-INF/extension.xml:0: Not loaded: Missing dependencies: oracle.bpm.fusion.soa, oracle.bpm.workflow

Sep 12, 2010 9:02:55 PM oracle.ideimpl.extension.WarnAboutDisabledExtensionsAddinlogDisabledExtensions
SEVERE: jar:/file:/home/data/opt/Oracle11.1.1.3.0/jdeveloper/jdev/extensions/oracle.bpm.fusion.sca.jar!/META-INF/extension.xml:0: Not loaded: Missing dependencies: oracle.sca.modeler

Sep 12, 2010 9:02:56 PM oracle.ideimpl.extension.WarnAboutDisabledExtensionsAddinlogDisabledExtensions
SEVERE: jar:/file:/home/data/opt/Oracle11.1.1.3.0/jdeveloper/jdev/extensions/oracle.bpm.fusion.soa.jar!/META-INF/extension.xml:0: Not loaded: Missing dependencies: oracle.sca.modeler, oracle.sca.mediator, oracle.bpm.modeler, oracle.bpm.modeler.plugins, oracle.sca.modeler.plugins, oracle.bpm.mapper, oracle.bpm.rules, oracle.bpm.workflow

Sep 12, 2010 9:02:56 PM oracle.ideimpl.extension.WarnAboutDisabledExtensionsAddinlogDisabledExtensions
SEVERE: jar:/file:/home/data/opt/Oracle11.1.1.3.0/jdeveloper/jdev/extensions/oracle.bpm.fusion.internal.jar!/META-INF/extension.xml:0: Not loaded: Missing dependencies: oracle.bpm.rules, oracle.bpm.workflow
With this error messages the bpm.modeler does not work...
Does anybody know, how to get around this problem? (On Windows there are no problems -> BPM-modellers do not use Linux?!)


08.09.2010

Oracle BPM Suite: Overview

In my last posting i provided some links to the documentation. After reading some pages, i will try to give a summary.

Here some explanations to these boxes:
  • BPM Studio = Jdeveloper 11g with BPM installed
  • Business Process Composer = a web-based application that enables business
    users to collaborate with process developers and designers
  • BAM = a complete solution for building interactive, real-time dashboards and proactive alerts for
    monitoring business processes and services
But how do this components fit into Oracle Fusion? Take a look at this picture:

Here you can see, that the BPMN and BPEL Service Engines share the same process core.
The Oracle BPM Engine provides a run-time environment for running business processes. It provides native support for both BPMN and BPEL processes. The Process Core
provides engine functionality that is shared by the BPMN and BPEL engines.
Some of the key functionality performed by the process core includes:
– Manage security
– Generate audit trails
– Invoke services
– Manage persistence
Ok. But why are there two ways for creating business processes? And hwo do they interact with each other?
Here two pictures with typical worksteps:






With knowing all this we are able to start our first project. Finally a screenshot of the business process composer:

05.09.2010

Oracle BPM Suite: Documentation

After getting the BPM Suite ready (Installing BPM components into jdeveloper), here a collections of links to quick-starts, tutorials and the original documentation:
  • Oracle BPM and Oracle Service Bus Integration:
    About the global picture...
  • BPM 11g: For Oracle, It's All About Integration:
    Summarizing the steps to Oracle's BPM...
  • The official documentation library (11g Release 1)
    and inside this documentation you can find the following Guides:
  • Modelling and Implementation Guide
    This guide contains 447 pages and is for the following audience:
    This guide is intended for process developers who use the Business Process Studio application to create and implement business processes, and create and configure Oracle BPM projects used to created process-based applications using the Oracle Business Process Management Suite.
  • Administrator's Guide
    Targeted audience (618 pages):
    This document is intended for administrators managing applications on an SOA platform.
  • User's Guide
    With only 150 pages for:
    This document is intended for all users of both Oracle Business Process Management Workspace and Oracle Business Process Management Process Spaces.
  • User's Guide for Oracle Business Composer
    135 pages with the following intended audience:
    This guide is intended for process analysts who use the Business Process Composer application to create and edit the business processes and Oracle BPM projects used to created process-based applications using the Oracle Business Process Management Suite.
    This guide is also intended for process developers who must use Business Process Composer. See Section 1.2, "Oracle BPM User Personas" for more information on these user personas.
    This manual assumes that you have basic knowledge of business process design and are familiar with Business Process Management Notation (BPMN) 2.0.
  • Samples and Demos
Enjoy and Happy Reading!

31.08.2010

Oracle BPM 11g: Missing BPM Studio Components in Jdeveloper 11g

Oracle announced Business Process Management Suite 11g on June 14th 2010:
  • A component of Oracle Fusion Middleware 11g, Oracle Business Process Management Suite 11g is the industry’s most complete, open and integrated Business Process Management (BPM) solution.
  • Oracle Business Process Management Suite 11g supports all types of processes with a new unified process foundation, user-centric design and social BPM capabilities.
  • Oracle Business Process Management Suite 11g includes a native implementation of BPMN 2.0.
So let's take a look at BPM homepage. There you can find a link "getting started". But on the "getting started" page there is a link "Get started with BPM Suite 10g".
Ok - you want 11g you should start with 10g and no quick link how to start the studio...

Next try: Start with the BPM download page. This sounds better:
  • JDeveloper: Download JDeveloper 11.1.1.3.0 (BPM Studio) from the FMW download page. Look for JDeveloper and Application Development Framework in the Required Addition Software section.
  • SOA and BPM Extension for JDeveloper: Install the SOA and BPM Extension using the JDeveloper Update Center. From the JDeveloper menu choose Help > Check for Updates. In the Update Wizard, select Search Update Centers and ensure Oracle Fusion Middleware Products is checked ( screenshot). Then ensure that Oracle SOA Composite Editor is checked ( screenshot, your version may not match the screenshot exactly). The SOA and BPM Extension is approximately 200 MB each.
But the screenshots are a redirects to the BPM Homepage....

To save your time, here a quick start, how to get the BPM Studio.

First download JDeveloper 11g (11.1.1.3.0), unzip it and run jdeveloper:

Then open "Check for Updates" inside the "help" menu.

After that follow the Update Wizard like shown in the next pictures:







At this step you have to provide your Oracle account credentials.



Finished!!!

Now you can choose "New Appliation"

and here we go:



That's all...

22.07.2010

Review at amazon: Turbo Coded Modulation for Multicarrier Communication Systems: Applications to WiMAX, WLAN and DSL

Bump!
Did you ever think about how you cd player does its error correction? If so, you know abount Reed-Solomon-Codes. But this is state of the art of 1960 (ok: 1980). Just take a look at wikipedia:

Today, RS codes are widely implemented in digital storage devices and digital communication standards, though they are being slowly replaced by more modern low-density parity-check (LDPC) codes or turbo codes.
And if you want to dive into this new world, here is a chance to start:



A printout of a dissertation which can compete with signal processing lectures. Not easy to read but the subject is not easy, too ;-). Read my review at amazon (like always only in german, sorry).

27.06.2010

Review at amazon: VirtualBox 3.1 - Beginner's Guide

Many postings on this blog are related to virtualization technology. Some about VMWare and most about VirtualBox. This weekend i read this book:

Here a summary from packtpub.com about this book:
  • Download and install VirtualBox in a Windows/Linux environment
  • Create your virtual machine on VirtualBox, using Ubuntu Linux Desktop/Windows XP as the "guest" operating system
  • Share folders and pass information between the host and the guest operating systems
  • Explore the Hardware 3D Acceleration feature available in Windows and Linux guests
  • Revert the state of a virtual machine using snapshots
  • Architect a virtual machine using fixed and dynamically expanding hard drive images and choose the appropriate hard disk controller
  • Clone hard disks using the Virtual Media Manager
  • Connect a virtual machine to the Internet and a local network using the default NAT mode
  • Illustrations for using WordPress, Drupal, and File Server virtual appliances
  • Set up a headless server and create, manage, and run virtual machines in that server from a remote PC
But in this list there are some important points missing like
  • Using Seamless Windows (using windows from the virtual machine within the host desktop)
  • Shared folders between guest and host
  • Configuring the disk controller type for a guest (IDE <-> SATA <-> SCSI)
  • Snapshottings guest machines
My summary: VirtualBox 3.1 is a good book with many configurations including detailed screenshots. For Beginners it is very easy to get everything running. Experts should skip the chapter 1 to 3, because there you can only find howto install a guest (like ubuntu, windows 7, damn small linux) or how to browse inside a guest or using openoffice. But the rest even experts should read!
If you are interested, take a look at my review at amazon.de (It is written in german, sorry).

02.06.2010

Oracle Fusion Demo



Download the zip-file from here.
Then create a appropriate directory:
mkdir fusiondemo
cd fusiondemo
unzip /tmp/FusionOrderDemo_R1PS2.zip
After that you will see:
schroff@hades:$ l
insgesamt 32
drwxr-xr-x  7 schroff schroff 4096  2. Jun 21:38 .
drwxr-xr-x 11 schroff schroff 4096  2. Jun 21:38 ..
drwxr-xr-x 13 schroff schroff 4096  2. Jun 21:38 CompositeServices
drwxr-xr-x  6 schroff schroff 4096  2. Jun 21:38 Infrastructure
drwxr-xr-x  6 schroff schroff 4096  2. Jun 21:38 MasterPriceList
-rw-r--r--  1 schroff schroff 3061 28. Mai 11:00 readme.txt
drwxr-xr-x  7 schroff schroff 4096  2. Jun 21:38 StandaloneExamples
drwxr-xr-x  7 schroff schroff 4096  2. Jun 21:38 StoreFrontModule
The readme.txt contains the following:

About the Oracle Fusion Order Demo Application

Fusion Order Demo (FOD) is an end-to-end application sample developed by Fusion Middleware Product Management. The purpose of the demo is to demostrate common use cases in Fusion Middleware applications, including the integration between different components of the Fusion technology stack, (ADF, BPEL, and WebCenter). The demo contains several applications that make up various parts of functionality.

Note that there are two versions of the demo: One which includes the ADF and SOA components (named FusionOrderDemo_R1PS2.zip), and one which includes these components, as well as WebCenter functionality. 
About the Applications included in the Demo (organized by extracted directory name)

CompositeServices - WebLogicFusionOrderDemo.jws is a sample SOA application based on Oracle Mediator, BPEL Process, Human Task, Business Rules, and Messaging Service. This application shows how to use Oracle SOA Suite to integrate a number of applications into one cohesive ordering system. The accompanying developer's guide for this module is Oracle<AE> Fusion Middleware Developer's Guide for Oracle SOA Suite 11g (http://www.oracle.com/pls/as111130/lookup?id=SOASE).

Infrastructure - Infrastructure.jws contains the database schema information for the sample application. All applications use the same schema, FOD. The accompanying Developer's Guide for this module is Oracle<AE> Fusion Middleware Fusion Developer's Guide for Oracle Application Development Framework 11g (http://www.oracle.com/pls/as111130/lookup?id=ADFFD).

MasterPriceList - MasterPriceList.jws is a sample application that integrates with Microsoft Excel to demonstrate the use of ADF Data Integration functionality. The accompanying Developer's Guide for this module is Oracle<AE> Fusion Middleware Desktop Integration Developer's Guide for Oracle Application Development Framework 11g  (http://www.oracle.com/pls/as111130/lookup?id=ADFDI).

StandaloneExamples - This module contains several workspaces that demonstrate various features of the ADF Framework that are not included in the Store Front scenario. The accompanying Developer's Guide for this module is Oracle<AE> Fusion Middleware Fusion Developer's Guide for Oracle Application Development Framework 11g  (http://www.oracle.com/pls/as111130/lookup?id=ADFFD).

StoreFrontModule - StoreFrontModule.jws is a sample web application based on Oracle ADF Business Components, ADF Model data bindings and ADF Faces. The application follows an online shopping scenario and contains hook points for integrating with the CompositeServices module. The accompanying Developer's Guide for this module is Oracle<AE> Fusion Middleware Fusion Developer's Guide for Oracle Application Development Framework 11g (http://www.oracle.com/pls/as111130/lookup?id=ADFFD).

The sample application is provided for informational purposes only.

Credits
Fusion Order Demo was created by:

Laura Akel
Duncan Mills
Lynn Munsinger
Juan Ruiz
Clemens Utschig
Kundan Vyas

Each directory contains another readme.txt for further instructions
(deployment, import to jdev).
Inside the CompositeServices you should open the jws-file with jdeveloper:

The follwing screenshot shows the applications with SOA content:

Here the composite.xml form the B2BX12OrderGateway:


This is a really small composite. If you want to see something larger, you should open the composite from the OrderBooking application. In one of the next posts i will try merge the screenshots to one picture (or does anybody know, how to create images from composites without doing screenshots?)...





15.05.2010

Building Virtualbox from scratch

Virtualbox can be used with two licenses. Here the official statement from the website:
The full VirtualBox package is available in binary (executable) form free of charge from the Downloads page. This version is free for personal use and evaluation under the terms of the VirtualBox Personal Use and Evaluation License.
If, instead, you wish to purchase licenses for enterprise use and/or enterprise support for VirtualBox, please do not hesitate to contact your Sun representative or buy online from the Web Store
The VirtualBox Open Source Edition (OSE) is the one that has been released under the GPL and comes with complete source code. It is functionally equivalent to the full VirtualBox package, except for a few features that primarily target enterprise customers. This gives us a chance to generate revenue to fund further development of VirtualBox.

So if you want to use Virtualbox under GPL you have to build it from scratch. This is not very difficult:

  1. Download the OSE (Open Source Edition) from Virtualbox
  2. Take a look at the build instructions
  3. If you are running Debian, you have to install the following packages:
    apt-get install bin86 bcc iasl libxml2-dev libxslt-dev liborbit-de libcurl4-openssl-dev libpng12-dev libsdl1.2-dev libxcursor-dev libxmu-dev python-dev libpulse-dev libcap-dev libqt4-opengl-dev
  4. Unpack the tarball
    tar -jxf VirtualBox-3.1.8-OSE.tar.bz2
  5. Configure the package
    ./configure -help
    Usage: ./configure [OPTIONS]...

    Configuration:
    -h, --help display this help and exit
    --nofatal don't abort on errors
    --disable-xpcom disable XPCOM and related stuff
    --disable-python disable python bindings
    --disable-sdl-ttf disable SDL_ttf detection
    --disable-alsa disable the ALSA sound backend
    --disable-pulse disable the PulseAudio backend
    --disable-dbus don't use DBus and hal for hardware detection
    --disable-kmods don't build Linux kernel modules (host and guest)
    --disable-opengl disable OpenGL support
    --enable-webservice enable the webservice stuff
    --disable-hardening don't be strict about /dev/vboxdrv access
    --build-libxml2 build libxml2 from sources
    --build-libxslt build libxslt from sources
    --setup-wine setup a Wine directory and register the hhc hack

    Paths:
    --with-gcc=PATH location of the gcc compiler [gcc]
    --with-g++=PATH location of the g++ compiler [g++]
    --with-kbuild=DIR kbuild directory [/tmp/VirtualBox-3.1.8_OSE/kBuild]
    --with-iasl=PATH location of the iasl compiler [iasl]
    --with-mkisofs=PATH location of mkisofs [mkisofs]
    --with-linux=DIR Linux kernel source directory [/lib/modules/2.6.28.7/build]
    --with-qt-dir=DIR directory for Qt4 headers/libraries [pkgconfig]
    --with-openssl-dir=DIR directory for OpenSSL headers/libraries
    --out-path=PATH the folder to which configuration and build output
    should go

    Build type:
    -d, --build-debug build with debugging symbols and assertions
    --build-profile build with profiling support
    --build-headless build headless (without any GUI frontend)
  6. schroff@hades:$ ./configure
    Checking for environment: Determined build machine: linux.x86, target machine: linux.x86, OK.
    Checking for kBuild: found, OK.
    Checking for gcc: found version 4.3.2, OK.
    Checking for as86: found version 0.16.17, OK.
    Checking for bcc: found version 0.16.17, OK.
    Checking for iasl: found version 20061109, OK.
    Checking for xslt: found, OK.
    Checking for pthread: found, OK.
    Checking for libxml2: found version 2.6.32, OK.
    Checking for libxslt: found version 1.1.24, OK.
    Checking for libIDL: found version 0.6.8, OK.
    Checking for ssl: found version OpenSSL 0.9.8g 19 Oct 2007, OK.
    Checking for libcurl: found version 7.18.2, OK.
    Checking for zlib: found version 1.2.3.3, OK.
    Checking for libpng: found version 1.2.27, OK.
    Checking for SDL: found version 1.2.12, OK.
    Checking for X libraries: found, OK.
    Checking for Xcursor: found, OK.
    Checking for Xmu: found, OK.
    Checking for Mesa / GLU: found version 1.2, OK.
    Checking for Qt4: found version 4.4.3, OK.
    Checking for Qt4 devtools: found version 4.4.3, OK.
    Checking for python support: found version 2.5.2, OK.
    Checking for static stc++ library: found, OK.
    Checking for Linux kernel sources: found version 2.6.28, OK.
    Checking for ALSA: found version 1.0.16, OK.
    Checking for PulseAudio: found version 0.9.10 API version 11, OK.
    Checking for libcap library: found, OK.
    Checking for compiler.h: compiler.h not found, OK.

    Successfully generated '/tmp/VirtualBox-3.1.8_OSE/AutoConfig.kmk' and '/tmp/VirtualBox-3.1.8_OSE/env.sh'.
    Source '/tmp/VirtualBox-3.1.8_OSE/env.sh' once before you start to build VBox:

    source /tmp/VirtualBox-3.1.8_OSE/env.sh
    kmk

    To compile the kernel modules, do:

    cd ./out/linux.x86/release/bin/src
    make


    +++ WARNING +++ WARNING +++ WARNING +++ WARNING +++ WARNING +++ WARNING +++
    Hardening is enabled which means that the VBox binaries will not run from
    the binary directory. The binaries have to be installed suid root and some
    more prerequisites have to be fulfilled which is normally done by installing
    the final package. For development, the hardening feature can be disabled
    by specifying the --disable-hardening parameter. Please never disable that
    feature for the final distribution!
    +++ WARNING +++ WARNING +++ WARNING +++ WARNING +++ WARNING +++ WARNING +++

    Enjoy!
  7. source ./env.sh 
  8. kmk all
  9. cd out/linux.x86/release/bin/components
    ln -s ../VBoxDDU.so .
    ln -s ../VBoxREM.so .
    ln -s ../VBoxRT.so .
    ln -s ../VBoxVMM.so .
    ln -s ../VBoxXPCOM.so .
  10. Last but not least follow the instructions here to build the kernel modules und to run Virtualbox...
If this was to much work, just do the three steps here and use official binaries...

09.05.2010

Exif?!

Did you ever examine what data your digital camera is writing inside your images? There is much more than the picture itself. It is called
EXIF = Exchangeable Image File Format
Here a shortened listing:
ExifTool Version Number : 7.30
File Name : 2OG.JPG
File Size : 831 kB
File Modification Date/Time : 2008:05:19 13:49:28
File Type : JPEG
MIME Type : image/jpeg
Exif Byte Order : Little-endian (Intel, II)
Make : NIKON
Camera Model Name : COOLPIX S6
Orientation : Horizontal (normal)
Software : COOLPIX S6V1.0
Modify Date : 2008:05:19 13:49:28
Y Cb Cr Positioning : Co-sited
Exposure Time : 1/125
F Number : 8.5
Exposure Program : Program AE
ISO : 50
Exif Version : 0220
Date/Time Original : 2008:05:19 13:49:28
Create Date : 2008:05:19 13:49:28
Max Aperture Value : 3.0
Flash : Off
Focal Length : 5.8 mm
Maker Note Version : 2.00
Color Mode : Color
White Balance : Auto
Focus Mode : AF-S
ISO Selection : Auto
Data Dump : (Binary data 1502 bytes, use -b option to extract)
Compression : JPEG (old-style)
Preview Image Start : 14921
Preview Image Length : 16048

Until this weekend i did not care about this information, too. But After upgrading my laptop all images loosed the right date, because with a wrong copy command the date was replaced with the current date. But with the help of exiftool (apt-get install libimage-exiftool-perl) it was easy to correct the wrong date:
$ exiftool 2OG.JPG |grep "Create Date"
Create Date : 2008:05:19 13:49:21
Using exiftool together with awk, sed and touch the date of the images can be restored without a problem...

02.04.2010

Installating Openafs on Windows fails... (64Bit)

If you have to install a msi-installer on a windows 64Bit machine, it is possible that this installer just fail silently. After you enable logging (look at this posting) this is a possible error message:
MSI (s) (60:CC) [20:34:54:265]: Product: OpenAFS for Windows (64-bit) -- Error 1719. The Windows Installer Service could not be accessed. This can occur if you are running Windows in safe mode, or if the Windows Installer is not correctly installed. Contact your support personnel for assistance.
This is an indication, that your msi-installer is configured in 32-bit mode and not in 64-bit mode but the installable needs 64-bit mode.
How can you change this? Here one answer found on Aaron Stebner's WebLog:
  1. Click on the Start menu, choose Run, type cmd and click OK
  2. Run %windir%\system32\msiexec.exe /unregister
  3. Run %windir%\syswow64\msiexec.exe /unregister
  4. Run %windir%\system32\msiexec.exe /regserver
  5. Run %windir%\syswow64\msiexec.exe /regserver
  6. Restart the computer
After that the installation will finish (hopefully) without an error ;-)

28.03.2010

Windows-Installer MSI: failing without a trace

Did you ever try to install a program on a microsoft windows OS with msi (Microsoft Installer)? This type of installation mostly works, but sometimes the process ends with a dialog: "There was an error .. Please try again"
And of course, everyone tries again, but just the same dialog. Ok. Reboot. Same dialog...
Hmm - this will not work.
If you ask some friends, you get the typical answers:
  • use a real operating system
  • on Linux this never happens
  • buy a MAC
But not the OS is the problem. The problem is, that there are no logfiles for the installation process.
However, this can be changed:
  • Start regedit and edit the registry at HKEY_LOCAL_MACHINE\Software\
    Policies\Microsoft\Windows\Installer
  • Add Reg_SZ: Logging
  • Set Logging to "v"
  • open a shell via cmd and type "cd %temp%". In this directory you will find logfiles of the next installations.


18.02.2010

Next please...

Today i read in my newspaper about IT-hypes of the last years. www.faz.net built up a list how a company has to communicate to its customers:
  • 2003: friendster
  • 2004: blogs/wikis
  • 2005: cyworld
  • 2006: podcasts
  • 2007: second life
  • 2008: facebook/myspace
  • 2009: twitter
  • 2010: foursquare/apps
Wow... Do you remember all of them? (if not just ask google ;-)
And what about 2011 (i know 2010 is young, but i think the apps are just unbeatable...)

14.02.2010

and the winner is:



If you are insterested, here a link to a nice pdf about the boat USA.

31.01.2010

"Oracle has finalized the Sun transaction and the deal has closed."


The title of this blogging is from the offical website from oracle "Overview and Frequently Asked Questions for the Developer Community".
So what are the important answers for these questions?

For the near future, all these sites [Sun Developer Network, java.sun.com, and BigAdmin] will remain in their current form.
Java.net is an important part of the community, and Oracle will continue
to invest in it—as well as look for new and better ways to support its
membership
NetBeans.org will continue to be available at the usual URL—no changes.
We will also communicate important admin/Solaris-related news through
BigAdmin's existing newsletter.
But what has changed with closing the deal?
If you try www.sun.com you get redirected to www.oracle.com and you can find the hardware here:

And after some clicks you will see something like this:

If you want to get the sun hardware more quickly, you can use http://catalogs.sun.com.

23.01.2010

Oracles SQL Developer 2.1...

On december 15th Oracle released a new version of its database tool SQL Developer:
Version 2.1.0.63.73

They jumped from version 1.5.5 to 2.1.0, so there should be some really new features built in. The release notes tell us:
  • Oracle SQL Developer Unit Testing provides a unit testing framework that allows you to build a set of sequential steps to create test cases for testing your PL/SQL code. These tests can optionally be collected into test suites, which can then be run and rerun to verify required functionality after any changes to your PL/SQL code. Command
    line access for executing, exporting, and importing suites or tests is provided for integration with your build and version control environment.
  • SQL Developer 2.1 incorporates a Data Modeler viewer, integrated into SQL Developer. The Data Modeler Viewer also supports visualizing tables, views and object types on read-only Data Modeler diagrams. The SQL Developer Data Modeler Viewer extension is a free extension to SQL Developer. For a updateable data model, download and review the Oracle SQL Developer Data Modeler, a stand alone product that supports logical,
    relational and conceptual modeling. The tool supports forward and reverse engineering and import and export from various sources. The Data Modeler supports an additional standalone model viewer, which allows users to open models built in the full Data Modeler.
  • The SQL Worksheet has been redesigned for SQL Developer 2.1 to support concurrent task processing for long running operations. Updates to the worksheet include the support of multiple data grids off the F9 (Run Statement) command and dockable OWA, DBMSOutput and SQL  History windows.
  • A detailed explanation is given here.
  • Let's focus on the second point: Data Modeler



  • I tried to work with that tool, but without the documentation or tutorial you are really lost. The official documentation does not explain anything useful about the data modeler...
    After searching a while i found some some nice links to start:
    After at least the first tutorial you will be able to maintain your ERD with SQL Developer 2.1...

    16.01.2010

    Backup on Linux: storeBackup / storeBackupRecover

    You made a good start into 2010? What about new years pledges?
    Here one thing, which you can add to your list:
    • BACKUP / RESTORE for your private data
      (your company should already do backups ;-)
    I am using storeBackup which has some really nice features:
    • The first measure to decrease the necessary hard drive storage space would be the compression of data - if that makes sense. storeBackup allows the use of any compression algorithm as an external program. The default is bzip2.
    • Within storeBackup, a hard link is used for referencing. With this trick of adding hard links, which were already created in existing backup files, each file is present in each backup although it exists physically on the hard drive only once. Copying and renaming of files or directories takes only the storage space of the hard links - nearly nothing.
    • Unlike with traditional backups, there is no need to consider if an incremental backup is depending on previous backups. The options permit the deletion or saving of backups on specific workdays, first or last existing backup of the week/month or year.
    So what do you have to do?
    storeBackup -s /home/schroff -t /home/backup/truecrypt/schroff --progressReport 1000
    and everything inside /home/schroff is backuped to /home/backup/truecrypt/schroff (if you like to exclude some directories use -e .wine for example). Here the output of the first run:

    STATISTIC 2009.10.18 07:56:11 20965 [sec] | user| system
    STATISTIC 2009.10.18 07:56:11 20965 -------+----------+----------
    STATISTIC 2009.10.18 07:56:11 20965 process| 31.84| 59.91
    STATISTIC 2009.10.18 07:56:11 20965 childs | 16.49| 0.84
    STATISTIC 2009.10.18 07:56:11 20965 -------+----------+----------
    STATISTIC 2009.10.18 07:56:11 20965 sum | 48.33| 60.75 => 109.08 (1m49s)
    STATISTIC 2009.10.18 07:56:11 20965 directories = 8923
    STATISTIC 2009.10.18 07:56:11 20965 files = 53726
    STATISTIC 2009.10.18 07:56:11 20965 symbolic links = 417
    STATISTIC 2009.10.18 07:56:11 20965 named pipes = 0
    STATISTIC 2009.10.18 07:56:11 20965 new internal linked files = 0
    STATISTIC 2009.10.18 07:56:11 20965 old linked files = 16
    STATISTIC 2009.10.18 07:56:11 20965 unchanged files = 53260
    STATISTIC 2009.10.18 07:56:11 20965 copied files = 10
    STATISTIC 2009.10.18 07:56:11 20965 compressed files = 23
    STATISTIC 2009.10.18 07:56:11 20965 excluded files because pattern = 0
    STATISTIC 2009.10.18 07:56:11 20965 included files because pattern = 0
    STATISTIC 2009.10.18 07:56:11 20965 max size of copy queue = 3
    STATISTIC 2009.10.18 07:56:11 20965 max size of compression queue = 4
    STATISTIC 2009.10.18 07:56:11 20965 calced md5 sums = 49
    STATISTIC 2009.10.18 07:56:11 20965 forks total = 46
    STATISTIC 2009.10.18 07:56:11 20965 forks md5 = 23
    STATISTIC 2009.10.18 07:56:11 20965 forks copy = 0
    STATISTIC 2009.10.18 07:56:11 20965 forks bzip2 = 23
    STATISTIC 2009.10.18 07:56:11 20965 sum of source = 4.6G (4943663018)
    STATISTIC 2009.10.18 07:56:11 20965 sum of target all = 3.8G (4131620957)
    STATISTIC 2009.10.18 07:56:11 20965 sum of target all = 83.57%
    STATISTIC 2009.10.18 07:56:11 20965 sum of target new = 10M (10961305)
    STATISTIC 2009.10.18 07:56:11 20965 sum of target new = 0.22%
    STATISTIC 2009.10.18 07:56:11 20965 sum of md5ed files = 14M (14712199)
    STATISTIC 2009.10.18 07:56:11 20965 sum of md5ed files = 0.30%
    STATISTIC 2009.10.18 07:56:11 20965 sum internal linked (copy) = 0.0 (0)
    STATISTIC 2009.10.18 07:56:11 20965 sum internal linked (compr) = 0.0 (0)
    STATISTIC 2009.10.18 07:56:11 20965 sum old linked (copy) = 405 (405)
    STATISTIC 2009.10.18 07:56:11 20965 sum old linked (compr) = 411k (420508)
    STATISTIC 2009.10.18 07:56:11 20965 sum unchanged (copy) = 2.4G (2545886135)
    STATISTIC 2009.10.18 07:56:11 20965 sum unchanged (compr) = 1.5G (1574352604)
    STATISTIC 2009.10.18 07:56:11 20965 sum new (copy) = 19k (19126)
    STATISTIC 2009.10.18 07:56:11 20965 sum new (compr) = 10M (10942179)
    STATISTIC 2009.10.18 07:56:11 20965 sum new (compr), orig size = 14M (14272160)
    STATISTIC 2009.10.18 07:56:11 20965 sum new / orig = 76.70%
    STATISTIC 2009.10.18 07:56:11 20965 size of md5CheckSum file = 1.7M (1810889)
    STATISTIC 2009.10.18 07:56:11 20965 size of temporary db files = 7.6M (7921664)
    STATISTIC 2009.10.18 07:56:11 20965 deleted old backups = 0
    STATISTIC 2009.10.18 07:56:11 20965 deleted directories = 0
    STATISTIC 2009.10.18 07:56:11 20965 deleted files = 0
    STATISTIC 2009.10.18 07:56:11 20965 (only) removed links = 0
    STATISTIC 2009.10.18 07:56:11 20965 freed space in old directories = 0.0 (0)
    STATISTIC 2009.10.18 07:56:11 20965 add. used space in files = 12M (12772194)
    STATISTIC 2009.10.18 07:56:11 20965 backup duration = 3m12s
    STATISTIC 2009.10.18 07:56:11 20965 over all files/sec (real time) = 279.82
    STATISTIC 2009.10.18 07:56:11 20965 over all files/sec (CPU time) = 492.54
    STATISTIC 2009.10.18 07:56:11 20965 CPU usage = 56.81%
    END 2009.10.18 07:56:11 20965 backing up directory </home/schroff> to </home/backup/2009.10.18_07.52.59>

    The first execution ran for several hours because all files had to be compressed. A run few days later just finished within several minutes and consumed only few space more...
    And recovery? Just use storeBackupRecover.
    This program recovers files saved with storeBackup.pl.
    usage:
    storeBackupRecover -r restore [-b root] -t targetDir [--flat]
    [-o] [--tmpdir] [--noHardLinks] [-p number] [-v] [-n]
    --restoreTree -r file or (part of) the tree to restore
    when restoring a file, the file name in the backup has
    to be used (eg. with compression suffix)
    --backupRoot -b root of storeBackup tree, normally not needed
    --targetDir -t directory for unpacking
    --flat do not create subdirectories
    --overwrite -o overwrite existing files
    --tmpdir -T directory for temporary file, default is </tmp>
    --noHardLinks do not reconstruct hard links in restore tree
    --noRestoreParallel -p max no of paralell programs to unpack, default is 12
    --verbose -v print verbose messages
    --noRestored -n print number of restored dirs, hardlinks, symlinks, files
    Copyright (c) 2002-2004 by Heinz-Josef Claes
    Published under the GNU General Public License



    09.01.2010

    WLAN problems: ping: sendmsg: No buffer space available ???

    Last week i installed linux on a new laptop. Everything went fine but after the first hibernate cylce downloads just stopped. Restarting the wireless cured the problem for some minutes and then the connectivity went down again...
    I started to ping the router and i only saw roundtrip time larger than 50ms, where i expected <1ms. Each time the connection went down, ping failed with
    ping: sendmsg: No buffer space available
    After some googling around i found the solution:
    Install ndiswrapper including ndiswrapper-utils
    After doing a
    modprobe ndiswrapper
    the ping roundtrip times were <1ms and the connectivity never went down again....
    To ensure that ndiswrapper is loaded during bootup do
    ndiswrapper -m