|
|
|
Создание Java-апплета с использованием сторонних библиотек - быстро "въехать" для новичка
|
|||
|---|---|---|---|
|
#18+
...для новичка на Джаве. 1. У меня есть библиотека dll, написанная пока непонятно на каком языке, но под Вин32. Потом есть файл jar с классами на Джаве, который, как я понимаю, вызывает функции из этой библиотеки. Можно ли запихать эту библиотеку, классы из jar и свой код на Джаве в один Джава-апплет, поместить этот апплет на сайт и чтобы этот апплет запустился на машине клиента? Не надо ли будет разворачивать эту dll в директорию, где ОС хранит все остальные динамические библиотеки, и делать прочие лишние движения? В идеале, клиент должен только установить себе Джава-машину и запустить с сайта апплет, нажав на кнопочку. 2. Может ли Джава-апплет запуститься по нажатию ХТМЛ-кнопки и отправить данные через ХТМЛ-форму обратно на сервер? Или для него нужно (или проще?) сделать взаимодействие с сервером через службу, куда он будет отсылать данные? Если да, то дайте, пожалуйста, ссылку на руководство, как создать такой апплет. 3. При этом соединение будет шифрованное (HTTPS, SSL). Как с ними Джава-апплеты работают - нормально? Или надо специальные настройки в апплете делать? Если да, то какие и как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2012, 11:54:01 |
|
||
|
Создание Java-апплета с использованием сторонних библиотек - быстро "въехать" для новичка
|
|||
|---|---|---|---|
|
#18+
user73201. У меня есть библиотека dll, написанная пока непонятно на каком языке, но под Вин32. Потом есть файл jar с классами на Джаве, который, как я понимаю, вызывает функции из этой библиотеки. Можно ли запихать эту библиотеку, классы из jar и свой код на Джаве в один Джава-апплет, поместить этот апплет на сайт и чтобы этот апплет запустился на машине клиента? Не надо ли будет разворачивать эту dll в директорию, где ОС хранит все остальные динамические библиотеки, и делать прочие лишние движения? В идеале, клиент должен только установить себе Джава-машину и запустить с сайта апплет, нажав на кнопочку. Это очень геморно. Во-первых внутри jar DLL держать не выйдет. ОС его там не найдёт. http://stackoverflow.com/questions/1713403/calling-a-dll-from-an-applet-via-jni В последний версиях Java вроде апплеты мержили с JNLP, поэтому там должен быть доступен тэг для указания dll. user73202. Может ли Джава-апплет запуститься по нажатию ХТМЛ-кнопки и отправить данные через ХТМЛ-форму обратно на сервер? Или для него нужно (или проще?) сделать взаимодействие с сервером через службу, куда он будет отсылать данные? Если да, то дайте, пожалуйста, ссылку на руководство, как создать такой апплет. Вопрос у вас запутаный. Апплет может взаимодействовать с JavaScript страницы на которой находится. Так же он может отправлять запросы на сервер, с которого был загружен. Что такое "взаимодействие с сервером через службу" я не очень понял. user73203. При этом соединение будет шифрованное (HTTPS, SSL). Как с ними Джава-апплеты работают - нормально? Или надо специальные настройки в апплете делать? Если да, то какие и как? http://java.sun.com/products/plugin/1.3/docs/https.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2012, 12:11:32 |
|
||
|
Создание Java-апплета с использованием сторонних библиотек - быстро "въехать" для новичка
|
|||
|---|---|---|---|
|
#18+
BlazkowiczВо-первых внутри jar DLL держать не выйдет. XADisk , Jansi . У обоих - dll внутри jar. Грузят они их "прям из jar" или сбрасывают во временный каталог и грузят оттуда - вопрос отдельный. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2012, 13:31:18 |
|
||
|
Создание Java-апплета с использованием сторонних библиотек - быстро "въехать" для новичка
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovГрузят они их "прям из jar" или сбрасывают во временный каталог и грузят оттуда - вопрос отдельный. Ну, то есть вместо того чтобы разъяснить нам несведущим как оно сделано, вы тут пишете что оно сделано "как-то". :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2012, 13:33:46 |
|
||
|
Создание Java-апплета с использованием сторонних библиотек - быстро "въехать" для новичка
|
|||
|---|---|---|---|
|
#18+
BlazkowiczНу, то есть вместо того чтобы разъяснить нам несведущим как оно сделано, вы тут пишете что оно сделано "как-то". :)"Коровий хвост растёт книзу. Я не знаю, почему это так, я просто констатирую факт" (Дж. Лондон, "Конец сказки"). Вы сделали утверждение, я привёл пример, опровергающий, вообще говоря, ваше утверждение. Как всё это связано с (моим) нежеланием смотреть сорцы проектов? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2012, 13:44:19 |
|
||
|
Создание Java-апплета с использованием сторонних библиотек - быстро "въехать" для новичка
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovВы сделали утверждение, я привёл пример, опровергающий, вообще говоря, ваше утверждение. Как всё это связано с (моим) нежеланием смотреть сорцы проектов? Вы не верно трактовали моё утверждение. Если бы я написал "внутри jar DLL поместить не выйдет", тогда вы бы меня верно подправили. Я же намеренно использовал глагол " держать ", потому как самоизъятие DDL из jar в отдельный файл, всё ещё рассматриваю как вариант. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2012, 13:54:52 |
|
||
|
Создание Java-апплета с использованием сторонних библиотек - быстро "въехать" для новичка
|
|||
|---|---|---|---|
|
#18+
BlazkowiczЯ же намеренно использовал глагол " держать "И? Масса продуктов "дропает" из exe-файла драйвер и устанавливает его на временной или постоянной основе. Т.е. практика "извлечь чего-то из себя" - вполне массовая. На RSDN была статья про написание собственного загрузчика dll - автору хотелось обойтись единственным exe-файлом, а не парой exe+dll. P.S. А если извлечение во временный файл делают потроха (ява-)рантайма? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2012, 16:51:46 |
|
||
|
Создание Java-апплета с использованием сторонних библиотек - быстро "въехать" для новичка
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovP.S. А если извлечение во временный файл делают потроха (ява-)рантайма? jnlp + Java Plug-in, AFAIK, dll отдельно загружают. Больше некому. Всё остальное уже третьесторонние библиотеки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2012, 16:59:44 |
|
||
|
Создание Java-апплета с использованием сторонних библиотек - быстро "въехать" для новичка
|
|||
|---|---|---|---|
|
#18+
А, не. Я гоню. Как раз JNLP берет DLL внутри архива http://docs.oracle.com/javase/1.4.2/docs/guide/jws/developersguide/syntax.html Т.е. апплет на JNLP перевести и нужную версию Java и должно наступить счастье, как я и написал в первом ответе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2012, 17:03:25 |
|
||
|
Создание Java-апплета с использованием сторонних библиотек - быстро "въехать" для новичка
|
|||
|---|---|---|---|
|
#18+
Узнал, что ДЛЛ написана на Си. Как я понял по вопросу 1, на "простой" Джаве (не "Веб старт") лучший и простейший вариант - грузить ДЛЛ в jar-архиве, а затем на машине клиента его где-нибудь (например, по пути системной переменной, отвечающей за место хранения ДЛЛек в ОС; или в какую-нибудь временную папку, путь которой, как я понял, лучше "зашивать" в апплет - тогда проблемы могут быть, если у клиента нет указанного диска или невозможно создать временную папку по указанному пути) разворачивать и использовать ДЛЛ оттуда. Да? "Веб старт" мне показался подозрительным, т. к. в Википедии написано, что напрямую с браузером эти приложения не связаны - мне будет труднее отправлять своему сайту данные, полученные этим приложением? Т. е. если "апплет может взаимодействовать с джава-скрипт страницы", то как "Веб старт"-приложение будет это делать - непонятно. Blazkowiczuser73202. Может ли Джава-апплет запуститься по нажатию ХТМЛ-кнопки и отправить данные через ХТМЛ-форму обратно на сервер? Или для него нужно (или проще?) сделать взаимодействие с сервером через службу, куда он будет отсылать данные? Если да, то дайте, пожалуйста, ссылку на руководство, как создать такой апплет. Вопрос у вас запутаный. Апплет может взаимодействовать с JavaScript страницы на которой находится. Так же он может отправлять запросы на сервер, с которого был загружен. Апплет будет только доставать нужную информацию с УБС-ключа и отправлять её сайту на моём сервере. Поэтому мне было бы удобнее и проще, если бы это было что-то вроде запроса POST с заполнением формы. Хотя, можно и просто в параметрах строки запроса отправлять, но боюсь, что скажется ограничение длины URL. Вобщем, неужели придётся формировать HTTP-форму с помощью джава-скрипта, заполнять её им же и только тогда уже отправлять её серверу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2012, 10:37:18 |
|
||
|
Создание Java-апплета с использованием сторонних библиотек - быстро "въехать" для новичка
|
|||
|---|---|---|---|
|
#18+
user7320Узнал, что ДЛЛ написана на Си. <irony>Это очень важно. Вот была бы на Delphi, всё бы пришлось делать по другому.</irony> user7320Как я понял по вопросу 1, на "простой" Джаве (не "Веб старт") лучший и простейший вариант - грузить ДЛЛ в jar-архиве, а затем на машине клиента его где-нибудь (например, по пути системной переменной, отвечающей за место хранения ДЛЛек в ОС; или в какую-нибудь временную папку, путь которой, как я понял, лучше "зашивать" в апплет - тогда проблемы могут быть, если у клиента нет указанного диска или невозможно создать временную папку по указанному пути) разворачивать и использовать ДЛЛ оттуда. Да? Есть куча готовых решений, которые всё это уже делают. Например Jansi, про который писали выше, использует hawtjni - почитайте доку по нему. user7320"Веб старт" мне показался подозрительным, т. к. в Википедии написано, что напрямую с браузером эти приложения не связаны - мне будет труднее отправлять своему сайту данные, полученные этим приложением? Т. е. если "апплет может взаимодействовать с джава-скрипт страницы", то как "Веб старт"-приложение будет это делать - непонятно. <irony>Википедия, конечно же, главный и наиболее полноценный мануал по Java.</irony> Если я как-то непонятно написал выше. То повторяю: если можно привязаться к Java 7, то в ней апплеты работают через JNLP, т.е. вы получате все фичи WebStart, но в апплете, который работает в браузере. В Википедии, наверное, про такое не пишут? user7320Апплет будет только доставать нужную информацию с УБС-ключа и отправлять её сайту на моём сервере. Поэтому мне было бы удобнее и проще, если бы это было что-то вроде запроса POST с заполнением формы. Хотя, можно и просто в параметрах строки запроса отправлять, но боюсь, что скажется ограничение длины URL. Вобщем, неужели придётся формировать HTTP-форму с помощью джава-скрипта, заполнять её им же и только тогда уже отправлять её серверу? У вас каша в голове по поводу стека протоколов. Не существует никаких HTTP-форм. Существует HTML-форма и HTTP POST запрос. Последний можно сформировать даже на pure Java через URL/HttpUrlConnection. Но проще через Apache Commons HTTP Client. Хотя стоит ли отдельную либу тащить в апплет, вопрос открытый. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2012, 10:59:47 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=37882141&tid=2131346]: |
0ms |
get settings: |
11ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
39ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
64ms |
get tp. blocked users: |
2ms |
| others: | 324ms |
| total: | 484ms |

| 0 / 0 |
