SlideShare una empresa de Scribd logo
1 de 18
WebSphere Portlet Factory Series ¿Cómo puedo cargar y mostrar un PDF desde un portlet? Por: Andrés Deza V.
Escenario Existe la necesidad de obtener la ruta donde se encuentra un archivo PDF (puede estar en un servidor FTP). Leer dicho archivo y mostrarlo en el browser.
Dificultad Baja / Media
La Receta Builders: 1 Variable Builder 1 Content Launch Action Builder 2 Method Builder 2 Action List Builder 1 Page Builder Resources: 1 Sample PDF File
Preparación Simularemos la carga de un archivo PDF desde una ruta fija. Esto mismo, con algunas modificaciones, se puede aplicar en situaciones reales. Aquí vamos!
Comenzaremos, creando una pagina de ejemplo. De la paleta de builders, escoger el builder  Page.  Darle como nombre  testPage  en sus propiedades. Presionar el botón  Apply/Aplicar para guardar los cambios.
Como paso siguiente, crearemos un método nuevo que simulará el retorno de la ruta donde se encuentra nuestro PDF de ejemplo. Lo haremos de esta manera: Colocamos como nombre  getFilePath Finalmente, colocamos lo siguiente en las secciónes Return Type  y  Method Body: Presionar el botón  Apply/Aplicar para guardar los cambios.
Creamos una nueva variable, la cual almacenará la ruta devuelta Por el método getFilePath() Colocamos como nombre  pathVar  y como tipo  String. Presionar el botón  Apply/Aplicar para guardar los cambios.
A continuación, se creará el método que será el core de este ejemplo. Este se encargará de leer lo que encuentre en la ruta pasada como parámetro y crear un FileInputStream, el cual será  finalmente mostrado en el browser. Creamos un nuevo método.
Colocamos como nombre  readFileContentFromPath. Colocamos como único argumento del método :
En  Return Type  y  Method Body: Como podemos  apreciar, se llama al método  launchContent,  el cual será generado por el  builder  Content  Launch Action  creado mas adelante. Este método, se encarga practicamente de interpretar el  contenido y según el tipo de contenido configurado en el  Content Launch  Action,  indicarle  al browser que plugin utilizar para mostrar dicho contenido.
No olvidemos los imports necesarios! En  Import List,  ingresar los siguientes valores :
Se creará un actionList el cual obtenga la ruta donde se  encuentra nuestro archivo PDF. Una vez obtenida, se le pasará dicha ruta al método  readFileContentFromPath,  quien  finalmente, mostrará el contenido en el browser. Colocamos  como nombre  setFilePath Colocamos  lo siguiente en Actions:
Creamos un Content Launch Action, encargado de disparar la acción que muestra el archivo. Para este ejemplo, se disparará al dar click en un enlace colocado en nuestra página de ejemplo. Colocamos como nombre  ContentLauncher Colocamos en Page:  testPage  y en Tag:  namedTag Colocamos en Page Control Type:  Link  y en Link Text:  Show File!
En Action Type:  Link to an Action.  En Content Load Action:  setFilePath En Content Type:  application/pdf Presionar el botón  Apply/Aplicar para guardar los cambios.
Se creará un actionList el cual llame a la pagina  testPage,  para ser Mostrada inicialmente al correr el modelo. Colocamos  como nombre  main Colocamos  lo siguiente en Actions:
Antes de probar… Antes de realizar la prueba correspondiente, realizar los  Siguiente pasos: ,[object Object],[object Object],[object Object],[object Object]
Pruebalo! Si todo sale bien, corre el modelo creado.  Aparecerá una página con un enlace “Show File!”. Al dar click en dicho enlace, deberá abrirse el PDF de ejemplo que colocaste en la carpeta  docs

Más contenido relacionado

La actualidad más candente

La actualidad más candente (16)

Practica mundo
Practica mundoPractica mundo
Practica mundo
 
Servidor web en centos 6.5
Servidor web en centos 6.5Servidor web en centos 6.5
Servidor web en centos 6.5
 
Aplicando excepciones en java web
Aplicando excepciones en java webAplicando excepciones en java web
Aplicando excepciones en java web
 
Practica3 dulce adriana
Practica3 dulce adrianaPractica3 dulce adriana
Practica3 dulce adriana
 
Doctrine symfony
Doctrine symfonyDoctrine symfony
Doctrine symfony
 
Doctrine symfony
Doctrine symfonyDoctrine symfony
Doctrine symfony
 
Practica2
Practica2Practica2
Practica2
 
Tutorial base sts springmvc
Tutorial base sts springmvcTutorial base sts springmvc
Tutorial base sts springmvc
 
Primera app
Primera appPrimera app
Primera app
 
Programa 7
Programa 7Programa 7
Programa 7
 
Blogger(fallo)
Blogger(fallo)Blogger(fallo)
Blogger(fallo)
 
Primera_Aplicación_Python_Django_Postgresql_Fedora_19
Primera_Aplicación_Python_Django_Postgresql_Fedora_19Primera_Aplicación_Python_Django_Postgresql_Fedora_19
Primera_Aplicación_Python_Django_Postgresql_Fedora_19
 
Vb aspx sitio
Vb aspx sitioVb aspx sitio
Vb aspx sitio
 
Practica5adri
Practica5adriPractica5adri
Practica5adri
 
Manual de dropbox
Manual de dropbox Manual de dropbox
Manual de dropbox
 
Herramientas tecnologicas
Herramientas tecnologicasHerramientas tecnologicas
Herramientas tecnologicas
 

Destacado

Ove Rexploitation Of Natural Resources
Ove Rexploitation Of Natural ResourcesOve Rexploitation Of Natural Resources
Ove Rexploitation Of Natural ResourcesLestat2000x
 
代码之美(精选版)
代码之美(精选版)代码之美(精选版)
代码之美(精选版)DoCode org
 
Arte na Rua (Street Art)
Arte na Rua (Street Art)Arte na Rua (Street Art)
Arte na Rua (Street Art)azideias
 
Educational Tech at RMIT University, Australia
Educational Tech at RMIT University, AustraliaEducational Tech at RMIT University, Australia
Educational Tech at RMIT University, AustraliaBoonlert Aroonpiboon
 
Omera Gede Winter Picnic
Omera Gede Winter PicnicOmera Gede Winter Picnic
Omera Gede Winter PicnicShaikhani.
 
pin | mesin pin | bahan pin | gantungan kunci | laminasi
pin | mesin pin | bahan pin | gantungan kunci | laminasipin | mesin pin | bahan pin | gantungan kunci | laminasi
pin | mesin pin | bahan pin | gantungan kunci | laminasisambis
 
Bluetooth
BluetoothBluetooth
Bluetoothneris69
 
Salad Days
Salad DaysSalad Days
Salad Daysmbamom
 
Disaster Planning and Response with Office 2007: Microsoft Corporation
Disaster Planning and Response with Office 2007: Microsoft CorporationDisaster Planning and Response with Office 2007: Microsoft Corporation
Disaster Planning and Response with Office 2007: Microsoft CorporationMary Marks
 
Education Tech at Melbourn University
Education Tech at Melbourn UniversityEducation Tech at Melbourn University
Education Tech at Melbourn UniversityBoonlert Aroonpiboon
 

Destacado (20)

Ove Rexploitation Of Natural Resources
Ove Rexploitation Of Natural ResourcesOve Rexploitation Of Natural Resources
Ove Rexploitation Of Natural Resources
 
Web Development as Web 2.0
Web Development as Web 2.0Web Development as Web 2.0
Web Development as Web 2.0
 
代码之美(精选版)
代码之美(精选版)代码之美(精选版)
代码之美(精选版)
 
Arte na Rua (Street Art)
Arte na Rua (Street Art)Arte na Rua (Street Art)
Arte na Rua (Street Art)
 
Cantabria entre mar y montaña
Cantabria entre mar y montañaCantabria entre mar y montaña
Cantabria entre mar y montaña
 
Educational Tech at RMIT University, Australia
Educational Tech at RMIT University, AustraliaEducational Tech at RMIT University, Australia
Educational Tech at RMIT University, Australia
 
Thai Glossary Repository
Thai Glossary RepositoryThai Glossary Repository
Thai Glossary Repository
 
UK News Articles on America's Team
UK News Articles on America's TeamUK News Articles on America's Team
UK News Articles on America's Team
 
Open Source Health Library System
Open Source Health Library SystemOpen Source Health Library System
Open Source Health Library System
 
Omera Gede Winter Picnic
Omera Gede Winter PicnicOmera Gede Winter Picnic
Omera Gede Winter Picnic
 
OSS & Freeware for e-Learning
OSS & Freeware for e-LearningOSS & Freeware for e-Learning
OSS & Freeware for e-Learning
 
pin | mesin pin | bahan pin | gantungan kunci | laminasi
pin | mesin pin | bahan pin | gantungan kunci | laminasipin | mesin pin | bahan pin | gantungan kunci | laminasi
pin | mesin pin | bahan pin | gantungan kunci | laminasi
 
Bluetooth
BluetoothBluetooth
Bluetooth
 
Web Accessibility
Web AccessibilityWeb Accessibility
Web Accessibility
 
alemanas
alemanasalemanas
alemanas
 
Salad Days
Salad DaysSalad Days
Salad Days
 
Disaster Planning and Response with Office 2007: Microsoft Corporation
Disaster Planning and Response with Office 2007: Microsoft CorporationDisaster Planning and Response with Office 2007: Microsoft Corporation
Disaster Planning and Response with Office 2007: Microsoft Corporation
 
Education Tech at Melbourn University
Education Tech at Melbourn UniversityEducation Tech at Melbourn University
Education Tech at Melbourn University
 
Clasesempresas
ClasesempresasClasesempresas
Clasesempresas
 
Educational Tech at Australia
Educational Tech at AustraliaEducational Tech at Australia
Educational Tech at Australia
 

Similar a WPF Series - 01

Conociendo el Patron Modelo Vista Controlador
Conociendo el Patron   Modelo Vista ControladorConociendo el Patron   Modelo Vista Controlador
Conociendo el Patron Modelo Vista Controladorlissette_torrealba
 
Hands on Lab: Construyendo un lector RSS desde Visual Studio y Expression Blend
Hands on Lab: Construyendo un lector RSS desde Visual Studio y Expression BlendHands on Lab: Construyendo un lector RSS desde Visual Studio y Expression Blend
Hands on Lab: Construyendo un lector RSS desde Visual Studio y Expression BlendSorey García
 
Actividad responsable 1
Actividad responsable 1Actividad responsable 1
Actividad responsable 1ctepay
 
Webbrowser de vb 6.0 y vb.net
Webbrowser de vb 6.0 y vb.netWebbrowser de vb 6.0 y vb.net
Webbrowser de vb 6.0 y vb.netadezhiz
 
Computación avanzada en java cert
Computación avanzada en java certComputación avanzada en java cert
Computación avanzada en java certMaestros Online
 
Instalación de Tomcat 7 en Linux y Windows
Instalación de Tomcat 7 en Linux y WindowsInstalación de Tomcat 7 en Linux y Windows
Instalación de Tomcat 7 en Linux y Windowspablolp
 
Manual de netbeans_7(2)(2)(2)
Manual de netbeans_7(2)(2)(2)Manual de netbeans_7(2)(2)(2)
Manual de netbeans_7(2)(2)(2)javier_ot99
 
Introducción al desarrollo de aplicaciones web
Introducción al desarrollo de aplicaciones webIntroducción al desarrollo de aplicaciones web
Introducción al desarrollo de aplicaciones webAnfap
 
Búsqueda de sitios ultimo treabajo de tic
Búsqueda de sitios ultimo treabajo de ticBúsqueda de sitios ultimo treabajo de tic
Búsqueda de sitios ultimo treabajo de ticJulieta Aliscioni
 
Hands on Lab: Almacenamiento local con base de datos, launchers y choosers
Hands on Lab: Almacenamiento local con base de datos, launchers y choosersHands on Lab: Almacenamiento local con base de datos, launchers y choosers
Hands on Lab: Almacenamiento local con base de datos, launchers y choosersSorey García
 
Creación de un sitio web en wordpress
Creación de un sitio web en wordpressCreación de un sitio web en wordpress
Creación de un sitio web en wordpressMilton González
 
Manual de usuario moodle
Manual de usuario moodleManual de usuario moodle
Manual de usuario moodleISI UCA
 

Similar a WPF Series - 01 (20)

Conociendo el Patron Modelo Vista Controlador
Conociendo el Patron   Modelo Vista ControladorConociendo el Patron   Modelo Vista Controlador
Conociendo el Patron Modelo Vista Controlador
 
A tutor
A tutorA tutor
A tutor
 
Mi app-asp-net-mvc2
Mi app-asp-net-mvc2Mi app-asp-net-mvc2
Mi app-asp-net-mvc2
 
Hands on Lab: Construyendo un lector RSS desde Visual Studio y Expression Blend
Hands on Lab: Construyendo un lector RSS desde Visual Studio y Expression BlendHands on Lab: Construyendo un lector RSS desde Visual Studio y Expression Blend
Hands on Lab: Construyendo un lector RSS desde Visual Studio y Expression Blend
 
Actividad responsable 1
Actividad responsable 1Actividad responsable 1
Actividad responsable 1
 
Webbrowser de vb 6.0 y vb.net
Webbrowser de vb 6.0 y vb.netWebbrowser de vb 6.0 y vb.net
Webbrowser de vb 6.0 y vb.net
 
Taller desarrollo web
Taller  desarrollo webTaller  desarrollo web
Taller desarrollo web
 
Computación avanzada en java cert
Computación avanzada en java certComputación avanzada en java cert
Computación avanzada en java cert
 
Instalación de Tomcat 7 en Linux y Windows
Instalación de Tomcat 7 en Linux y WindowsInstalación de Tomcat 7 en Linux y Windows
Instalación de Tomcat 7 en Linux y Windows
 
REPORTES
REPORTESREPORTES
REPORTES
 
Jasreport
JasreportJasreport
Jasreport
 
Manual de netbeans_7(2)(2)(2)
Manual de netbeans_7(2)(2)(2)Manual de netbeans_7(2)(2)(2)
Manual de netbeans_7(2)(2)(2)
 
Introducción al desarrollo de aplicaciones web
Introducción al desarrollo de aplicaciones webIntroducción al desarrollo de aplicaciones web
Introducción al desarrollo de aplicaciones web
 
Ruby on Rails Workshop
Ruby on Rails WorkshopRuby on Rails Workshop
Ruby on Rails Workshop
 
Búsqueda de sitios ultimo treabajo de tic
Búsqueda de sitios ultimo treabajo de ticBúsqueda de sitios ultimo treabajo de tic
Búsqueda de sitios ultimo treabajo de tic
 
Hands on Lab: Almacenamiento local con base de datos, launchers y choosers
Hands on Lab: Almacenamiento local con base de datos, launchers y choosersHands on Lab: Almacenamiento local con base de datos, launchers y choosers
Hands on Lab: Almacenamiento local con base de datos, launchers y choosers
 
Creación de un sitio web en wordpress
Creación de un sitio web en wordpressCreación de un sitio web en wordpress
Creación de un sitio web en wordpress
 
Manual de usuario moodle
Manual de usuario moodleManual de usuario moodle
Manual de usuario moodle
 
ASP
ASPASP
ASP
 
Tutorial net beans
Tutorial net beansTutorial net beans
Tutorial net beans
 

WPF Series - 01

  • 1. WebSphere Portlet Factory Series ¿Cómo puedo cargar y mostrar un PDF desde un portlet? Por: Andrés Deza V.
  • 2. Escenario Existe la necesidad de obtener la ruta donde se encuentra un archivo PDF (puede estar en un servidor FTP). Leer dicho archivo y mostrarlo en el browser.
  • 4. La Receta Builders: 1 Variable Builder 1 Content Launch Action Builder 2 Method Builder 2 Action List Builder 1 Page Builder Resources: 1 Sample PDF File
  • 5. Preparación Simularemos la carga de un archivo PDF desde una ruta fija. Esto mismo, con algunas modificaciones, se puede aplicar en situaciones reales. Aquí vamos!
  • 6. Comenzaremos, creando una pagina de ejemplo. De la paleta de builders, escoger el builder Page. Darle como nombre testPage en sus propiedades. Presionar el botón Apply/Aplicar para guardar los cambios.
  • 7. Como paso siguiente, crearemos un método nuevo que simulará el retorno de la ruta donde se encuentra nuestro PDF de ejemplo. Lo haremos de esta manera: Colocamos como nombre getFilePath Finalmente, colocamos lo siguiente en las secciónes Return Type y Method Body: Presionar el botón Apply/Aplicar para guardar los cambios.
  • 8. Creamos una nueva variable, la cual almacenará la ruta devuelta Por el método getFilePath() Colocamos como nombre pathVar y como tipo String. Presionar el botón Apply/Aplicar para guardar los cambios.
  • 9. A continuación, se creará el método que será el core de este ejemplo. Este se encargará de leer lo que encuentre en la ruta pasada como parámetro y crear un FileInputStream, el cual será finalmente mostrado en el browser. Creamos un nuevo método.
  • 10. Colocamos como nombre readFileContentFromPath. Colocamos como único argumento del método :
  • 11. En Return Type y Method Body: Como podemos apreciar, se llama al método launchContent, el cual será generado por el builder Content Launch Action creado mas adelante. Este método, se encarga practicamente de interpretar el contenido y según el tipo de contenido configurado en el Content Launch Action, indicarle al browser que plugin utilizar para mostrar dicho contenido.
  • 12. No olvidemos los imports necesarios! En Import List, ingresar los siguientes valores :
  • 13. Se creará un actionList el cual obtenga la ruta donde se encuentra nuestro archivo PDF. Una vez obtenida, se le pasará dicha ruta al método readFileContentFromPath, quien finalmente, mostrará el contenido en el browser. Colocamos como nombre setFilePath Colocamos lo siguiente en Actions:
  • 14. Creamos un Content Launch Action, encargado de disparar la acción que muestra el archivo. Para este ejemplo, se disparará al dar click en un enlace colocado en nuestra página de ejemplo. Colocamos como nombre ContentLauncher Colocamos en Page: testPage y en Tag: namedTag Colocamos en Page Control Type: Link y en Link Text: Show File!
  • 15. En Action Type: Link to an Action. En Content Load Action: setFilePath En Content Type: application/pdf Presionar el botón Apply/Aplicar para guardar los cambios.
  • 16. Se creará un actionList el cual llame a la pagina testPage, para ser Mostrada inicialmente al correr el modelo. Colocamos como nombre main Colocamos lo siguiente en Actions:
  • 17.
  • 18. Pruebalo! Si todo sale bien, corre el modelo creado. Aparecerá una página con un enlace “Show File!”. Al dar click en dicho enlace, deberá abrirse el PDF de ejemplo que colocaste en la carpeta docs