Se está retornando null, é porque o método find() não encontrou nada para 'nome'.
Pessoal, acho que o programa só está retornando dados para a tela do xml. Gostaria de saber como faço para que o dados da tela xml que estão da seguinte maneira:
<panel columns="1">
<splitpane divider="150" weightx="1" weighty="1">
<list name="lista" perform="exibir(this)">
</list>
<panel columns="3" top="4" left="4" bottom="4" right="4" gap="4">
<panel colspan="4" columns="2" gap="4">
<label text="Nome: " />
<textfield name="nome" weightx="1" />
<label text="email: " />
<textfield name="email" weightx="1" />
<label text="Endereco: " />
<textfield name="endereco" weightx="1" />
<label text="Telefone: " />
<textfield name="telefone" weightx="1" />
</panel>
<button name="salvar" text="Salvar" weightx="1" action="adicionar()" />
<button name="limpar" text="Limpar" weightx="1" action="limpar(nome, email, endereco, telefone)" />
<button name="remover" text="Remover" weightx="1" action="remover()" />
</panel>
</splitpane>
</panel>
Sejam retornados para a tela do programa. A função no arquivo java esta da seguinte maneira:
public void adicionar(){
Object nome = find("nome");
Object endereco = find("endereco");
Object email = find("email");
Object telefone = find("telefone");
System.out.println("nome:" + nome.hashCode());
String Nome = nome.toString();
System.out.println("Nome:" + Nome);
if(getString(nome, "text") == null
|| getString(nome, "text").trim().length() < 1
|| getString(email, "text") == null
|| getString(email, "text").trim().length() < 1
|| getString(endereco, "text") == null
|| getString(endereco, "text").trim().length() < 1){
return;
} else
{
Object lista = find("lista");
Object item = Thinlet.create("item");
setString(item, "text", getString(nome, "text"));
putProperty(item, "endereco", getString(endereco, "text"));
putProperty(item, "email", getString(email, "text"));
putProperty(item, "telefone", getString(telefone, "text"));
add(lista, item);
System.out.println("nome" + nome);
try{
//Registrando o driver:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
//Estabelecendo a conexão através do ODBC criado no Painel de Controle:
Connection con = DriverManager.getConnection("jdbc:odbc:Teste","root","");
//Criando um objeto Statement para enviar requisições SQL para o Banco de Dados
//Statement stmt = con.createStatement();
//Adquirindo através de um objeto ResulSet,
//os registros retornados pelo SQL:
PreparedStatement stmt =
con.prepareStatement("INSERT INTO Contato (nome) VALUES (\"" + nome + "\") ");
stmt.setString(1,nome.toString());
stmt.executeUpdate();
stmt.close();
Statement sta = con.createStatement();
ResultSet rec = sta.executeQuery(
"SELECT * " +
"FROM Contato " );
System.out.println("CodCidade\tDescrCidade\t\t\tUF\t" +
"CodRecor");
while(rec.next()) {
System.out.println(rec.getString(1) + "\t\t"
+ rec.getString(2) + "\t\t"
+ rec.getString(3) + "\t"
+ rec.getString(4));
}
sta.close();
}catch(Exception e){
System.out.println("Erro"+ e.getMessage());
}
}
}
Agradeço se puderem me dar uma dica.