Results 1 to 2 of 2
Thread: Java J2SE Bluetooth Application
- 02-23-2009, 05:25 PM #1
Member
- Join Date
- Feb 2009
- Posts
- 2
- Rep Power
- 0
Java J2SE Bluetooth Application
Hello,
I am trying to write a program in J2SE which will use Bluetooth and act as a server to wait for connections, and then send a file to any device that connects.
I am using ubuntu linux, and I am using the NetBeans IDE.
I am having a lot of trouble trying to create this program, and after hours of researching the bluetooth API's for linux, and trying all of them (AvetanaBT, jBlueZ, BlueZ, BlueCove) I can not seem to get any basic connectivity with my bluetooth dongle.
I haven't even got as far as listening for devices or discovering bluetooth devices.
The example code I am trying to run is this:
And when I run this program I get the following error:Java Code:import java.io.IOException; import java.util.Vector; import javax.bluetooth.DeviceClass; import javax.bluetooth.DiscoveryAgent; import javax.bluetooth.DiscoveryListener; import javax.bluetooth.LocalDevice; import javax.bluetooth.RemoteDevice; import javax.bluetooth.ServiceRecord; /** * Class that discovers all bluetooth devices in the neighbourhood * and displays their name and bluetooth address. */ public class BluetoothDeviceDiscovery implements DiscoveryListener{ //object used for waiting private static Object lock=new Object(); //vector containing the devices discovered private static Vector vecDevices=new Vector(); //main method of the application public static void main(String[] args) throws IOException { //create an instance of this class BluetoothDeviceDiscovery bluetoothDeviceDiscovery=new BluetoothDeviceDiscovery(); //display local device address and name LocalDevice localDevice = LocalDevice.getLocalDevice(); System.out.println("Address: "+localDevice.getBluetoothAddress()); System.out.println("Name: "+localDevice.getFriendlyName()); //find devices DiscoveryAgent agent = localDevice.getDiscoveryAgent(); System.out.println("Starting device inquiry..."); agent.startInquiry(DiscoveryAgent.GIAC, bluetoothDeviceDiscovery); try { synchronized(lock){ lock.wait(); } } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("Device Inquiry Completed. "); //print all devices in vecDevices int deviceCount=vecDevices.size(); if(deviceCount <= 0){ System.out.println("No Devices Found ."); } else{ //print bluetooth device addresses and names in the format [ No. address (name) ] System.out.println("Bluetooth Devices: "); for (int i = 0; i <deviceCount; i++) { RemoteDevice remoteDevice=(RemoteDevice)vecDevices.elementAt(i); System.out.println((i+1)+". "+remoteDevice.getBluetoothAddress()+" ("+remoteDevice.getFriendlyName(true)+")"); } } }//end main //methods of DiscoveryListener /** * This call back method will be called for each discovered bluetooth devices. */ public void deviceDiscovered(RemoteDevice btDevice, DeviceClass cod) { System.out.println("Device discovered: "+btDevice.getBluetoothAddress()); //add the device to the vector if(!vecDevices.contains(btDevice)){ vecDevices.addElement(btDevice); } } //no need to implement this method since services are not being discovered public void servicesDiscovered(int transID, ServiceRecord[] servRecord) { } //no need to implement this method since services are not being discovered public void serviceSearchCompleted(int transID, int respCode) { } /** * This callback method will be called when the device discovery is * completed. */ public void inquiryCompleted(int discType) { synchronized(lock){ lock.notify(); } switch (discType) { case DiscoveryListener.INQUIRY_COMPLETED : System.out.println("INQUIRY_COMPLETED"); break; case DiscoveryListener.INQUIRY_TERMINATED : System.out.println("INQUIRY_TERMINATED"); break; case DiscoveryListener.INQUIRY_ERROR : System.out.println("INQUIRY_ERROR"); break; default : System.out.println("Unknown Response Code"); break; } }//end method }//end class
I would really appreciate if someone could help me out, by pointing me in the right direction or giving me some advice on what API's to use, or some good books which explain how to use Bluetooth API with J2SE.Java Code:Exception in thread "main" javax.bluetooth.BluetoothStateException: java.lang.NoClassDefFoundError: com/sun/kvem/jsr082/bluetooth/DiscoveryAgentImpl at javax.bluetooth.LocalDevice.getLocalDevice(LocalDevice.java:100) at BluetoothDeviceDiscovery.main(BluetoothDeviceDiscovery.java:66) Java Result: 1
Thank you.
- 02-23-2009, 09:02 PM #2
Senior Member
- Join Date
- Sep 2008
- Posts
- 564
- Rep Power
- 5
Similar Threads
-
J2Se and Java
By sweetnuts in forum IntroductionsReplies: 0Last Post: 10-19-2008, 10:14 PM -
Why to Use J2SE and Option for using this..
By mgrprasad90 in forum Java AppletsReplies: 0Last Post: 08-27-2008, 09:27 AM -
PC receive data via Bluetooth using JAVA
By toncoolx in forum New To JavaReplies: 0Last Post: 11-27-2007, 04:50 AM -
Sdk & J2se
By Gajesh Tripathi in forum New To JavaReplies: 0Last Post: 10-18-2007, 07:49 AM -
Infra-red, Bluetooth in Java
By mathias in forum NetworkingReplies: 1Last Post: 08-07-2007, 06:48 AM


LinkBack URL
About LinkBacks
Reply With Quote
Bookmarks