Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > GWT и сокеты, подключение к БД...


Автор: Molodec 29.5.2012, 16:27
Добрый день, господа. Нужно освоить GWT и GXT. До этого разрабатывал на Struts. 
Столкнулся с несколькими проблемами. Работаю с помощью плагина для Eclipse. 
Запускаю проект через Run Web Application. На некоторых скринах у людей открывается через какой.
Например:http://ru.wikibooks.org/wiki/Файл:Hostmod.png. Мне же приходится запускать через Chrome, на который можно скачать плагин. Лиса у меня такой версии на которую нет плагина. А на опере просто не работает. 
Да ладно. Есть еще одна проблема. Насколько я понял читая просторы Интернета, что проги запускаются в SandBox. 
Поэтому когда я пытаюсь использовать Hibernate и создать сессию(session = HibernateUtil.getSessionFactory().openSession()) то получаю такую вещь:
Код

WARN: HHH000223: Recognized obsolete hibernate namespace http://hibernate.sourceforge.net/. 
Use namespace http://www.hibernate.org/dtd/ instead. Refer to Hibernate 3.6 Migration Guide!
29.05.2012 5:23:18 org.hibernate.engine.jdbc.internal.JdbcServicesImpl configure
WARN: HHH000342: Could not obtain connection to query metadata : Your security policy has prevented the connection from being attempted.  
You probably need to grant the connect java.net.SocketPermission to the database server host and port that you wish to connect to.
29.05.2012 5:23:19 org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
WARN: SQL Error: 0, SQLState: 99999
29.05.2012 5:23:19 org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
ERROR: Your security policy has prevented the connection from being attempted.  
You probably need to grant the connect java.net.SocketPermission to the database server host and port that you wish to connect to.

Пробовал прописывать хост и порт в java.policy (grant):
    permission java.net.SocketPermission "127.0.0.1:5434","resolve,connect";
    permission java.net.SocketPermission "localhost:5434","resolve,connect";
Ничего. Потому что, видать дело в этом SandBox. Как получить нормальную, полную функциональность. 
Буду очень рад помощи. Потому что дело, действительно, срочное. 
Обещаю +. 
Заранее спасибо. 

Автор: jk1 29.5.2012, 17:20
Если правильно помню, то этот sandbox проистекает из Google Application Engine. Вы его случайно не подтянули вместе с GWT? Google Eclipse Plugin так и делал по умолчанию. Если да, то удаление его должно помочь.
Другой вариант - пересоздать проект и выключить GAE на этапе создания проекта, оставить только GWT.

Автор: Molodec 29.5.2012, 17:41
jk1, да. Я об этом читал. Пробую запустить. Мне сразу дает адрес:
http://127.0.0.1:8888/Asd.html?gwt.codesvr=127.0.0.1:9997
Естественно я даже не выбирал на каком сервере его развертывать. Поэтому если прохожу по ссылки - получаю HTTP ERROR 404. 
До этого работал с NetBeans и в плагинах для эклипса не силен. Но вроде бы, в интернете советуют использовать jetty. 
Установил пару плагинов в том числе и отсюда:
http://download.eclipse.org/jetty/updates/jetty-bundles-8.x/8.1.0.v20120127
В чем их смысл и как ими пользоваться пока что так и не понял. 

Действительно ли на jetty надо запускать?Если да, то есть ли какая то "удачная" статья или что-то вроде по которой можно было бы это настроить? 

Автор: jk1 29.5.2012, 18:00
Тогда у меня вопрос философский: что Вас заставляет для срочной задачи использовать IDE, которой Вы пользоваться не умеете? Почему не взять знакомый NetBeans? Почему не сделать деплой антом/мавеном вообще без IDE и её подковерной магиии и багов? Как описано, например, https://developers.google.com/web-toolkit/articles/using_gwt_with_hibernate

Автор: Molodec 29.5.2012, 22:06
Цитата(jk1 @  29.5.2012,  18:00 Найти цитируемый пост)
что Вас заставляет для срочной задачи использовать IDE, которой Вы пользоваться не умеете? 

Очень интересный вопрос. В действительности, ответ банален. В работе, которая требует GWT, к сожалению, есть и требование к IDE.

Автор: MaxPayneC 30.5.2012, 10:59
Возможно вы пытаетесь в клиентском коде использовать hibernate - наверняка сказать нельзя, т.к. нет ваших сорцов. Но если это так - попробуйте разделить клиентский код, и серверный - выделить слой сервисов, которые уже будут обращаться к базе посредством hibernate.

Автор: Molodec 30.5.2012, 12:27
Как раз этот код находится в сервисе. 
Но вроде бы удалось создать приложение которое деплоится и не юзает APP Engine. 
Кода до конца разберусь каким образом запустил - отпишусь. 
Спасибо. Всем +. 

Автор: Molodec 30.5.2012, 17:15
Нужно во-первых снять галку с APP Engine при создании проекта. А во вторых - подключить gwt-dev.jar к classpath. 

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