запросить базу данных оракула через Java-апплет - PullRequest
2 голосов
/ 10 января 2011

На самом деле, я пишу плагин для Java-приложения, которое поставляется в двух вариантах: 1.) как исполняемый файл и 2.) может быть запущен с веб-страницы как апплет.

В какой-то момент мне понадобилась настраиваемая форма, которая отображает различные данные из базы данных оракула. Я создаю эту форму и класс, который выполняет запрос jdbc.

Теперь, когда дело доходит до исполняемого файла, форма корректно всплывает с ожидаемыми результатами, но когда я пытаюсь вызвать ее из апплета, она запускается с пустыми полями и без ошибок.

Единственное, о чем я могу думать, это то, что из-за асинхронного характера сети форма всплывает, прежде чем запрос вернет результат.

Если это правда, есть ли обходной путь?

1 Ответ

2 голосов
/ 10 января 2011

Я считаю, что вы просто ловите исключения и поэтому не видите их. Или просто не знаю, где их искать. Вы открыли консоль апплета? Я верю, что вы найдете там какое-то исключение.

Апплет не отличается от приложения. Апплет просто имеет ограничения безопасности. Он не может выполнить TCP-соединение с сервером, отличным от того, с которого он был загружен. И важно: проверка безопасности довольно глупая. Он основан на сравнении строк. Он просто сравнивает имена хостов базы апплета и имя хоста, к которому вы хотите подключиться. Если, например, ваше имя хоста - myhost.mycompany.com, а его IP-адрес - 200.201.202.203, вы должны использовать либо DNS-имя, либо IP-адрес в обоих местах, даже если пинг DNS-имени возвращает ваш IP-адрес. Проверьте это, и я надеюсь, что все будет работать.

Кстати, вы, наверное, знаете, что используете «старый», «устаревший» дизайн? Это начало 90-х дизайн. Люди перешли на N-уровневую архитектуру ~ 12 лет назад, поэтому, чтобы улучшить свое решение, вы должны реализовать доступ к БД на стороне сервера и общаться с сервером по какому-то протоколу, например. API остальных.

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