Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Метод POST из аплета 
:(
    Опции темы
cat2
Дата 9.11.2003, 13:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 9.11.2003

Репутация: нет
Всего: нет



Мне нужно организовать передачу данных из аплета и возвратить HTML-страницу. Это нужно для организации в редакторе HTML-страниц режима предпросмотра.

Как я и предполагал, GET мне удалось организовать очень просто. Что-то в этом духе.
getAppletContext().showDocument (new URL(“/cgi-bin/mycgi.cgi?param=paramvalue”), "_blank")

А вот с POST – застрял.
Вычитал такой метод.

u = new URL(urlExec);
c = u.openConnection(“/cgi-bin/mycgi.cgi”);
ps = new PrintStream(c.getOutputStream());
ps.print(“?param=paramvalue”);
ps.close();

Но при этом, выходной поток передается обратно апплету. Я могу его поймать и отобразить в апплете

is = new DataInputStream(
c.getInputStream());
textArea.appendText(is.readLine() + "\r\n");
textArea.repaint();
is.close();

Но мне-то надо, в броузер!

Или мне нужно двигаться по другому пути?

PM MAIL   Вверх
daniel (yerevan| javaxp@ya
Дата 12.11.2003, 17:25 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











sozday v brouzere na html <form method=post action='url.cgi' name=jforrm>
<input type=hidden name='param1' value=''>
<input type=hidden name='param1' value=''>
....
...
</form>
<script language=javascript>
function jssend(jarray){

document.forms[0].paramN=jarray[N];

.....
.....
....

document.forms[0].paramN=jarray[N];

// ili mogesh v cikle{} prisvoit znaceniya

document.forms[0].submit();

}
</script>


a v applete...
// mojesh iz appleta vyzvat javascript funkciu
// ar[] massiv kotorjy nugen jssend v pacestve parametrov
// ajssend uge prisvoit ix elementam formy i poshlet etu formu

//tebe nugen paket
import netscape.javascript.*;

try{
JSObject win=JSObject.getWindow(this);
String ar[]={"parmsFORformhidden1","parmsFORformhidden2","parmsFORformhiddenN"};
win.call("jssend",ar); // in html
}catch(Exception e){}


  Вверх
cat2
Дата 12.11.2003, 22:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 9.11.2003

Репутация: нет
Всего: нет



Спасибо за ответ, но ЭТО должно работать в инете. Можно, конечно, рекомендовать всем посетителям сначала скачать этот пакет, но это не есть очень хорошее решение.
=============
Я пытался идти по этому пути.

Даже нашел где-то факу по выполнению JavaScript из аплета

Код
try {

getAppletContext().showDocument(new

URL("javascript:top.имя_функции();"));

} catch (MalFormedURLException mfurle) {}


Только что-то у меня этот пример не работает. Ругается - "неизвестный протокол - javascript"


PM MAIL   Вверх
Sun
Дата 12.11.2003, 22:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Account removed
***


Профиль
Группа: Экс. модератор
Сообщений: 1611
Регистрация: 14.8.2002

Репутация: 8
Всего: 48



Реализация CGI метода POST требует несколько больше возни. Так как этот метод требует передачи параметров через блок данных информации, посылаемой веб-верверу, вы должны писать данные-параметры в выходной поток объекта класса URLConnection object как показано ниже:
Код

URL url=new URL("http://www.somehost.com/cgi-bin/login.sh");
URLConnection urlC=url.openConnection();
urlC.setDoOutput(true);
DataOutputStream dos=new DataOutputStream(urlC.getOutputStream());
dos.writeBytes("User=anil&Password=letmein");
dos.writeBytes("\r\n");


Взято отсюда


--------------------
Account removed
PM MAIL   Вверх
daniel (yerevan| javaxp@ya
Дата 13.11.2003, 12:25 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











import netscape.javascript.*;
ne obyazatelno etot paket chtob byl u vsex,
glavnoe chtob on byl u tebya pri kompilyacii appleta



  Вверх
Sun
Дата 13.11.2003, 12:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Account removed
***


Профиль
Группа: Экс. модератор
Сообщений: 1611
Регистрация: 14.8.2002

Репутация: 8
Всего: 48



Цитата(daniel @ 13.11.2003, 09:25)
import netscape.javascript.*;
ne obyazatelno etot paket chtob byl u vsex,
glavnoe chtob on byl u tebya pri kompilyacii appleta

Если этого пакета не будет на машине где выполняется аплет, каким образом будут загружены классы из этого пакета?


--------------------
Account removed
PM MAIL   Вверх
daniel (yerevan| javaxp@ya
Дата 13.11.2003, 12:44 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











try {

getAppletContext().showDocument(new

URL("javascript:top.имя_функции();"));

} catch (MalFormedURLException mfurle) {}



poprobuy ispolzovat bes :top. esli net html-frameov


try {

getAppletContext().showDocument(new

URL("javascript:имя_функции();"));

} catch (MalFormedURLException mfurle) {}

a iz funkcii js mogesh prochest peremennje prednamnachennye dlya post
ony v applete dolgny byt public

  Вверх
Unregistered
Дата 13.11.2003, 13:59 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











QUOTE
Sun

vozmogno on standartnye

prosto pri kompilyacii on dolgen prisutstvovat v vide paketa

kstati ya ego dostal imenno v standartax
  Вверх
daniel (yerevan| javaxp@ya
Дата 13.11.2003, 13:59 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











QUOTE
Sun

vozmogno on standartnye

prosto pri kompilyacii on dolgen prisutstvovat v vide paketa

kstati ya ego dostal imenno v standartax
  Вверх
daniel (yerevan| javaxp@ya
Дата 13.11.2003, 14:09 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Sun

k stati u menya zapisan odin applet s natscape.*

http://led.am/viewcomputers.php
  Вверх
daniel
Дата 13.11.2003, 14:40 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











komu nugen netscape http://led.am/netscape.zip

mogete zagruzite
dergite katolog netscape tamge gde i vash applet na servere rabotaet bes osobyx problem
  Вверх
cat2
Дата 13.11.2003, 23:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 9.11.2003

Репутация: нет
Всего: нет



Sun. Все равно GET получается sad.gif. Я и по ссылке сходил sad.gif.

daniel (yerevan| javaxp@ya. Нестандартный он

Скачал. Попробую с netscape.


PM MAIL   Вверх
cat2
Дата 14.11.2003, 07:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 9.11.2003

Репутация: нет
Всего: нет



daniel (yerevan| javaxp@ya.
Про javascript забыл ответитить. Я по всякому пробовал. Не проходит даже javascript:alert('')
PM MAIL   Вверх
Unregistered
Дата 14.11.2003, 18:19 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Sun. esli ty prosmotrel http://led.am/viewcomputers.php

i tamoshniy applet rabotaet bolee menee normalno
to znachit prosto nugno katalog netscape.* dergat v odnom i tomge kataloge gde i applet




cat2



argumenty ne pish pri vyzove funkccii javascript

//win.call("javascript:alert ( ' dgfdgdfg dfgdfg' ) "); error

a esli xochesh peredat argument to....

v nignem kode ar[] - eto i est argumenty
__________________________________________________
import netscape.javascript.*;
...


...

try{
JSObject win=JSObject.getWindow(this);
String ar[]={"text for javascript"};
win.call("js_msg_alert",ar); // in html
}catch(Exception e){}

....

____________________________________________

<html>
...

<script ....
function js_msg_alert(msg){ alert(msg); }
...


da k stati cat2

teg <applet
ili <object

obyazatelno dolgno imet
myscript=true
ili <PARAM NAME="MAYSCRIPT" VALUE="true">

sootvetstvenno



"неизвестный протокол - javascript"
vozmogno imenno izza myscript
  Вверх
cat2
Дата 16.11.2003, 19:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 9.11.2003

Репутация: нет
Всего: нет



Всем большое спасибо. Решилось через netscape. Оказалось, что не слишком-то велик этот пакет. Вставил его рядом с кодом. 4 лишних килобайта особо погоды не делают.

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0875 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.