Проблема с использованием JApplet, который обращается к базе данных в веб-приложении с использованием Netbeans 6.5.1 - PullRequest
1 голос
/ 01 мая 2009

Я создал JApplet с использованием Netbeans 6.5.1, который обращается к базе данных. Когда программа запускается сама по себе, она работает отлично. Проблема заключается в том, что при попытке перевести его в онлайн с помощью веб-приложения в Netbeans оно не будет обращаться к базе данных. Кто-то сказал мне, что проблема в том, что безопасность Java не позволит вам сделать это. Это правильно? Как мне решить эту проблему? Спасибо.

Ответы [ 2 ]

1 голос
/ 02 мая 2009

Как уже упоминалось, неподписанный апплет может устанавливать сетевое соединение только с тем хостом, с которого был создан апплет. Однако, если база данных размещена на сервере, отличном от исходного апплета, вам придется подписать апплет. Если приложение не для производственного использования, вы можете самостоятельно подписать апплет (не подходит для производственного использования, когда подпись должна выполняться доверенным центром сертификации. Центры сертификации обычно взимают плату за услугу проверки учетных данных своих клиентов. ) Однако для тестирования и демонстрации вы можете создать самозаверяющий сертификат. При наличии самозаверяющих сертификатов браузер отображает предупреждение для пользователя, в котором говорится, что информация, представленная в самозаверяющем сертификате, не была проверена доверенной третьей стороной (центром сертификации).

Для самостоятельной подписи апплета посмотрите следующие ссылки:

http://java.sun.com/developer/onlineTraining/Programming/JDCBook/signed.html

http://www -personal.umich.edu / ~ lsiden / учебники / знаково-апплет / зарегистрированны applet.html

Другие вещи, о которых следует помнить, это типы используемых драйверов JDBC. Драйверы типа 1 и 2 не подходят для использования в апплете из-за их зависимости от собственного двоичного кода. Тип-3 и Тип-4 - это те, которые вы должны использовать для подключения к базе данных из апплета.

Лучшее решение - НЕ устанавливать соединение с базой данных из апплета (если это возможно), а вместо этого использовать приложение на стороне сервера для соединения с базой данных от имени апплета.

0 голосов
/ 01 мая 2009

, как указал Клинт, апплету разрешено подключаться только к исходному серверу. Чтобы обойти это, вы можете подписать свой апплет сертификатом от корневого центра, но сертификаты стоят 200-400 $ / год.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...