С Новым годом! Форум программистов, компьютерный форум, киберфорум
Java: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
0 / 0 / 0
Регистрация: 21.12.2009
Сообщений: 25

Настройка доступа к БД в апплете

20.07.2012, 09:58. Показов 2380. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В общем:
- Создал проект в NetBeans, добавил класс-апплет
- оформил его, кинул jTable и т.п.
- описал функционал
Вообщем все работает, апплет запускаю у себя и через вьювер и через веб-страницу, он делает запрос к удаленной БД и возвращает результат в jTable.

Далее, есть виртуалка с серверной виндой. Там стоит iis. Вобщем задеплоил туда проект и обращаюсь от себя. Сама страница запускается, апплет загружается, но вот данные из БД не подгружаются.
В консоли пишет.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
Java Plug-in 1.6.0_33
Using JRE version 1.6.0_33-b05 Java HotSpot(TM) Client VM
User home directory = C:\Users\Uasya
----------------------------------------------------
c:   clear console window
f:   finalize objects on finalization queue
g:   garbage collect
h:   display this help message
l:   dump classloader list
m:   print memory usage
o:   trigger logging
q:   hide console
r:   reload policy configuration
s:   dump system and deployment properties
t:   dump thread list
v:   dump thread stack
x:   clear classloader cache
0-5: set trace level to <n>
----------------------------------------------------
 
 
20.07.2012 9:50:15 oracle.jdbc.driver.OracleDriver registerMBeans
WARNING: Error while registering Oracle JDBC Diagnosability MBean.
java.security.AccessControlException: access denied (javax.management.MBeanServerPermission createMBeanServer)
                at java.security.AccessControlContext.checkPermission(Unknown Source)
                at java.security.AccessController.checkPermission(Unknown Source)
                at java.lang.SecurityManager.checkPermission(Unknown Source)
                at java.lang.management.ManagementFactory.getPlatformMBeanServer(Unknown Source)
                at oracle.jdbc.driver.OracleDriver.registerMBeans(OracleDriver.java:320)
                at oracle.jdbc.driver.OracleDriver$1.run(OracleDriver.java:199)
                at java.security.AccessController.doPrivileged(Native Method)
                at oracle.jdbc.driver.OracleDriver.<clinit>(OracleDriver.java:195)
                at oracle.jdbc.pool.OracleDataSource.<clinit>(OracleDataSource.java:95)
                at Pkg1.NewApp.ConnectToOracle(NewApp.java:320)
                at Pkg1.NewApp.access$100(NewApp.java:27)
                at Pkg1.NewApp$1.run(NewApp.java:36)
                at java.awt.event.InvocationEvent.dispatch(Unknown Source)
                at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
                at java.awt.EventQueue.access$000(Unknown Source)
                at java.awt.EventQueue$1.run(Unknown Source)
                at java.awt.EventQueue$1.run(Unknown Source)
                at java.security.AccessController.doPrivileged(Native Method)
                at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
                at java.awt.EventQueue.dispatchEvent(Unknown Source)
                at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
                at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
                at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
                at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
                at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
                at java.awt.EventDispatchThread.run(Unknown Source)
java.lang.reflect.InvocationTargetException
                at java.awt.EventQueue.invokeAndWait(Unknown Source)
                at Pkg1.NewApp.init(NewApp.java:32)
                at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
                at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ExceptionInInitializerError
                at Pkg1.NewApp.ConnectToOracle(NewApp.java:320)
                at Pkg1.NewApp.access$100(NewApp.java:27)
                at Pkg1.NewApp$1.run(NewApp.java:36)
                at java.awt.event.InvocationEvent.dispatch(Unknown Source)
                at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
                at java.awt.EventQueue.access$000(Unknown Source)
                at java.awt.EventQueue$1.run(Unknown Source)
                at java.awt.EventQueue$1.run(Unknown Source)
                at java.security.AccessController.doPrivileged(Native Method)
                at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
                at java.awt.EventQueue.dispatchEvent(Unknown Source)
                at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
                at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
                at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
                at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
                at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
                at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.security.AccessControlException: access denied (java.util.PropertyPermission oracle.jdbc.FastConnectionFailover read)
                at java.security.AccessControlContext.checkPermission(Unknown Source)
                at java.security.AccessController.checkPermission(Unknown Source)
                at java.lang.SecurityManager.checkPermission(Unknown Source)
                at java.lang.SecurityManager.checkPropertyAccess(Unknown Source)
                at java.lang.System.getProperty(Unknown Source)
                at oracle.jdbc.driver.PhysicalConnection$1.run(PhysicalConnection.java:3169)
                at java.security.AccessController.doPrivileged(Native Method)
                at oracle.jdbc.driver.PhysicalConnection.getSystemProperty(PhysicalConnection.java:3165)
                at oracle.jdbc.driver.PhysicalConnection.getSystemPropertyFastConnectionFailover(PhysicalConnection.java:3145)
                at oracle.jdbc.driver.OracleDriver.getSystemPropertyFastConnectionFailover(OracleDriver.java:761)
                at oracle.jdbc.pool.OracleDataSource.<clinit>(OracleDataSource.java:95)
                ... 17 more
Многое перерыл в инете, но так и не нашел ответа.
На сервак устанавливал jre6, перезагружал, вписывал AllPermission в Java.Police в раздел Grant
Может что то еще нужно устанавливать? Java сервер я так понимаю не нужен для апплетов.
Вообщем х.з. До этого устанавливал на Linux X86 такая же конитель.
Помогите уже кто нибудь, никак начальству раб. вариант показать не могу.
З.Ы. База Oracle. Когда проект делал скачивал драйвер с их сайта. Сейчас он лежит в архиве проекта *.jar
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.07.2012, 09:58
Ответы с готовыми решениями:

Настройка доступа
Снова я прошу у вас помощи! Ситуация есть определенная процедура называется обмен , так вот нужно перекидывать каждый раз файл из...

Настройка доступа
Добрый день. Есть БД sql server, есть приложение для взаимодействия с БД. Нужно реализовать авторизацию в приложении, причем разные...

Настройка доступа
Подобная темка была, но спрошу для своего случая. Есть две гостиницы, находятся в разных регионах, туда установим 1с 8.2, (с конфой еще не...

5
 Аватар для Skipy
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
20.07.2012, 11:15
Цитата Сообщение от Andronovman Посмотреть сообщение
На сервак устанавливал jre6, перезагружал, вписывал AllPermission в Java.Police в раздел Grant
Ну, во-первых, не Java.Police, а java.policy. Во-вторых, не Grant, а grant. http://docs.oracle.com/javase/... Files.html

В третьих, прямой доступ к базе из апплета - ОЧЕНЬ плохая идея. Работать будет только в локальной сети и то с оговорками и проблемами.
1
0 / 0 / 0
Регистрация: 21.12.2009
Сообщений: 25
20.07.2012, 11:32  [ТС]
Цитата Сообщение от Skipy Посмотреть сообщение
В третьих, прямой доступ к базе из апплета - ОЧЕНЬ плохая идея. Работать будет только в локальной сети и то с оговорками и проблемами.
Ну это понятно что плохая идея, но я на данном этапе только учусь и паралельно предостовляю результаты своих обучений под отчет начальству. Я понимаю что для этого нужно делать службы, я перехожу с Майкрософт (Сильверлайт), там тоже по по такому принципу. Но мне бы хотя бы найти причину, почему обращение к БД заканчивается фейлом.
А по поводу 1 и 2 пункта, я по памяти писал, так то с синтаксисом нет проблем.
Так что же мне нужно сделать???
0
 Аватар для Skipy
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
20.07.2012, 12:00
Цитата Сообщение от Andronovman Посмотреть сообщение
Так что же мне нужно сделать???
Епсли Вы всё делали правильно - оно должно работать. Проблема в том, что менеджер безопасности не дает коду, формально относящемуся к апплету, создать MBeanServer. Значит, AllPermission не срабатывает по какой-то причине. Возможно, java.policy лежит не там, в статье, которую я привел, фигурирует несколько мест, где он может быть.
1
0 / 0 / 0
Регистрация: 21.12.2009
Сообщений: 25
20.07.2012, 12:49  [ТС]
Цитата Сообщение от Skipy Посмотреть сообщение
Епсли Вы всё делали правильно - оно должно работать. Проблема в том, что менеджер безопасности не дает коду, формально относящемуся к апплету, создать MBeanServer. Значит, AllPermission не срабатывает по какой-то причине. Возможно, java.policy лежит не там, в статье, которую я привел, фигурирует несколько мест, где он может быть.
Вообще после установки я ничего не менял, т.е. файл лежит в стандартном месте "C:\Program Files\Java\jre6\lib\security"
0
0 / 0 / 0
Регистрация: 21.12.2009
Сообщений: 25
24.07.2012, 08:33  [ТС]
Блин, ну ничего не получается!!!
Я уже замучался, не могу понять в чем дело, либо в настройке политики, либо в каких то не достающих компонентов типа драйвера или т.п.
Повторюсь еще раз.
На своей машине (Windows 7) установил NetBeans 6.8, еще стоит oracle g11 client, т.к. работаем с удаленной БД, так же JDk и JRE. Сделал апплет, с подключением к БД, выборкой данных и отображением в jTable. Через Viewer работает, запускаю через открытие html-странички, тоже работает, засовываю все это дело на виртуалку с веб-сервером и jre, обращаюсь от себя к вирт. апплет открывается, и данные подтягиваются, НО если обращаться с другой машины, где не разрабатывался этот апплет, то апплет открывается но данные из БД не тянутся. В консоль выводит:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
Java Plug-in 1.6.0_33
Using JRE version 1.6.0_33-b05 Java HotSpot(TM) Client VM
User home directory = C:\Users\Uasya
----------------------------------------------------
c:   clear console window
f:   finalize objects on finalization queue
g:   garbage collect
h:   display this help message
l:   dump classloader list
m:   print memory usage
o:   trigger logging
q:   hide console
r:   reload policy configuration
s:   dump system and deployment properties
t:   dump thread list
v:   dump thread stack
x:   clear classloader cache
0-5: set trace level to <n>
----------------------------------------------------
 
 
20.07.2012 9:50:15 oracle.jdbc.driver.OracleDriver registerMBeans
WARNING: Error while registering Oracle JDBC Diagnosability MBean.
java.security.AccessControlException: access denied (javax.management.MBeanServerPermission createMBeanServer)
                at java.security.AccessControlContext.checkPermission(Unknown Source)
                at java.security.AccessController.checkPermission(Unknown Source)
                at java.lang.SecurityManager.checkPermission(Unknown Source)
                at java.lang.management.ManagementFactory.getPlatformMBeanServer(Unknown Source)
                at oracle.jdbc.driver.OracleDriver.registerMBeans(OracleDriver.java:320)
                at oracle.jdbc.driver.OracleDriver$1.run(OracleDriver.java:199)
                at java.security.AccessController.doPrivileged(Native Method)
                at oracle.jdbc.driver.OracleDriver.<clinit>(OracleDriver.java:195)
                at oracle.jdbc.pool.OracleDataSource.<clinit>(OracleDataSource.java:95)
                at Pkg1.NewApp.ConnectToOracle(NewApp.java:320)
                at Pkg1.NewApp.access$100(NewApp.java:27)
                at Pkg1.NewApp$1.run(NewApp.java:36)
                at java.awt.event.InvocationEvent.dispatch(Unknown Source)
                at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
                at java.awt.EventQueue.access$000(Unknown Source)
                at java.awt.EventQueue$1.run(Unknown Source)
                at java.awt.EventQueue$1.run(Unknown Source)
                at java.security.AccessController.doPrivileged(Native Method)
                at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
                at java.awt.EventQueue.dispatchEvent(Unknown Source)
                at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
                at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
                at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
                at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
                at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
                at java.awt.EventDispatchThread.run(Unknown Source)
java.lang.reflect.InvocationTargetException
                at java.awt.EventQueue.invokeAndWait(Unknown Source)
                at Pkg1.NewApp.init(NewApp.java:32)
                at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
                at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ExceptionInInitializerError
                at Pkg1.NewApp.ConnectToOracle(NewApp.java:320)
                at Pkg1.NewApp.access$100(NewApp.java:27)
                at Pkg1.NewApp$1.run(NewApp.java:36)
                at java.awt.event.InvocationEvent.dispatch(Unknown Source)
                at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
                at java.awt.EventQueue.access$000(Unknown Source)
                at java.awt.EventQueue$1.run(Unknown Source)
                at java.awt.EventQueue$1.run(Unknown Source)
                at java.security.AccessController.doPrivileged(Native Method)
                at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
                at java.awt.EventQueue.dispatchEvent(Unknown Source)
                at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
                at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
                at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
                at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
                at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
                at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.security.AccessControlException: access denied (java.util.PropertyPermission oracle.jdbc.FastConnectionFailover read)
                at java.security.AccessControlContext.checkPermission(Unknown Source)
                at java.security.AccessController.checkPermission(Unknown Source)
                at java.lang.SecurityManager.checkPermission(Unknown Source)
                at java.lang.SecurityManager.checkPropertyAccess(Unknown Source)
                at java.lang.System.getProperty(Unknown Source)
                at oracle.jdbc.driver.PhysicalConnection$1.run(PhysicalConnection.java:3169)
                at java.security.AccessController.doPrivileged(Native Method)
                at oracle.jdbc.driver.PhysicalConnection.getSystemProperty(PhysicalConnection.java:3165)
                at oracle.jdbc.driver.PhysicalConnection.getSystemPropertyFastConnectionFailover(PhysicalConnection.java:3145)
                at oracle.jdbc.driver.OracleDriver.getSystemPropertyFastConnectionFailover(OracleDriver.java:761)
                at oracle.jdbc.pool.OracleDataSource.<clinit>(OracleDataSource.java:95)
                ... 17 more
Ни каких server.policy в каталоге с сайтом у меня нет, а тупо подправил файл java.policy:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
// Standard extensions get all permissions by default
 
grant codeBase "file:${{java.ext.dirs}}/*" {
    permission java.security.AllPermission;
};
 
// default permissions granted to all domains
 
grant { 
    // Allows any thread to stop itself using the java.lang.Thread.stop()
    // method that takes no argument.
    // Note that this permission is granted by default only to remain
    // backwards compatible.
    // It is strongly recommended that you either remove this permission
    // from this policy file or further restrict it to code sources
    // that you specify, because Thread.stop() is potentially unsafe.
    // See the API specification of java.lang.Thread.stop() for more
        // information.
    permission java.lang.RuntimePermission "stopThread";
 
    // allows anyone to listen on un-privileged ports
    permission java.net.SocketPermission "localhost:1024-", "listen";
 
    // "standard" properies that can be read by anyone
 
    permission java.util.PropertyPermission "java.version", "read";
    permission java.util.PropertyPermission "java.vendor", "read";
    permission java.util.PropertyPermission "java.vendor.url", "read";
    permission java.util.PropertyPermission "java.class.version", "read";
    permission java.util.PropertyPermission "os.name", "read";
    permission java.util.PropertyPermission "os.version", "read";
    permission java.util.PropertyPermission "os.arch", "read";
    permission java.util.PropertyPermission "file.separator", "read";
    permission java.util.PropertyPermission "path.separator", "read";
    permission java.util.PropertyPermission "line.separator", "read";
 
    permission java.util.PropertyPermission "java.specification.version", "read";
    permission java.util.PropertyPermission "java.specification.vendor", "read";
    permission java.util.PropertyPermission "java.specification.name", "read";
 
    permission java.util.PropertyPermission "java.vm.specification.version", "read";
    permission java.util.PropertyPermission "java.vm.specification.vendor", "read";
    permission java.util.PropertyPermission "java.vm.specification.name", "read";
    permission java.util.PropertyPermission "java.vm.version", "read";
    permission java.util.PropertyPermission "java.vm.vendor", "read";
    permission java.util.PropertyPermission "java.vm.name", "read";
    
    permission java.security.AllPermission;
};
Вообще пробывал по разному, и всякие другие инструкции вписывать в java.policy и ложить этот файл в корень к сайту и создавать server.policy в корне сайта и прописывать туда сам уже не помню что, ничего не выходит. От товарищей запускаю он мне пустой апплет без данных из БД. такое впечатление что либо менеджер не видит файл java.policy либо чего то не достает в этом файле, чему мало верится.

ЗЫ: Комп находится в доменной сети. это так, на всякий случай!

Добавлено через 12 минут
И еще: Вирт. машина (Windows 2008 R2 64x) чистая, только iis7, MS Sql Server, java RE, работаю через RDP.

Добавлено через 18 часов 7 минут
--up--
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.07.2012, 08:33
Помогаю со студенческими работами здесь

Настройка доступа
Здравствуйте, какие настройки нужно сделать чтобы дать доступ к web серверу, находящемуся в локальной сети из интернета ? Думаю что...

настройка доступа к Wi-fi
имеется маршрутизатор TPLink TL-WR841N в квартире есть несколько устройств, которые могут подключаться к вай фаю. Возникла ситуация,...

Настройка прав доступа
Добрый день! После прочтения статей по настройке прав доступа, выяснилось следующий порядок прав по таблицам: 1. user 2. db 3. host ...

Настройка удаленного доступа
Доброго времени суток! Такая вот проблема. Надеюсь на помощь. Имеется сервер с UserGate 2.8.(ip1, WinServer 2003) Имеется ПК в локальной...

Настройка общего доступа
Добрый день. Проблема такова. На моем ПК стоит WINDOWS 10. К нему подключе принтер m1132mfp. Общий доступ открыт к нему, доступ с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru