Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > как читать файлы с сервлета?


Автор: Anime 17.12.2009, 17:11
Код

 @Override
    protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
       
 response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();
        try { 
   try {
        SAXParserFactory factory = SAXParserFactory.newInstance();
        SAXParser parser = factory.newSAXParser();
//
        SystemReaderXml srx = new SystemReaderXml();
//        InputStream in = new FileInputStream(new File(this.getServletContext().getRealPath("") ,"dd.xml"));

        
        //        parser.parse(in, srx);
        parser.parse(new File(this.getServletContext().getRealPath("") ,"dd.xml"), srx);

        for(tbObject t : srx.getResult()) {
            out.println(t.getMr() + " " + t.getKlass() + " " + t.getSumves());
        }
        } catch(Exception e) {

        }
      } finally {
            out.close();
        }
    }

не хочет он даные выводить. как загрузить файл каторый находится в сервлете

и этот метод возвращает нуль out.println(this.getServletContext().getResource("/res/dd.xml"));

Автор: AntonSaburov 17.12.2009, 17:45
Вообще-то текст лучше выводить не через getOutputStream а через getWriter.

Автор: Anime 18.12.2009, 14:29
всмысле? Он не хочет или не видет файл каторый я ему суют для парсинга -(

Автор: ivanovpv 18.12.2009, 14:56
Файл должен лежать относительно файловой системы сервлета. Надо запросить у него где находится getRealPath("//"); и относительно его и положить dd.xml

Автор: Anime 18.12.2009, 16:12
если написать так 
Код

File f = new File(this.getServletContext().getRealPath("//") ,"dd.xml");
out.println(f);

Выведит путь до файл вот такой он 
C:\Documents and Settings\Kirilenko\Мои документы\NetBeansProjects\gull\build\web\dd.xml
и если скопировать его и вставить то выводит хмл, значит он тама существует, но почему то не парсит -(

Автор: Anime 18.12.2009, 16:38
капец я плачу -)))
нашел ошибку в SystemReaderXml забыл тама написать атрибут  smile  smile  smile  smile  smile  smile 
ненавижу. smile  smile  smile  тупая та ошибка была -_-  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)