Tutorial for the Java Context Awareness Framework (JCAF)
This tutorial contains basic information on how to run and program JCAF version 1.5. The theoretical thoughts behind JCAF is described in the PERVASIVE 2005 paper [3]. More technical details of the design of JCAF is described in the technical report on JCAF [1]. Please read these documents as a background for this tutorial. JCAF has been used to implement different context-aware applications and architectures [5, 2, 4]. JCAF version 1.5 is build on Java 1.4. JCAF relies on Java RMI for its distribution. Therefore, knowlegde and programming experience in Java RMI is needed before using JCAF.
Under normal circumstances, the JCAF ContextService should be able to dynamically load new classes on runtime without restarting the service. This is part of the standard dynamic classloading in Java using the codebase property. For some unknown reason, however, I have not been able to make this work in connection with JCAF. Therefore, in order to deploy and load you own classes – like your own implementations of new kinds of entities and context items – you need to add these classes to the classpath of the Context Service. The most convinient way to do this is to make a jar file, place it in the deploy directory, and add this jar file to the classpath property in the startup script (ContextService or ContextService.bat) before restarting the context service. This is done by the jcaf.examples.jar file.
Get pdf download Tutorial for the Java Context Awareness Framework (JCAF)
A short Java RMI tutorial
This is a technical literature study which purpose is to describe the basic parts of Java Remote Method Invocation. Remote Method Invocation, abbreviated as RMI [SUN02, p2], provides support for distributed objects in Java, i.e. it allows objects to invoke methods on remote objects. The calling objects can use the exact same syntax as for local invocations. The Java RMI model has two general requirements. The first requirement is that the RMI model shall be simple and easy to use and the second requirement it that the model shall fit into the Java language in a natural way.
Read more
An Introduction to VBA in Excel
Visual Basic for Applications, Excel’s powerful built-in programming language, permits you to easily incorporate user-written functions into a spreadsheet. 1 You can easily calculate Black-Scholes and binomial option prices, for example. Lest you think VBA is something esoteric which you will never otherwise need to know, VBA is now the core macro language for all Microsoft’s office products, including Word. It has also been incorporated into software from other vendors. You need not write complicated programs using VBA in order for it to be useful to you. At the very least, knowing VBA will make it easier for you to analyze relatively complex problems for yourself.
Read more
An Introduction to Programming with C# Threads
This paper provides an introduction to writing concurrent programs with “threads”. A threads facility allows you to write programs with multiple simultaneous points of execution, synchronizing through shared memory. The paper describes the basic thread and synchronization primitives, then for each primitive provides a tutorial on how to use it. The tutorial sections provide advice on the best ways to use the primitives, give warnings about what can go wrong and offer hints about how to avoid these pitfalls. The paper is aimed at experienced programmers who want to acquire practical expertise in writing concurrent programs. The programming language used is C#, but most of the tutorial applies equally well to other languages with thread support, such as Java.
Read more
Informix Guide to SQL Tutorial
The Informix Guide to SQL: Tutorial includes instructions for using basic and advanced Structured Query Language (SQL) as well as for designing and managing your database. This manual is part of a series of manuals that discusses the Informix implementation of SQL. Once you finish reading this manual, you can use the Informix Guide to SQL: Reference and the Informix Guide to SQL: Syntax as references to help you with daily SQL issues.
Read more