|
0 / 0 / 0
Регистрация: 13.12.2007
Сообщений: 12
|
|
Как связать Applet и Servlet ?17.12.2007, 14:39. Показов 1685. Ответов 6
Метки нет (Все метки)
Здравствуйте я в Java новенький. Стоит задача связать Applet c гридами, меню и пр. с Servlet'ом Использую Oracle9i, JDeveloper 3.2.3,
Oracle9i Application Server WWW Server Apache. Прочел статью - Доступ к БД из сервлета Взаимосвязь Апплет-сервлет, мало что понял так как пока мало опыта в написании того и другого. Нет ли у кого полного кода Апплета и связанного с ним Сервлета Буду чрезвычайно признателен за помощь. Спасибо Олег
0
|
|
| 17.12.2007, 14:39 | |
|
Ответы с готовыми решениями:
6
Обращение к Servlet из Applet-a applet<->servlet<->oracle Отправить данные с Applet к Servlet |
|
mishgun
|
|
| 17.12.2007, 17:34 | |
|
Этот объект служит для передачи инфы между апплетом и сервлетом
import java.io.*; public class Order implements Serializable{ private String order = new String(''); private String status = new String(''); public Order(){} public void setOrder(String value){ if(value!=null){ order=value; } } public String getOrder(){ return order; } public void setStatus(String value){ if(value!=null){ status = value; } } public String getStatus(){ return status; } } Апплет import java.awt.*; import java.awt.event.*; import java.applet.*; import java.net.*; import java.io.*; public class OrderStatusApplet extends Applet{ boolean isStandalone = false; Panel statusPanel = new Panel(); Panel actionPanel = new Panel(); GridLayout gridLayout = new GridLayout(1,2); Button statusButton = new Button(); TextField orderTextField = new TextField(); Label label1 = new Label(); TextArea statusResultTextArea = new TextArea(); public String getParameter(String key,String def){ return isStandalone ? System.getProperty(key,def): (getParameter(key) != null ? getParameter(key) : def); } public OrderStatusApplet(){} public void init(){ try { jbInit(); } catch(Exception e){ e.printStackTrace(); } } public void jbInit() throws Exception{ this.setSize(400,150); this.setLayout(gridLayout); statusButton.setLabel('Get Status'); statusButton.addActionListener(new ButtonHandler()); label1.setText('Order #'); orderTextField.setSize(new Dimension(50,19)); statusResultTextArea.setSize(new Dimension(50,19)); this.add(actionPanel); actionPanel.add(label1); actionPanel.add(orderTextField); actionPanel.add(statusButton); this.add(statusPanel); statusPanel.add(statusResultTextArea); } public String[][] getParameterInfo(){ return null; } public void writeOrder(URLConnection conn,Order value){ try{ conn.setUseCaches(false); conn.setRequestProperty('CONTENT_TYPE',' application/octet-stream'); conn.setDoInput(true); conn.setDoOutput(true); ObjectOutputStream os = new ObjectOutputStream(conn.getOutputStream( )); System.err.println('Writing Order'); os.writeObject(value); os.flush(); os.close(); } catch(IOException e){ System.err.println('Error1' + e.toString()); } } public Order readOrder(URLConnection conn){ Order order = null; try{ ObjectInputStream is = new ObjectInputStream(conn.getInputStream()) ; System.err.println('Waiting for response'); order = (Order)is.readObject(); is.close(); } catch(IOException e){ System.err.println('Error2' + e); } catch(ClassNotFoundException ce){ System.err.println('Error3' + ce.getMessage()); } return order; } public class ButtonHandler implements ActionListener{ public void actionPerformed(ActionEvent e){ String s = e.getActionCommand(); if(s.equals('Get Status')){ try{ Order order = new Order(); order.setOrder(orderTextField.getText()) ; URL url = new URL('http://localhost:8100/servlet/OrderStatusServlet'); System.err.println('Opening connection'); URLConnection conn = url.openConnection( |
|
|
0 / 0 / 0
Регистрация: 13.12.2007
Сообщений: 12
|
|
| 17.12.2007, 18:01 [ТС] | |
|
Ура! Ответили
![]() Спасибо за ответ, а вот этот объект,который служит для передачи инфы между апплетом и сервлетом -он размещается на сервере приложений там же где и сервлет?? Если ошибаюсь в понятиях поправьте. Олег
0
|
|
|
mishgun
|
|
| 17.12.2007, 20:26 | |
|
ты понял правильно но один момент ты или должен держать его и на директории апплета и на директории сервлета(ламерский подход
) или прописать к нему пути в CLASSPATH(проффесиональный подход )
|
|
|
0 / 0 / 0
Регистрация: 13.12.2007
Сообщений: 12
|
|
| 18.12.2007, 08:34 [ТС] | |
|
Спасибо!
буду разбираться Олег
0
|
|
|
3 / 3 / 3
Регистрация: 07.11.2007
Сообщений: 270
|
|
| 18.12.2007, 12:46 | |
|
Об этом мало кто знает, но в издательстве 'Питер' вышла классная книга 'Сервлеты и JavaServer Pages' М.Холла. Там практически все по этой теме.
0
|
|
|
0 / 0 / 0
Регистрация: 13.12.2007
Сообщений: 12
|
|
| 18.12.2007, 14:19 [ТС] | |
|
Ага, уже увидел. Попробую ее приобрести так как в английском не очень
Олег
0
|
|
| 18.12.2007, 14:19 | |
|
Помогаю со студенческими работами здесь
7
Можно ли связать Java-applet с БД? Взаимодействие между applet<->servlet->db, создание java online игры MS sql, servlet & applet
Ошибка javax.servlet.ServletException: Error instantiating servlet class myclasses.StudentServlet Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение.
И на уровне агентов добавится между грибами или бактериями взаимодействий.
До того я пробовал подход через многомерные массивы,. . .
|
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Сочетание глобально распределённой вычислительной мощности и инновационных. . .
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|