Como carregar arquivo TIFF no browser?

2 respostas
E

Olá Pessoal, estou tentando carregar imagens originalmente TIFF no browser e estou apanhando um pouco.
Primeiramente, converti o arquivo para JPG e depois tento carregá-lo através de Servlet (ou JSP).
O problema é que o método de conversão trabalha direitinho se for chamado por uma local, mas quando tento chamá-lo a partir do Servlet, dá um erro. Alguém saberia me explicar o porquê ? Segue meu código para avaliação !

/*

  • NewServlet.java
  • Created on 11 de Agosto de 2004, 09:47
    */

package com.mycompany;

import java.io.;
import java.net.
;

import javax.servlet.;
import javax.servlet.http.
;

import com.sun.media.jai.codec.FileSeekableStream;

import com.sun.media.jai.codec.ImageCodec;

import com.sun.media.jai.codec.ImageDecoder;

import java.awt.image.RenderedImage;

import javax.media.jai.JAI;

/**
*

  • @author efidelis

  • @version
    */
    public class NewServlet extends HttpServlet {

    /** Initializes the servlet.
    
    */
    
    public void init(ServletConfig config) throws ServletException {
    
    super.init(config);
    

    }

    /** Destroys the servlet.
    */
    public void destroy() {

    }

    /** Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.

    • @param request servlet request

    • @param response servlet response
      
      */
      
      protected void processRequest(HttpServletRequest request, HttpServletResponse response)
      
      throws ServletException, IOException {
      

      String targetfilename = ConvTifJpg();

      response.setContentType(“text/html”);
      
      PrintWriter out = response.getWriter();
      
      /* TODO output your page here */
      
      out.println("<html>");
      
      out.println("<head>");
      
      out.println("<title>Servlet</title>");
      
      out.println("</head>");
      
      out.println("");
      
      out.println(“HELLO”);
      
      out.println("<p>");
      
      out.println("<p>");
      
      out.println("<img src=""+targetfilename+"">");
      
      out.println("");
      
      out.println("</html>");
      
      out.close();
      
      }
      

    /** Handles the HTTP <code>GET</code> method.

    • @param request servlet request
    • @param response servlet response
      */
      protected void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
      processRequest(request, response);
      }

    /** Handles the HTTP <code>POST</code> method.

    • @param request servlet request
    • @param response servlet response
      */
      protected void doPost(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
      processRequest(request, response);
      }
    /** Returns a short description of the servlet.
    
    */
    
    public String getServletInfo() {
    
    return Short description;
    
    }
    
    public String ConvTifJpg(){
    
    String sourcefilename = g:\java\00000001.TIF;
    
    String targetfilename = g:\java\00000001.JPG;
    
    try {
    
    FileSeekableStream stream = null;
    
    stream = new FileSeekableStream(sourcefilename);
    
    ImageDecoder dec = ImageCodec.createImageDecoder(tiff, stream,null);
    
    RenderedImage image =   dec.decodeAsRenderedImage(0);
    
    JAI.create(filestore,image ,targetfilename,JPEG);
    
    } catch (IOException e) {
    
    e.printStackTrace();
    
    System.exit(0);
    
    }
    
    return targetfilename;
    
    }
    

}

2 Respostas

_fs

Qual o erro?

ps.: coloque seu código entre as tags [ code]seucodigo[ /code], assim ele fica formatado.

E

Deu certo , LIPE, valeu !

O problema era que as APIs do JAI não estavam no diretório
WEB-INFLIB.

Criado 19 de outubro de 2004
Ultima resposta 20 de out. de 2004
Respostas 2
Participantes 2