Load app.properties from current dir first, then from root of classpath if not found, which makes it possible to both run in development mode inside the IDE and to edit the file to point at any WSDL URL in distributed mode.
Assembly of a nice zip file which can be unpacked and run with java -jar IncidentLoggingAplication.jar
Removed loadForRouting() from domain service layer, since it only delegated to repository. Remote facade in application layer now calls repository directly.
Also, there's no "load for routing" in the ubiquitous language as it's a technical aspect.
Cargo tracking web interface now sits immediately on top of the domain layer, forming one of the "user interface extremes" (the other one being complete remote-DTO-separation).
Brought EventService closer to the domain by renaming it DomainEventNotifier and use ubiquitous language in the method signatures (fireHandlingEventRegistered is now cargoWasHandled) in order to make it naturally fit in among the domain services.
Package "remote" renamed "remoting" for consistency.
The implementation of our routing service - which consists mainly of model translation and delegation - is moved to the application part, from the domain service layer. The routing service interface is part of our domain but the implementation is not, similar to repositories and their implementations.
Slight refinement of packge structure under application - service is split into things like messagning and remoting.
The external routing team application is moved out to its own top-level package, to highlight the fact that it is a completely separate application from booking/tracking.