Java + 3G USB dongle + SMS + javax.comm

This is 3rd post about SMS.

No time to rewrite the sms application on c#. Made the existing legacy java app robust. Let it survive for some time #zen

Here are some of the interesting facts –

  • We need to use good olden 32 bit JRE to continue to support javax.comm api
  • Win32com.dll doesn’t have an implementation for 64 bit

*Often, java doesn’t get response from serial port, it makes our situation pathetic in SLA. You don’t have control over it.

So far, I have used to devices.

  1. HSDPA 3g dongle from StarHub made by Huawei Device
  2. Wavecom GSM modem connected to usb via USB to Serial convertor cable.

  

 

CommPortIdentifier.getPortIdentifiers() is empty

I am trying to work on a legacy SMS gateway built on java. I’ve made my hands dirty with AT commands with Ubuntu ‘long long ago’ – Pls check this –

Connecting Sony Ericsson W810i to Mandriva and executing AT commands with Java

So, I thought I can do something here. Okay. I setup the environment with my Eclipse is using jdk8 x64.

I got two errors –

Firstly, CommPortIdentifier.getPortIdentifiers() returns no COM ports. I copied win32com.dll to jre\bin folder and javax.comm.properties to jre\lib

Secondly,

Error loading win32com: java.lang.UnsatisfiedLinkError: C:\Program Files\Java\jre1.8.0_45\bin\win32com.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform

Alas,

Java already stopped support javax.comm library. So they do not have x64 bit dll to work with 64 bit java. So, I’ve downloaded 32 bit version of JRE 5 (latest JRE doesn’t work for javax.comm). hah!

sms