powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / Java [игнор отключен] [закрыт для гостей] / Апплеты и Excel
16 сообщений из 16, страница 1 из 1
Апплеты и Excel
    #32380439
Ruslan Ibraev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Апплет генерирует данные, которые пользователь хочет видеть в Excel. Подскажите, что можно сделать, на стороне сервера - Apache+PHP.
...
Рейтинг: 0 / 0
Апплеты и Excel
    #32381190
Фотография Yes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Используй пакет POI для генерации на яве файлов Excel.

Если Бог за нас, кто против нас?
...
Рейтинг: 0 / 0
Апплеты и Excel
    #32381451
Ruslan Ibraev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо! Но файлы я могу создавать только на стороне сервера?
...
Рейтинг: 0 / 0
Апплеты и Excel
    #32381478
Фотография Yes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да. POI довольно удобная штука, я на нем отчеты генерирую для юзверей.

Если Бог за нас, кто против нас?
...
Рейтинг: 0 / 0
Апплеты и Excel
    #32381506
Edgiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
можно и в апплете, но тогда придеться все POI на клиент качать
...
Рейтинг: 0 / 0
Апплеты и Excel
    #32381560
Фотография Yes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно и в аплете, только если юзверь дождется загрузки.
А почему не устраивает сервер? Сгенерировать документ и не сохраняя его отправить юзверу? В чем не стыковка?

Если Бог за нас, кто против нас?
...
Рейтинг: 0 / 0
Апплеты и Excel
    #32381604
Ruslan Ibraev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) Я новичок, и в книжке написано, апплет не может создать файл на клиенте- это ошибочное мнение?
2) Наверное будет неинтересно делать такой обмен:
Данные передаются апплету через параметры, User что-нибудь поделает с этими данными, а потом вбредт ему в голову ещё и Excel запустить.Эти данные вернуться на сервер, создасться excel-файл, который опять будет закачивать юзверь себе на машину :((
3) Нужно разворачивать Java Server. Сейчас PHP формирует html вместе параметрами апплета...(Кстати какой сервер посоветуете СУБД - Oracle)


Смотрю POI. Трудно сразу разобраться - всё на английском...Может есть русская документация?
...
Рейтинг: 0 / 0
Апплеты и Excel
    #32383176
Edgiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
апплет конечно не может сохранять файлы, но он может открыть excel документ в IE (можно в новом окне) с gui самого excel. так лучше сделать, если апплет после загрузки не обращаеться к серверу, иначе лучше формирование документа перенести на сервер.

если количество данных такое небольшое, что их можно передать апплету через параметры, то имхо лучше сделать html форму, а на сервере генерить excel документ
так что если не хочеться связываться с джавовским сервером, можно вместо POI поискать аналогичную либу для PHP
...
Рейтинг: 0 / 0
Апплеты и Excel
    #32383489
Фотография Yes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не уверен, что данные подготовленные юзвером джля отчета больше по объему чем пакет POI. На их сайте есть пример, он на ангельском, но там почти один код - его и без перевода можно понять.
А чем не устраивает ТомКат? Его даже ставить не требуется, просто файлы поместить. Хотя малость тормозит - зато просто.


Если Бог за нас, кто против нас?
...
Рейтинг: 0 / 0
Апплеты и Excel
    #32383982
Ruslan Ibraev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да с примером на сайте разобрался.


Я не совсем понимаю, чем может помочь копирование POI на машину клиента? Обьясните чайнику, ведь файлы нельзя будет создавать? И Excel тоже нельзя вызвать из апплета. Просто увидеть в gui (я понимаю, что gui у POI?), думаю никого не устроит.

Я уже начал подумывать о Томкате. Но это в том случае, что поставить и обслуживать его проще, чем передать из апплета PHP скрипту параметры методом POST?
...
Рейтинг: 0 / 0
Апплеты и Excel
    #32386107
Edgiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
файлы создать нельзя, открыть новое окно браузера и залить туда excel-документ через liveconnect
попробуй из ie открыть какой-инибудь excel-документ
результат работы апплета будет такой же, только сохраненного файла не будет, это можно сделать вручную
а POI должен скачать апплет, чтобы ей воспользоваться на клиенте. с помощью POI генеряться документы, неважно на клиенте, или на сервере, а просматриваються другими приложениями клиента (excel'ем)
это все стоит делать, если объем данных генерируемых апплетом намного превышает объем исходных данных, получаемых им с сервера.
а так проще все сделать на стороне сервера, на PHP или сервлете, уж что лучше знаешь :)
...
Рейтинг: 0 / 0
Апплеты и Excel
    #32387732
Ruslan Ibraev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На данный момент пытаюсь передать PHP скрипту переменные.
Метод GET идёт на ура. Т.е.
Код: plaintext
1.
2.
3.
4.
5.
            URL url = new URL(protocol, host,port,  "/slk_redir.php?" +dataParam);
            URLConnection conn = url.openConnection();
            conn.setUseCaches(false);
            conn.setRequestProperty( "Content-Type" , "application/x-www-form-urlencoded" );
            String frameName =  "Excel" ;
            getAppletContext().showDocument(url, frameName);.

Но POST, похоже не пройдёт. Просто не знаю как сделать.

Вопрос:
1) Не знаете ли какая максимальная длина строки GET?

2) Правильно ли я передаю переменные:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
          String dataParam = getExportParam(separator);//строка с переменными
           URL currentPage = getCodeBase();
          String host = currentPage.getHost();
          String protocol = currentPage.getProtocol();
          int port = currentPage.getPort();
          try {
            URL url = new URL(protocol, host,port,  "/slk_redir.php" );
            URLConnection conn = url.openConnection();
            conn.setUseCaches(false);
            conn.setDoOutput(true);
            ByteArrayOutputStream btStream = new ByteArrayOutputStream( 512 );
            PrintWriter out = new PrintWriter(btStream, true);
            out.print(dataParam);
            out.flush();
            String lengthString=String.valueOf(btStream.size());
            conn.setRequestProperty( "Content-Length" ,lengthString);
            conn.setRequestProperty( "Content-Type" , "application/x-www-form-urlencoded" );
            btStream.writeTo(conn.getOutputStream());
 /*Здесь я, как понимаю,  должен увидеть в логах веб-сервера соответствующую запись. На самом деле ничего нет
*/ 
...
Рейтинг: 0 / 0
Апплеты и Excel
    #32392356
Ruslan Ibraev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Was ist das liveconnect?
Желательно с примером кода. В HOWTO POI объект wb печатает в файл, в PrintWriter ( как в примере выше не позволяет) ... Где он liveconnect? Хотя бы ссылку?
...
Рейтинг: 0 / 0
Апплеты и Excel
    #32404341
Ruslan Ibraev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как сделать, чтобы в POI печатались русские буквы?
...
Рейтинг: 0 / 0
Апплеты и Excel
    #32404363
Фотография Scott Tiger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А где не печатаются? И какая версия POI?
...
Рейтинг: 0 / 0
Апплеты и Excel
    #32404405
Ruslan Ibraev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 версия, всё нашёл ссылку...
http://]http://people.comita.spb.ru/users/sergeya/java/ruschars.html#poi
Код: plaintext
    cell.setEncoding( HSSFCell.ENCODING_UTF_16 );
- помог
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Апплеты и Excel
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]