/** * @see * es.pode.empaquetador.presentacion.basico.asociar.archivos.AsociacionArchivosController#aceptarFicheros(org.apache.struts.action.ActionMapping, * es.pode.empaquetador.presentacion.basico.asociar.archivos.AceptarFicherosForm, * javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse) */ public final void aceptarFicheros( ActionMapping mapping, es.pode.empaquetador.presentacion.basico.asociar.archivos.AceptarFicherosForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { if (form instanceof PrincipalSubmitFormImpl) { PrincipalSubmitFormImpl principalForm = (PrincipalSubmitFormImpl) form; if (principalForm.getPrincipal() == null) { if (logger.isDebugEnabled()) logger.debug("no se ha seleccionado ningun fichero principal"); throw new ValidatorException("{portalempaquetado.basico.asociar.error.sinprincipal}"); } } AsociacionArchivosSession asoArcSes = this.getAsociacionArchivosSession(request); AsociarSession asoSes = this.getAsociarSession(request); asoSes.setFicheros(asoArcSes.getFicheros()); asoArcSes.setFicheros(null); }
/** * @see * es.pode.empaquetador.presentacion.basico.asociar.archivos.AsociacionArchivosController#recuperarDatos(org.apache.struts.action.ActionMapping, * es.pode.empaquetador.presentacion.basico.asociar.archivos.RecuperarDatosForm, * javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse) */ public final void recuperarDatos( ActionMapping mapping, es.pode.empaquetador.presentacion.basico.asociar.archivos.RecuperarDatosForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { AsociarSession asoSes = this.getAsociarSession(request); AsociacionArchivosSession asoArcSes = this.getAsociacionArchivosSession(request); // if(asoArcSes.getFicheros()==null) // asoArcSes.setFicheros(new ArrayList()); EmpaquetadorSession empSes = this.getEmpaquetadorSession(request); GestorArchivosSession sesArch = this.getGestorArchivosSession(request); String idOde = empSes.getIdLocalizador(); ArchivoVO arbol = this.getSrvGestorArchivosService().recuperarArbol(idOde); if (logger.isDebugEnabled()) logger.debug("creo la lista de path"); List listaPath = sesArch.getPath(); listaPath.set(0, arbol); for (int i = 1; i < listaPath.size(); i++) { ArchivoVO elemento = (ArchivoVO) listaPath.get(i); String nombre = elemento.getNombre(); ArchivoVO elementoAnterior = (ArchivoVO) listaPath.get(i - 1); ArchivoVO[] arrayContenidos = elementoAnterior.getContenidos(); ArchivoVO hijo = null; for (int j = 0; j < arrayContenidos.length && hijo == null; j++) { if (arrayContenidos[j].getNombre().equals(nombre)) { hijo = arrayContenidos[j]; } } listaPath.set(i, hijo); } ArchivoVO[] lista = null; ArchivoVO ultimoEnPath = null; if (sesArch.getPath().size() != 1) { ultimoEnPath = (ArchivoVO) sesArch.getPath().get(sesArch.getPath().size() - 1); if (ultimoEnPath.getCarpetaPadre() == null) { lista = this.getSrvGestorArchivosService().listar(idOde, ultimoEnPath.getNombre()); } else { lista = this.getSrvGestorArchivosService() .listar(idOde, ultimoEnPath.getCarpetaPadre() + "/" + ultimoEnPath.getNombre()); } } else if (sesArch.getPath().size() == 1) { lista = this.getSrvGestorArchivosService().listar(idOde, null); } form.setFicheros(Arrays.asList(lista)); // ArchivoVO if (asoArcSes.getFicheros() == null) { if (logger.isDebugEnabled()) logger.debug("lista de ficheros en asosiacionArchivoSession esta vacia... la relleno"); asoArcSes.setFicheros(new ArrayList()); asoArcSes.getFicheros().addAll(asoSes.getFicheros()); } form.setFicherosSeleccionados(asoArcSes.getFicheros()); // FileVO form.setPath(sesArch.getPath()); form.setArbol((ArchivoVO) sesArch.getPath().get(0)); }