|
|
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
Апплет с JMenu. Идея заполнять его динамически через JSP. По умолчанию пустой бар с одной кнопочкой. Вызов штатный: app=document.getElementById('uo_menu_a'); app.addmenu('1','0','1подменю','1',1); app.addmenu('2','0','1пунктменю корень','1',2); app.addmenu('3','1','1пунктменю','1',2); app.addmenu('4','0','1подменю','1',1); app.addmenu('5','4','1подменю2','1',1); app.menu_init(0); --не работает, пустое меню без ошибок. Вызов тестовый: app.menu_init(1); Разница в том что с входящим app.menu_init(1) сначала внутри menu_init есть строки app=document.getElementById('uo_menu_a'); app.addmenu('1','0','1подменю','1',1); app.addmenu('2','0','1пунктменю корень','1',2); app.addmenu('3','1','1пунктменю','1',2); app.addmenu('4','0','1подменю','1',1); app.addmenu('5','4','1подменю2','1',1); Вопрос чем отличается заполнение addmenu из скрипта а потом menu_init и когда addmenu вызывается в menu_init . public void addmenu (String id ,String parent_id ,String a_name,String a_code,int menu_type ) { System.out.println ("Error"); tmpmobject = new mobject (id , parent_id , a_name, a_code,menu_type ); menus.put( id, (mobject) tmpmobject); } public void menu_init (int mode ) { // для теста if ( mode==1) { this.addmenu ("1","0","подменю","",1); this.addmenu ("2","0","пунктменю корень","",2); this.addmenu ("3","1","пунктменю","",2); this.addmenu ("4","0","подменю","",1); this.addmenu ("5","4","подменю2","",1); }; contentPane=(JComponent)getContentPane(); mainMenu = new JMenuBar(); head = new JMenu("0"); panel = new JPanel(); // перекидываем объекты в компоненты names = menus.keys(); while(names.hasMoreElements()) { str = (String) names.nextElement(); tmpmobject =menus.get(str); if ( tmpmobject.menu_type == 1) { this.addJmenu( tmpmobject.id, tmpmobject.a_name); }; if ( tmpmobject.menu_type == 2) { this.addJmenuitem ( tmpmobject.id, tmpmobject.a_name); }; } ///////////////////////////////////// // ImageIcon image1 = new ImageIcon(getToolkit().createImage("login.jpg")); // head.setIcon(image1); this.matching_menus(); mainMenu.add(head); contentPane.add(mainMenu,BorderLayout.NORTH); contentPane.add(panel,BorderLayout.CENTER); this.repaint(); this.validate(); } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2016, 18:44 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
Используйте теги форматирования для подсветки кода. Не используйте repaint();/validate(); - если они вам нужны, то что-то вы делаете не так. Из JSP нельзя вызывать методы аплета. JSP это Java Server Pages. А апплет это клиентская технология. Методы аплета можно вызывать из JavaScript. Из вашего поста не понятно вызывается ли метод addmenu в принципе. Если таки вызывается, то я бы проверил из какого потока. Методы вызванные из JavaScript имеют ещё больше ограничений чем сам апплет. Возможно, их стоит синхронизировать с Event Dispatch Thread через invokeLater() либо invokeAndWait() https://docs.oracle.com/javase/tutorial/uiswing/concurrency/initial.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2016, 18:58 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Да конечно скриптом,извините опечатался. Я не делал проверку вызываются ли методы добавки, да я использую инвокер иначе бы не работал вариант через тестовый пример. У меня есть готовый и рабочий аналог с котрого я делал это. Схема такая: после запуска аплета я запускаю скрипт в котором сначала работаю методы аплета изменяющие его содержимое затем метод который по этим данным перерисовывают аплет. В рабочем примере у меня панель и разные компоненты типа текстлейбл. Здесь сделал аналогично но не работает. Методы аплета вызыватся точно но непонятно почему так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2016, 22:30 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, У меня появилась догадка что не так.нужно понять что внутри инвокер вызывается после каждого вызова метода в скрипте или в конце скрипта один раз? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2016, 23:08 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
Догадка оказалась не разгадка. Все еще нужно помощь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 09:30 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
nasgul, Пропишите на настройках плагина параметры для удаленной отладки http://docs.oracle.com/javase/1.5.0/docs/guide/plugin/developer_guide/debugger.html Подключитесь дебаггером и посмотрите что происходит. Разбираться в ваших кусках кода без подсветки и с сумашедшим соглашением об именовании никому не интересно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 09:52 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, хорошо я попробую. Но если кратко: <script> { app.addmenu('1','0','подменю','1',1); app.menu_init(0); } </script> не работает. <script> { app.menu_init(1); -- в этом случае внутри этого метода присутствует app.addmenu('1','0','подменю','1',1); } </script> работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 10:36 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
nasgul, пока вас тут не застрелили Код: javascript 1. 2. 3. 4. 5. 6. не работает. Код: javascript 1. 2. 3. 4. 5. Используйте тэг SRC ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 11:01 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Как это "появишно" дебаггер не запускается ругается shmenBase_attach failed, как правильно указать параметр -Xrunjdwp можно п о ссылке http://java.sun.com/j2se/1.4.2/docs/guide/jpda/conninv.html, ссылка 404. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 11:02 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
nasgulКак это "появишно" дебаггер не запускается ругается shmenBase_attach failed, как правильно указать параметр -Xrunjdwp можно п о ссылке http://java.sun.com/j2se/1.4.2/docs/guide/jpda/conninv.html, ссылка 404. Не надо гнать на яву. Это тупой оракл задолбал переделывать сайты. http://docs.oracle.com/javase/7/docs/technotes/guides/jpda/conninv.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 11:05 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
SQL2008, Где? Как я должен был это узнать? Что и откуда мне еще нужно узнать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 11:05 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
BlazkowicznasgulКак это "появишно" дебаггер не запускается ругается shmenBase_attach failed, как правильно указать параметр -Xrunjdwp можно п о ссылке http://java.sun.com/j2se/1.4.2/docs/guide/jpda/conninv.html, ссылка 404. Не надо гнать на яву. Это тупой оракл задолбал переделывать сайты. http://docs.oracle.com/javase/7/docs/technotes/guides/jpda/conninv.html Я и не собирался. Ведь именно эту технологию я выбрал среди прочих. Но мое общение с ней складывается с постоянных таких нежданчиков. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 11:07 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
nasgulГде? Как я должен был это узнать? Что и откуда мне еще нужно узнать? http://www.sql.ru/forum/rules.aspx ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 11:08 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
nasgulЯ и не собирался. Ведь именно эту технологию я выбрал среди прочих. Но мое общение с ней складывается с постоянных таких нежданчиков. Очень странный выбор. Апплеты практически мертвая технология. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 11:09 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, А какие варианты? Вся бизнес логика на sql-сервере. На нем же лежат графические описания форм. Сервлет мне возвращает вызов апплета и скрипт заполняющий его данными. С одиночной формой редактирования данных все прошло на ура, и список то же более не менее приличный.. Я думал и тут получится. А больше мне ничего и не надо. Предложите лучше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 11:20 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
nasgulА какие варианты? Предложите лучше. DHTML ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 11:22 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Для меня это выглядит очень размыто. С явой все понятно. Я следую парадигме существующего приложения и мне нужно всего лишь три графический компоненты: uo_menu,uo_list,uo_edit. Будучи написаны однажды не нуждающиеся в существенных изменениях. Нужен очень тонкий графический интерфейс и больше ничего. Наша система в графическом смысле не меняется уже много лет. JMenu, JPanel, Jtabel - вижу я. И две из них у меня в первейшем приближении готовы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 11:30 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, не получается дебаггер запустить. Но я методом проб и ошибок выяснил, что проблема с параметрами вызываемых методов. app.addmenu(); - OK app.addmenu('1'); - OK app.addmenu('1','0','подменю','1',1); - не работает из скрипта, но работает внутри апплета. Неужели ничего такого не было? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 12:09 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
nasgulне работает Ваше "не работает" не достаточно конкретно. Не вызывается метод апплета? Вызывается, но как-то не так? Есть ли ошибки в консоли браузера? Есть ли ошибки в консоли апплета? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 13:12 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Отсутствует результат. В меню должен появиться пункт(ы) меню. Никаких ошибок нет. Я кстати глянул тот "работающий" пример с которого я делал этот, так вот там первый параметр стринговый <scr> app.addDWobject("out_no ",1,231,60,231,21); app.addDWobject("who_get ",1,231,86,457,21); app.addDWobject("document_form_id_s ",1,231,246,457,21); app.addDWobject("folder_id_s ",1,231,273,457,21); app.addDWobject("brok_name ",1,231,166,457,21); app.addDWobject("corr_short_name ",1,231,220,457,21); app.addDWobject("who_put ",1,231,113,457,21); app.addDWobject("brok_code ",1,231,140,426,21); app.addDWobject("corr_code ",1,231,193,426,21); </scr> и я искренне думал, что проблема новая. Но она была бы и там. Выходит есть какое-то ограничение на параметры. В принципе я могу и изгальнутся, и стринги склеить а потом распарсить. Но как-то это.... Да и неплохо бы узнать, а где еще соломки подстелить. P.S. гуглю эту тему ничего нет, у всех все простенько. Может это я пытаюсь выше головы прыгнуть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 13:21 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
nasgulОтсутствует результат. Очень сложно вам помочь, когда на каждый вопрос у вас ответ в стиле "программа не работает". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 13:24 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, В меню должен появиться пункт(ы) меню.К компоненте JMenu методом add привяжется еще одна компонента JMenu. Впрочем проблема еще более локализована, если второй параметр вызываемого метода апплета не string, то метод не отрабатывает (см. выше). Version 1.5.0 (build 1.5.0_22-b03) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 13:40 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
Все интернеты облазил, нигде никакого упоминания о подобном ограничении. Более того создается такое впечатление что вообще больше одного параметра и не должно передаваться. Я конечно справлюсь, но ужас ужас. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 15:41 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, В меню должен появиться пункт(ы) меню.К компоненте JMenu методом add привяжется еще одна компонента JMenu. Впрочем проблема еще более локализована, если второй параметр вызываемого метода апплета не string, то метод не отрабатывает (см. выше). Version 1.5.0 (build 1.5.0_22-b03) Ошибся, читать правильно Впрочем проблема еще более локализована, если второй параметр вызываемого метода апплета string, то метод не отрабатывает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 15:50 |
|
||
|
Вызов метода апплета из JSP.
|
|||
|---|---|---|---|
|
#18+
nasgulВпрочем проблема еще более локализована, если второй параметр вызываемого метода апплета string, то метод не отрабатывает. Метод "не отрабатывает" и метод не запускается в принципе, немного разные вещи по-моему. Если JS не может вызвать метод апплета, то должна быть какая-то ошибка в консоли браузера. Или, возможно, какой-нибудь "No such method" в консоли плагина. Попробуйте настроить более детальное логирование: http://www.cs.mun.ca/java-api-1.5/guide/deployment/deployment-guide/tracing_logging.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 15:58 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=82&tid=2123485]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
166ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
| others: | 230ms |
| total: | 496ms |

| 0 / 0 |
