My brass tentett Niederrhein Brass gives its yearly christmas concerts on GoogleMaps: concert location and GoogleMaps: concert location – both at 17:00 (5pm). If you are interested in – you are welcome. Entry is free of charge (but a donation at the end is welcome
Concerts of my ensemble
Posted 25. November 2009 by janmaterneCategories: en
Tags: brass, christmas, concert, niederrhein brass, xmas
Ant: Use optional dependencies in JavaDoc
Posted 19. November 2009 by janmaterneCategories: Ant, en
Tags: Ant, javadoc, reference
If you create your Javadocs you sometimes get unresolved reference warnings: package xy does not exist or cannot find symbol
If you define the path with these dependencies outside of the target you could reference that path using the classpathref attribute.
But if the path definition is done in an other target and you don’t want to have a dependency on that (e.g. many dependencies are downloaded there, e.g. using Ivy), using the classpathref would throw a BuildException because the path is not defined: Reference my-path.reference not found.
You could do a little hack: use a classpath attribute and use a special PropertyEvaluator for using that path: classpathref=“${toString:my-path.reference}“. If your defining target is executed before, the toString: resolves that into a usable path-string. If the target is not executed before, the resulting string toString:my-path.reference is just ignored by the javadoc task.
Links for 2009-11-13
Posted 13. November 2009 by janmaterneCategories: Blogroll, en
Tags: args4j, byteman, hudson, kawaguchi, kohsuke, test, youdebug
Today I found two tools for testing: Byteman and YouDebug.
While I haven’t have a deeper look at Byteman I realized that YouDebug is writte by Kohsuke Kawaguchi. And it is very funny to recognizing him after Args4J and Hudson with another project. The world is small and you’ll see another every twice … or more
Getting the Samsung CLX 2160 MFC work under Windows 7
Posted 4. November 2009 by janmaterneCategories: en
Tags: clx 2160, printer, samsung, win7, windows 7
My laser printer Samsung CLX 2160 worked very fine under Vista. But now I have upgraded to Win7Ultimate and it does not any more. Ok – new OS, new search for drivers …
I found a new driver on the Samsung page. But after installing I even couldnt print. The OS silently ignored print jobs. I tried to check the settings, but I always get the error message
Then I got an idea: maybe the (default) access rules are too restrictive. So I tried to widen them (Everybody: configure the printer, configure the documents)
And now it works
Let Ant tasks choose the attribute values by themself
Posted 30. Oktober 2009 by janmaterneCategories: Ant, en
Tags: Ant, aop, autoconf, configuration, properties
For a long time an idea travelled in my head. But now it arrived.
In my several Ant build files I have constructs like
<javac source=”${javac.source}” debug=”${javac.debug}” target=”${javac.target}” …
and the according properties defined in an external file. Now have a compile run for the source code and the test code and you have doubled this amount of configuration. And I thought that just writing a <javac> and starting with an -autoconf option would be easier.
The idea is: apply the properties directly before the task execution.
So I could implement a method call in oata.Task.perform() direclty before calling the execute() method.
Hhm …. I don’t want to change the Ant core that deeply because so many external tasks exist and I don’t want to (maybe) break their build.
Another idea is using an AOP framework like AspectJ for jumping in: before <? extends Task>.execute() : applyAttributeValues()
(I am not familiar with AspectJ but you get the idea.)
But then I would depend on the AOP library. That’s nothing for the Core. And Ant options should not depend on any further libraries.
I could implement it as a task:
<project><autoconf/><javac/></project>
Better. But I have to learn AspectJ … so not for now…
On the Hudson dev-mailinglist I heard from the Hudson Clover Plugin. It gatheres code coverage from Ant jobs WITHOUT configuring the job itself.-It adds a BuildListener which stores the srcdir and destdir values from <javac> tasks.
Nice idea …. use the Listeners taskStarted(event) and taskFinished(event) methods for doing AOP-stuff.
This results in the <autoconf> task, currently in the sandbox and feedback is welcome.
The goal:
- apply attribute values from properties
- do not overwrite user specified values
- switch on/off the behaviour
- support name prefix for using different values for different targets
While the last two points are easily to implement (add/remove the listener, use a prefix for property search) the first two are difficult.
apply attribute values from properties / which attributes are supported by a given task?
Why is this difficult? Just ask mytask.getClass() for declared setters ….
The problem is that you don’t get the task object. Due lazy instantiation/configuration the only thing you get from the BuildEvent is an UnknownElement. And therefore you cannot just ask getClass() for the class object you need.
I saw three different strategies according to that value:
- if it is a <macrodef> I could ask it directly for its <attribute>s
- if it is a normal task I ask the class object
- if it is a <presetdef> I ask the class object from preset.getTypeClass()
do not overwrite user specified values
I could ask an object for its values, but which are set by the user and which are just implementation defaults? From the Java perspective you cannot distinguish between them…
My strategy is using a “clean” object (I called it template object) and compare its values with the values from the given object.
Links for 2009-10-19
Posted 19. Oktober 2009 by janmaterneCategories: Blogroll, en
Tags: cloud computing, Eclipse, linux, modeling, openbook, security, win7, windows 7
Microsoft has announced two analysis tools for security wholes: BinScope Binary Analyzer and MiniFuzz File Fizzer. The first one checks for forgotten security flags and the second checks against flow patten.
There is a nice paper about risks in cloud computing:
- Stalking in Amazon’s EC2
- Sidechannel Attacks
- Data Leakage through CPU Caches
If you are in N.Y. or Toronto and interesting in modeling, the Eclipse Modeling Days could be interesting for you.
German: event series about server virtualization.
Thu, 12.11.2009, Pullmann Hotel Köln
Wed, 18.11.2009, Gastwerk Hotel Hamburg
Thu, 26.11.2009, Novotel München Messe
Galileo publishes the „Linux Handbuch“ as free available OpenBook.
German: Microsoft publishes the eBook „Windows 7 – Auf einen Blick“ for free (since 31.10.2009). A free chapter is directly available, for the whole book you have to register.
Links for 2009-09-08
Posted 8. September 2009 by janmaterneCategories: en
Tags: acceptance, c#, cloud computing, jdk 7, solaris, test, win7, windows 7
DE: Screencast-Serie zur Windows 7-Kompabilität
How to install Win7 as VHD-Boot, create a PE-Boot DVD, .NET, Win7 API, …
EasyWeb4J: Java-Webanwendungen à la Ruby-on-Rails
DE: Video-Vorschau auf JDK 7
C# 3.0 – Pocket Reference; 230 pages C# knowledge
How to Secure a Web Server with Solaris 10
DE: SoftwareArchitekTOUR – Podcast. Nice episode about Cloud Computing
Microsoft Patterns & Practices publishes a new series about developing acceptance tests.
Links for 2009-08-21
Posted 21. August 2009 by janmaterneCategories: Blogroll, en
Tags: cobol, code contracts, foto, hadoop, jigsaw, jsr/294, notification pattern, osgi, phpunit, soa, validator, vmware, vsphere, Windows, windows 7, windows 8
With Blende 8 Galileo Deisgn presents a video podcast about fotographing. New episodes will be available all 14 days.
VMWare provides several free information events about vSphere 4 in Germany, Austria an Switzerland from 26.August till 29.October.
Galileo Computing created a video training about VMWare vSphere4 – 83 lessons and 10 hours.
I also found a blog about a question someone was interested in too: Why is that action not available?
According to that roadmap MS Windows 8 is intended for 2012 with cluster support, one-way-replication, inproved file handling …
Denoise My Image is a free tool for improving the picture quality.
My favorit: Launchy is a free small app for starting programs, documents, urls … with just a jew keystroke.
Oracle provides free ebooks about SOA (after a registration). Content is
- Grid Enabled Architecture: Move to Modern Service Oriented, Grid Enabled Architecture
- Business Process Management: Achieve Business Flexibility through Oracle BPM
- Business Activity Monitoring: Stay Agile Responding to Changes in Real-time
- Data Integration: Integrate Data at High Performance and with High Productivity
- Application Integration Architecture: Accelerate Application Integrations
- History: Service-Oriented Architecture Milestones
- Case Studies: Comprehensive, Preintegrated, Hot-Pluggable Middleware
On 24./25.November there is the ix-Day – this time about Cobol. CfP ends on 28.September.
A nice toy (maybe a tool also). Draganfly is a quadcopter which transports and controlls a photocamera or videocamera. So you can take your own pictures from the air.
The VCC team at https://vcc.dev.java.net/ is pleased to announce our first bleeding edge pre-alpha release of the Virtual Computer Control API (version 0.0.3) and associated implementations (version 0.0.3) and plugins (version 0.0.1). The Virtual Computer Control API is designed to be a virtualization platform agnostic API for controlling (Ant, Maven, Hudson) virtual computers (VMWare ESX, VMWare Workstation, Xen, KVM, QUEMU, libvirt, VirtualBox, AmazonEC2, xVM): list, start, suspend, stop and pause a virtual computer, take a snapshot or revert to a snapshot, clone a virtual computer, query their network settings.
There is a free ebook how to install Windows 7.
RMBench Relational Modeller is designed to be a one-stop Eclipse-integrated solution for grapically modelling relational databases. But sadly there arent any screenshots online. So you have to compile and install it for yourself.
JSR-294 Jigsaw & OSGi - maybe somewhere in the middle? Peter Kriens, BJ Hargrave and Richard Hall suggested a new approach for the moludarization in Java – not as complex as OSGi and Jigsaw, but compliant to the OSGi specs.
Microsoft Research publishes Code Contracts. Speaking with Java terms (sorry I dont write .NET code) the basic concept is a validator class which takes several closures. Then you could validate your object/parameters:
static private int TraditionalValidation(int Input1, string Input2, List
{
Contract.Requires(0 <= Input1 && Input1 <= 100);
Contract.Requires(Input2.Length > 5);
Contract.Requires(Input3.Contains(500));
Contract.Ensures(Contract.Result
…
}
When I read that two things poped up in my mind: the Notification Pattern and the validator for Ant tasks.
PHPUnit 3.4 is a stop before release.
Cloudera announces Hadoop World: NYC 2009.