Note: Sun no longer offer's the Windows platform binaries of javax.comm, however javax.comm 2.0.3 can be used for the Windows platform, by using it in conjunction with the Win32 implementation layer provided by the RxTx project. To use that, download javax.comm for the 'generic' platform (which provides the front-end javax.comm API only, without platform specific back-end implementations bundled). Then acquire the Windows binary implementation rxtx-2.0.7pre1 from http://www.rxtx.org.

Is the error message exactly the same, i.e. is it still complaining about the Solaris native library? If yes, then you are still using the wrong version of the library. Make sure you use the right version, remove the wrong one from your system.

It looks like you are still mixing parts of the Windows and the Solaris drivers. It looks like you don't have the Windows driver in your classpath, and you do have the Solaris driver in your classpath, which tries to load a native library for Solaris, which is obviously not what you want when you're running on Windows.

Are you sure you are not still using any of the JAR files from the Solaris version of the javax.comm package? What does the javax.comm.properties file contain?

#
# Drivers loaded by the Java Communications API standard extension
# at initialization time
#
# Format:
# Each line must contain ONE driver definition only
# Each line must be of the form:
# driver=<ClassName>
# No spaces or tabs in the line.
# ClassName must implement the interface javax.comm.CommDriver
# example: driver=Win32Serial
#
#
# The hash(#) character indicates comment till end of line.
#
# Windows Serial Driver
Driver=com.sun.comm.Win32Driver