Версия для печати
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум на Исходниках.RU > Java > Opera и сокеты


Автор: PaG 05.05.02, 18:42
Проблема в том, что я создал апплет, где использую сокетное соединение, но Опера пишет Applet crashed, в то время как експлорер выполняет его без каких либо жалоб.
Я испоьзую ждк 1.1.8, а в Опере кажется 1.3.1 Может в разнице версий глюк, хотя у експлорера моего вообще 1.4.1 кажется... В общем заранее спасибо, если поможите.

Автор: tatar_0x4E 06.05.02, 07:42
В эксплорере, если не ошибаюсь, 1.1.5 и больше не будет так как MS отказались от поддержки Java в своих продуктах. Так или иначе, я бы стал искать проблему в системе безопасности броузера. У тебя апплет с расширенными полномочиями или работает в песочнице? Он пытается лезть на тот сервер откуда загружен (если работает в песочнице это все что он может с сокетами) или на другой? Если апплет обычный не подписанный и пытается залезть на свой сервер то скорее всего глюк в VM Opera или в твоем апплете но к сокетам отношения не имеющий.

Автор: PaG 06.05.02, 08:58
Апплет мой коннектится к себе на серв (откуда был скачен). Только объясни пожалуйста понятия работы в песочнице и подписаный апплет. Ну в песочнице понятно в общем-то... Я ещё проверял Оперу на yahoo, у них на играх, там тоже ява апплеты и тоже не работают под Оперой. Да, и что касается глюка в апплете - исключено - я убераю строки коннекста и Опера грузит апплет без каких-либо глюков.

Автор: tatar_0x4E 07.05.02, 08:50
По умолчанию скачанный апплет рпботает в так называемой "песочнице". Это очень урезанная в целях безопасности виртуальная машина броузера. Такой апплет не может делать практически ничего - только рисует картинки и может открыть соединение на сервер с которого был загружен (и только).

Есть возможность вылезти из песочницы. Для этого надо получить сертификат с цифровой подписью у ВериСайна или у другого CA. Тогда юзер при загрузке апплета будет видеть сообщение типа: код подписан Васей Пупкиным! Вы доверяете Васе? Йес/Ноу. Если он нажмет Йес то апплет сможет делать практически все - шарить по харду, коннектиться куда хошь, юзать Корбу и запускать вирусы :) Если Ноу, то загрузка прервется. Проблема в том что для каждого броузера своя технология подписи, то есть апплет подписанный для эксплорера не пойдет на Нетскейп и наоборот. Есть способы обойти и это.

Кроме того есть возможность задействовать механизмы инсталляции на стороне клиента, то есть апплет инсталлится на машину клиента и больше не скачивается (пока не выйдет новая версия). Дико удобно. В IE этим занимается Java Package Manager. Для него нужно упаковать апплеты в CAB файлы с помошью dubuild.exe а потом подписать их. Стандартные JAR файлы JPM не понимает. Если хочешь с ними работать надо юзать сановский Java Plug-In. Жуткое г... Между нами :) Выполняет те же функции что и JPM да таскает за собой Swing. Нестабильная жуткая муля с корявым деплойментом. Не рекомендую.

Автор: PaG 08.05.02, 14:07
А ты не подскажешь где можно получить сертификат с электронной подписью, если это вообще возможно обычному разработчику?

Автор: PaG 08.05.02, 14:09
электронной... цифровой конечно :).....

Автор: tatar_0x4E 09.05.02, 08:32
http://www.verisign.com
https://www.thawte.com/

Они выдают сертификаты для индивидуальных разработчиков. Они дешевле чем для компаний. Только имей в виду что сертификат
а) небесплатный
б) имеет срок годности (выдается на 3-6 месяцев, год, два)

Это плохие новости. Теперь хорошие :)

а) Можно сгенерить тестовый сертификат и использовать его для тестирования и в интранете. Если просто хочешь попробовать - идеальный выход, а если делаешь работу на заказ, просто включаешь стоимость сертификата в стоимость заказа (а вообще этим должен заниматься не ты, а админ заказчика, ты просто должен это описать в Adminuistration Guide для твоей системы).

б) Если пишешь апплеты для интранета, можно запустить свой СА (Certificate Authority, то же самое что ВериСайн по существу :) ) в интранете и сделать свою иерархию доверия с подписями. Тогда все машины интранета будут доверять сертификатам твоего СА так же как и ВериСайновским. СА входит в поставку Win NT Server, если мелкомягкие не врут (сам не пробовал его оживить).


Powered by Invision Power Board (https://www.invisionboard.com)
© Invision Power Services (https://www.invisionpower.com)