• Miércoles 24 de Abril de 2024, 07:38

Autor Tema:  Struts  (Leído 1624 veces)

soylacheno

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Struts
« en: Lunes 14 de Agosto de 2006, 09:48 »
0
Estoy iniciandome en el mundo de los struts y estoy un poco atascada. Cada  vez que me leo algo relacionado me lía más.  
     Mi problema  es :  Necesito que mi clase Action del struts realice una consulta a la base datos y  me recupere un pdf que alberga la bbdd.  Una vez tenemos el pdf, hemos de obtener el path donde tenemos el proyecto, para poder guardar ese pdf en una carpeta. Ya guardado en la carpeta, la url se la pasamos al javabeans, y retornamos una página que abre el pdf.
       
      Entonces, tengo un clase con un metodo estatico que realiza la consulta. Así la clase Action llama a ese método y obtiene el pdf. Pero no tengo ni idea de como puedo obtener el contexto y guardar el pdf en un fichero. En algún manual que he ojeado, para la obtención del contexto utiliza ServletConfig, pero tengo dudas de como se obtiene, al menos si hacemos directamente:  
   ServletContext  path = getServletContext();
 me da error en el Netbeans.        
   
 Tengo configurado los ficheros struts-config.xml y web.xml, lo he sacado de un manual de struts (Jakarta struts de Anaya), aunque tengo dudas de si está correcto:


   WEB.xml:


    <servlet>
 
       <servlet-name>action</servlet-name>
    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>        
         <init-param>
            <param-name> config </param-name>
            <param-name> /WEB-INF/struts-config.xml  </param-name>
        </init-param>      

    </servlet>

    <servlet-mapping>
        <servlet-name>action</servlet-name>
        <url-pattern>*.do</url-pattern>
    </servlet-mapping>



    STRUTS-CONFIG.XML:

<struts-config>

 //JAVABEANS: TIENE UN CAMPO url que almacena el path donde alberga el pdf

    <form-beans type="org.apache.struts.action.ActionFormBean">
        <form-bean name="DatosForm"  type="struts.DatosForm"/>        
   
    </form-beans>

   
   
    <global-forwards>  <forward name = "mostrar" path ="mostrarPdf.jsp"></global-forwards>
   
   

    <action-mappings
        type="org.apache.struts.action.ActionMapping">            
        <!--  Cada vez que chamemos á acción "/ClaseAction" vaise executar a clase ClaseAction
        que ten como ActionForm asociado DatosForm.-->
        <action path="/ClaseAction" type="src.struts.ClaseAction" name = "DatosForm">      
        </action>
   

    </action-mappings>

</struts-config>


   Mi javaBeans sería algo así como:

package struts;

import org.apache.struts.action.ActionForm;




public class DatosForm  extends ActionForm{

 
    String url = ""; //retorna la url donde está almacenado el fichero
   

     
     public DatosForm(String Url){
         url = Url;
     }
   
   
   
    public String getUrl(){
        return url;
    }
   
   
     
   
}



        Agradecería alguna solucion. Gracias por adelantado