He estado muchos dias tratando de hacer funcionar mi codigo... y no funciona, lo que ocurre es que yo he estado trabajando en un applet de java en el eclipse, y cuando yo apreto "run" todo funciona bien, pero cuando abro el cmd y ago "appletviewer"
o si me meto a mi archivo .html que tengo en mi servidor apache, para poder ver mi applet, no hay forma de que se conecte al mysql, a pesar de que si se connecta perfectamente cuando lo veo desde eclipse....
esta applet ase lo siguiente:
-mediante un formulario se obtiene un nombre de usuario y contraseña, despues se busca en la base de datos el usuario y se fija que la contraseña este bien, y despues si todo resulto bien, extrae toda la información respecto a ese usuario.
(todo esto funciona bien cuando ejecuto el applet desde eclipse, pero no funciona de la forma normal..)
este es el codigo:
Código:
import java.applet.Applet;
import java.awt.Button;
import java.awt.Color;
import java.awt.Event;
import java.awt.FlowLayout;
import java.awt.Label;
import java.awt.Panel;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
public class RS34 extends Applet implements Runnable
{
/**
*
*/
private static final long serialVersionUID = 1L;
static String LoginUserForm;
static String LoginPassForm;
Label lab1;
JTextField t1;
Label lab2;
JPasswordField p1;
Button submitLogin;
Panel LoginForm;
static String userid= "fsuser", password = "zz74667023zz";
static String url = "jdbc:mysql://localhost:3306/fs";
static Connection con = null;
static ResultSet rs = null;
static String loginc1 = "SELECT * FROM usuarios WHERE Usuario='";
static String loginc3 = "'";
static String loginc4 = " AND Clave='";
static String loginc6 = "'";
static String CheckUserandPass = (loginc1+LoginUserForm+loginc3+loginc4+LoginPassForm+loginc6);
String Simlogin;
public void run() {
}
public void init()
{
setLayout(new FlowLayout(FlowLayout.CENTER, 0, 0));
LoginForm = new Panel();
lab1 = new Label("Usuario:");
lab2 = new Label("Contraseña:");
t1 = new JTextField(12);
p1 = new JPasswordField(12);
submitLogin = new Button("Verificar datos");
LoginForm.setBackground(Color.LIGHT_GRAY);
add(LoginForm);
LoginForm.add(lab1);
LoginForm.add(t1);
LoginForm.add(lab2);
LoginForm.add(p1);
LoginForm.add(submitLogin);
}
@SuppressWarnings("deprecation")
public boolean action(Event e,Object o)
{
LoginUserForm = t1.getText();
LoginPassForm = p1.getText();
CheckUserandPass =(loginc1+LoginUserForm+loginc3+loginc4+LoginPassForm+loginc6);
try {
con = DriverManager.getConnection(url, userid, password);
} catch(SQLException ex) {
}
try
{
Statement st = con.createStatement();
rs = st.executeQuery(CheckUserandPass);
while(rs.next()) {
int Id = rs.getInt(1);
String Usuario = rs.getString(2);
String Clave = rs.getString(3);
String Correo = rs.getString(4);
int Charposx = rs.getInt(5);
int Charposy = rs.getInt(6);
String facedir = rs.getString(7);
String Exp = rs.getString(8);
String Credito = rs.getString(9);
Simlogin = rs.getString(10);
System.out.println("ID: " + Id + " | Usuario: " + Usuario + " | Clave: " + Clave + " | Correo: " + Correo +
" | Charposx: " + Charposx + " | Charposy: " + Charposy + " | facefir: " + facedir +
" | Exp: " + Exp + " | Credito: " + Credito + " | Si: " + Simlogin
);
}
}
catch (SQLException ex)
{
System.err.println(ex.getMessage());
}
return true;
}
}
no entiendo porque funciona en eclipse y no normalmente..
muchas gracias, espero que me puedan ayudar.
EDIT: se me olvidava... aqui va el error que me tira el cmd y lo que me tira eclipse:
Eclipse:
Cmd: