gerard = odrarg

En nuestro mundo, sea lo que sea lo que la mente humana pueda crear puede ser reproducido y distribuido infinitamente sin ningun costo.

ComboBox con DWR

By odrarg

Ligas para generar combobox dependientes con dwr+struts

http://thewolfexpress.blogspot.com

Liga con ejemplos de DWR

Ligas de javascript y jquery

By odrarg

JavaScript:

javascriptya

dhtmlya.com.ar

Jquery:

easyjquery.com

javascriptya.com.ar/jquery

Videos de jquery

visualjquery.com

inerciasensorial.com.br

noupe.com

ejemplo-ajax-con-jquery-struts-json

ajax-usando-jquery-y-struts

File upload and download with Struts - Subir y descargar archivo

By odrarg

Para subir y descargar un archivo con struts encontre una liga interesante que me ayudo a resolver el problema.

http://strutsblobapp.sourceforge.net/


1. Declarar en el bean , aqui una prueba con un numero fijo de 50 archivos



import org.apache.struts.upload.FormFile;
import org.apache.struts.validator.ValidatorForm;

public class FormBean extends ValidatorForm implements Serializable{

protected FormFile[] fileUno new FormFile[50];


public FormFile getFileUno(int i) {
return fileUno[i];
}


public void setFileUno(int i, FormFile f1) {
fileUno[i] = f1;
}

}



2. Diseño de la tabla en la bd

Tabla Archivos

Id Number
NombreArchivo Varchar2
Size Number
Dato Blob


3. Crear una coleccion
private Collection archivos = null;

4. El jsp






Etiqueta


html:file property='<%="fileUno["+num+"]"%>'>/html:file
html:hidden property='<%="archivoEtiquetaUno["+num+"]"%>'/>





5. Crear el action


public class CrearIniciativasAction extends Action {
.....
......
.......
public ActionErrors insertaArchivosIniciativa( ){
InputStream in=null;
OutputStream out=null;

for ( int tmpIndice = 0; tmpIndice < tmpCantidadColUno.length; tmpIndice++ ){
FormFile tmpFile = iniciativaBean.getFileUno(tmpIndice);
int fileSize = tmpFile.getFileSize();
String tmpFileName = tmpFile.getFileName();

if (tmpFile.getFileSize()>0) {
in=tmpFile.getInputStream(); Objeto.setSize(fileSize); Objeto.setArchivo(tmpFile.getFileName());

tdArchivoIniciativa.setObligatorio(1);
}

dao.saveFile(tmpFileName, in, fileSize, tdArchivoIniciativa);

}
}


}


El dao de save esta en la liga de ejemplo.