Problem Inserting data

Hi, i have this code.

public String addButton_action(){

if ( empresaDataProvider.canAppendRow() ){

try{

RowKey rowKey = empresaDataProvider.appendRow();

empresaDataProvider.setCursorRow(rowKey);

empresaDataProvider.setValue("RazaoSocial",rowKey,input_razao_novo.getValue());

empresaDataProvider.setValue("Responsavel",rowKey,input_responsavel_novo.getValue());

empresaDataProvider.setValue("Email",rowKey,input_email_novo.getValue());

empresaDataProvider.setValue("DDDTelefone",rowKey,input_ddd_novo.getValue());

empresaDataProvider.setValue("NroTelefone",rowKey,input_telefone_novo.getValue());

empresaDataProvider.setValue("Logo",rowKey,input_logo_novo.getValue());

empresaDataProvider.commitChanges();

It adds to the page im viewing but don't add to the database, what can be the problem?

I can update and delete rows normally.

Im using MS SQL Server.

[1283 byte] By [Lucas_Conde] at [2007-11-26 8:32:03]
# 1
I think you need the table name in your setValue() like so:empresaDataProvider.setValue("tablename.Email",rowKey,input_email_novo.getValue());
jparker12 at 2007-7-6 21:55:22 > top of Java-index,Development Tools,Java Tools...
# 2
Hi, when I put tablename.Email, rowKey, input.getValue() the data isn't added in anywhere, not even the page im seeing.
Lucas_Conde at 2007-7-6 21:55:22 > top of Java-index,Development Tools,Java Tools...
# 3
I meant for you to substitute the actual table name.
jparker12 at 2007-7-6 21:55:22 > top of Java-index,Development Tools,Java Tools...
# 4
Are you using alias' for your table fields? Can you show the data provider SQL statement?
r3cca at 2007-7-6 21:55:22 > top of Java-index,Development Tools,Java Tools...
# 5

Can you try

RowKey empresaRowKey;

int numeroRegistros;

numeroRegistros = empresaDataProvider.getRowCount();

if ( numeroRegistros == 0){

//info("No hay registros de empresas");

boolean nada;

} else{

boolean ok = true;

empresaRowKey = empresaDataProvider.findFirst("empresa.RazaoSocial",input_razao_novo.getValue() );

if (empresaRowKey != null) {

error("Existe un propietario con ese identificador '"+input_razao_novo.getValue()+"' Pruebe con otro....");

ok = false;

}

if (!ok) {

return null;

}

}

empresaRowKey = empresaDataProvider.appendRow();

empresaDataProvider.setValue("empresa.RazaoSocial",empresaRowKey,input_razao_no vo.getValue());

empresaDataProvider.commitChanges();

fileupload at 2007-7-6 21:55:22 > top of Java-index,Development Tools,Java Tools...
# 6

I create my CachedRowSet using this:

empresaRowSet.setDataSourceName("java:comp/env/jdbc/Project");

empresaRowSet.setCommand("SELECT ALL dbo.Empresa.RazaoSocial, dbo.Empresa.Responsavel, dbo.Empresa.Email, dbo.Empresa.DDDTelefone, dbo.Empresa.NroTelefone, dbo.Empresa.Logo, dbo.Empresa.CodEmpresa FROM dbo.Empresa ");

empresaRowSet.setTableName("Empresa");

Than I set the DataProvider in the page using this:

empresaDataProvider.setCachedRowSet((javax.sql.rowset.CachedRowSet)getValue("#{EmpresaBean.empresaRowSet}"));

This piece of code is in init() method of the jsp page.

RowKey empresaRowKey = getEmpresaBean().getEmpresaAtualRow();

Integer pid = (Integer) empresaDataProvider.getValue("CodEmpresa");

if (empresaRowKey == null) {

empresaDataProvider.cursorFirst();

empresaRowKey = empresaDataProvider.getCursorRow();

try {

getEmpresaBean().getEmpresaRowSet().setObject(1, pid);

getEmpresaBean().getEmpresaRowSet().execute();

empresaDataProvider.cursorFirst();

} catch (Exception ex) {

log("Error Description", ex);

}

} else {

empresaDataProvider.setCursorRow(empresaRowKey);

}

I use this to update, and it works fine

try {

empresaDataProvider.commitChanges();

empresaDataProvider.refresh();

To insert I use this line of code:

public String addButton_action() {

if ( empresaDataProvider.canAppendRow() ) {

try {

RowKey rowKey = empresaDataProvider.appendRow();

empresaDataProvider.setCursorRow(rowKey);

empresaDataProvider.setValue("RazaoSocial",rowKey,input_razao_novo.getValue());

empresaDataProvider.setValue("Responsavel",rowKey,input_responsavel_novo.getValue());

empresaDataProvider.setValue("Email",rowKey,input_email_novo.getValue());

empresaDataProvider.setValue("DDDTelefone",rowKey,input_ddd_novo.getValue());

empresaDataProvider.setValue("NroTelefone",rowKey,input_telefone_novo.getValue());

empresaDataProvider.setValue("Logo",rowKey,input_logo_novo.getValue());

empresaDataProvider.commitChanges();

I tried putting Empresa before the column name, but it didn't work.

Lucas_Conde at 2007-7-6 21:55:22 > top of Java-index,Development Tools,Java Tools...