NoSuchPortException

Dann schau mal bitte, in welcher Zeile der Fehler auftritt und poste mal bitte den Quelltext dazu. Möchte mal was schauen.

MFG

Sascha
 
ja hier ist der code


Java:
package Model;
import gui.BefehlEingabe;
import gui.Main;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PrintWriter;

import javax.comm.CommPortIdentifier;
import javax.comm.SerialPort;
import javax.comm.SerialPortEvent;
import javax.comm.SerialPortEventListener;
import javax.comm.UnsupportedCommOperationException;

public class AndereBefehle
{
	String code;
	static SerialPort serialport;
	static CommPortIdentifier portID;
	
    static InputStream ins; 
    static OutputStream out;
	
	public AndereBefehle()
	{
		 try
	        {
	        // erzeugt ein CommPortIdentfier-Objekt, hier heisst es portID 
	        portID = CommPortIdentifier.getPortIdentifier("COM1"); 
	        // öffne den port COM1 
	        serialport = (SerialPort) portID.open("COM1", 5000);
	        }
	        catch (Exception exc) 
	        { 
	            //System.out.println("Fehler port not open:" + exc);
	            Main.ausgabe.append("Fehler port not open:" + exc);
	            System.out.println();
	        }
	        try 
	        { 
	                // InputStream 
	                ins = serialport.getInputStream(); 
	                // OutputStream 
	                out = serialport.getOutputStream(); 
	                serialport.addEventListener(new commListener());
	           
	        } 
	        catch (Exception e) 
	        { 
	                //System.out.println("Fehler beim in und out : " + e); 
	                Main.ausgabe.append("Fehler beim in und out: " + e);
	                System.out.println();
	        } 

	        serialport.notifyOnDataAvailable(true); 
	        try 
	        { 
	                // Hier werden die Parameter festgelegt 
	                serialport.setSerialPortParams(115200, SerialPort.DATABITS_8, 
	                                SerialPort.STOPBITS_1, SerialPort.PARITY_NONE); 
	        } 
	        catch (UnsupportedCommOperationException e)
	        { 
	        }
	}
	
	public String codeBerechnen()
    {
    	String befehl;
		befehl=BefehlEingabe.ta.getText();
		int bcc1 = 0;
		int bcc = 0;
		
		String befehl1="";
		char a;
		
		for (int i=0; i<befehl.length(); i++)
		{
			a = befehl.charAt(i);
	
            // Zuweisung und Addition
              
			bcc1 += (int) a;
		            
			befehl1 += a;
                  
			//System.out.println (befehl1);  
			    	    
		} 
		
		int c = 0X01; 
		char testc = (char) c;
		
		int b = 0X04;
		char testb = (char)b;
		
		int d=0X80;
		
		// Pruefsumme
		bcc = c+bcc1+b;
		//verordern
		bcc = bcc | d;
		char fbcc = (char)bcc;
		
		
		code=(testc+befehl1+testb+fbcc);
		return code;
    }
 
 	public class sendeListener2 implements ActionListener 
 	{ 
		//OpenSerialPort ops = new OpenSerialPort();
 		public void actionPerformed(ActionEvent e) 
 		{
 			Main.ausgabe.setText("");
			PrintWriter aus = new PrintWriter(out); 
	        aus.println(codeBerechnen()); 
	        aus.flush(); 
	        aus.close();
 		
 		}
 	}
 	
 	 public class commListener implements SerialPortEventListener 
     { 
 		
             public void serialEvent(SerialPortEvent event) 
             { 
            	
                     if (event.getEventType() == SerialPortEvent.DATA_AVAILABLE) 
                     { 
                             byte[] readBuffer = new byte[24]; 
                             try 
                             { 
                              // while (ins.available() > 0)
                             	if (ins.read(readBuffer)!= readBuffer.length)
                                 { 
                                    int numBytes = ins.read(readBuffer);
                                     
                                 } 
                               
                             	String nachricht = new String(readBuffer); 
                          	 	System.out.println(nachricht);	
                              //Die Antwort wird im Text Area (ausgabe) angezeigt
                              	
                                Main.ausgabe.append(nachricht+"\n");
                              // 
                              } 
                             catch (IOException e) 
                             { 
                                     System.out.println("Fehler commLis: " + e);
                                     
                             } 
                            
                     }
                     //close();   
             } 
            		
         	       
     }
 	 public void close()
 	 {
	 	try
	    {
	    ins.close();
	    out.close();
		}
	    catch(IOException e){}
	    serialport.close();
 	 }
}

Fehlermeldung:

Fehler port not open:javax.commNoSuchPortException
Fehler beim in und out: java.lang.NullPointerException
Exception in thread "AWT-EventQue-0" java.lang.NullPointerException
at Model.AndereBefehle.<init><AndereBefehle.java:51>
 
Poste mal bitte die Stacktraces. (e.printStacktrace)

Benutze doch bitte das nächste mal die code-Tags. Das ist in der Toolbar der Button mit der Raute. Jetzt hab ich sie bei dir mal eingefügt.

MFG

Sascha
 
javax.comm.NoSuchPortException
at javax.comm.CommPortIdentifier.getPortIdentifier(CommPortIdentifier.j
va:105)
at Model.AndereBefehle.<init>(AndereBefehle.java:32)
java.lang.NullPointerException
at Model.AndereBefehle.<init>(AndereBefehle.java:45)
 
Das ist doch nicht alles, oder?

Also wie gesagt, ich glaube nicht, dass es an fatjar liegt. Da die Jar-Archive ja gefunden werden.

Code:
javax.comm.NoSuchPortException
at javax.comm.CommPortIdentifier.getPortIdentifier(CommPortIdentifier.j
va:105)

Das müsste nämlich die erste Exception sein und damit sieht man ja, dass eindeutig der Port nicht gefunden wird.


Laut Netiquette sind Push-Posts verboten, halte dich bitte dran. Sowas vergrößert die Themen unnötig. Deshalb hab ich diesen Post auch wieder gelöscht. Danke.

MFG

Sascha
 
Was gibt dir denn diese Methode zurück?
Code:
CommPortIdentifier.getPortIdentifiers()

MFG

Sascha
 
Zurück