This week's giveaway is in the EJB and other Java EE Technologies forum. We're giving away four copies of EJB 3 in Action and have Debu Panda, Reza Rahman, Ryan Cuprak, and Michael Remijan on-line! See this thread for details.
You cannot interface directly to an arbitrary (Windows?) DLL in Java. If you need to use the functionality of an arbitrary DLL in Java, you will need to write some Java Native Interface (JNI) code to adapt the interface of the DLL to Java's requirements. You would typically write the JNI code in C or C++, although other languages are possible if they compile to native machine code.
JACOB and JAWIN allow you to access the functions of a DLL if it exports a COM interface. JNA provides access to the DLLs functions if it exports C-callable functions. None of these options requires any JNI programming.
Presumably your DLL has some other documentation that tells you what API it provides. [ September 07, 2007: Message edited by: Timothy Wall ]