|
|
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
Подскажите, правильно ли подключаю? Никакие библиотеки не нужно подключать в эклипсе? Насколько я понимаю, всё что касается базы описано в классе, и в xml, а сама база в WebContent/misc/customers.sql: Код: 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. Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. вот только получаю Caused by: java.lang.NullPointerException at com.corejsf.CustomerBean.getAll(CustomerBean.java:23) - это строчка где создается Connection или проблема в том, что у меня на машине не установлена CLASSPATH environment variable in the operating system к Derby? там правда есть и scripts that are included with Derby that can set up the classpath to run the Derbytools, но как их прикрутить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2013, 13:12:36 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
rema174, В вашем случае предварительно необходимо запустить сервер Derby. Конечно, если он не стартует вместе в вашим APP сервером. Ну и JAR с драйвером должен быть доступен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2013, 14:24:23 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
Garrick, да, этого не было сделано... теперь Derby запущен - показывается соответствующее инфо в консоли. но после запуска все равно получаю java.lang.NullPointerException... где должна находиться база? сейчас она в проекте WebContent/misc/ но путь к misk misc нигде больше не фигурирует в других файлах... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2013, 15:38:44 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
Ошибка в этой строчке? Код: java 1. Что за сервер? jndi там в принципе есть? Что будет если попробовать вручную llokup сделать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2013, 16:50:51 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
ivanraОшибка в этой строчке? Код: java 1. Что за сервер? jndi там в принципе есть? Что будет если попробовать вручную llokup сделать? Caused by: java.lang.NullPointerException at com.corejsf.CustomerBean.getAll(CustomerBean.java:23) - создаем connection at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at javax.el.BeanELResolver.getValue(BeanELResolver.java:87) at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176) at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203) at org.apache.el.parser.AstValue.getValue(AstValue.java:183) at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:185) at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109) ... 37 more используется tomcat... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2013, 17:17:11 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
rema174используется tomcat... А откуда ваш Tomcat умеет JSF и CDI? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2013, 17:18:38 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
Blazkowiczrema174используется tomcat... А откуда ваш Tomcat умеет JSF и CDI? Blazkowicz, но ведь умеет на других проектах с jsf cdi не используется ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2013, 17:32:39 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
rema174, Варианта два. Либо DataSource вообще не создался. Но тогда бы и приложение не запустилось. И в логе была бы ошибка. Либо Tomcat просто не инжектит DataSource, что более вероятно. Ведь JSF они из коробки не поддерживает. У вас там что-то ещё установлено, что реализует JSF. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2013, 17:40:27 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
Кстати, судя по скринам, в META-INF отсутствует beans.xml. А без него CDI не заработает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2013, 17:43:59 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
авторВарианта два. Либо DataSource вообще не создался. Но тогда бы и приложение не запустилось. И в логе была бы ошибка. Либо Tomcat просто не инжектит DataSource, что более вероятно. Ведь JSF они из коробки не поддерживает. У вас там что-то ещё установлено, что реализует JSF. а что там может быть ещё не установлено, если весь jsf - это javax.faces-2.1.16.jar, и сейчас он в либах на томкате. авторКстати, судя по скринам, в META-INF отсутствует beans.xml. А без него CDI не заработает CDI там нету, он же нужен для GlassFish и тогда beans.xml понадобился бы, а тут томкат. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2013, 18:04:01 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
Без CDI не работает вот эта аннотация: Код: java 1. 2. что и подтверждается логами (ds=null) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2013, 18:16:04 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
ivanra, ладно, автор Configuring a CDI Application. An application that uses CDI must have a file named beans.xml. The file can be completely empty (it has content only in certain limited situations), but it must be present. For a web application, the beans.xml file must be in the WEB-INF directory. добавление beans.xml ничего не дает и Код: java 1. 2. тоже не влияет. попробовать запусть на GlassFish'e? но охота на томкате. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2013, 20:47:22 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
Так томкат вроде из коробки не поддерживает CDI. Можно попробовать: - взять J2EE-сертифицированный TomEE - либо добавить поддержку CDI (например, JBoss-Seam реализация под кодовым названием Weld) - либо вместо инъекции использовать обычный лукап, как-то так: Код: java 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2013, 09:38:34 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
ivanra, и все же в данном случае не используется CDI, т.к. вместо @ManagedBean было бы @Named ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2013, 11:24:30 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
Можно и без CDI, в рамках jee5. <resource-ref> в web.xml есть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2013, 13:01:20 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
ivanraМожно и без CDI, в рамках jee5. <resource-ref> в web.xml есть? конечно <resource-ref> <res-ref-name>jdbc/mydb</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref> кстати, я все-таки изменил строку url="jdbc:derby://localhost:1527/COREJSF;create=true" на url="jdbc:derby://localhost:1527/customers.sql;create=true" ( c какого там было COREJSF ? но результат тотже) и ведь DataSouurseExplorer успешно коннектится к customers.sql ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2013, 13:31:17 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
Ну, значит не поддерживает сервер инъекцию источников данных. В jboss это тоже только с пятой версии появилось. Какая версия томката? А с приложением - придется добавлять поддержку cdi, либо просто сделать лукап, с адресом я вначале ошибся, должно быть так: Код: java 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2013, 14:49:33 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
ivanraНу, значит не поддерживает сервер инъекцию источников данных. В jboss это тоже только с пятой версии появилось. Какая версия томката? А с приложением - придется добавлять поддержку cdi, либо просто сделать лукап, с адресом я вначале ошибся, должно быть так: Код: java 1. 2. поставил TomEE, все эти штуки прямо из коробки - только вывод ошибок улучшился)) Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2013, 22:39:34 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
могу выложить проект, если есть желание поковыряться) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2013, 22:47:44 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
проблема, как тут уже говорилось, в ds - в нем ничего нет, добавляю перед созданием коннекшина: Код: java 1. и мое приложение работает, но ничего ест-но не выводит. и еще в консоли: WARNING: Injection data not found in JNDI context: jndiName='comp/env/jdbc/mydb', target=com.corejsf.CustomerBean/ds ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2013, 15:15:32 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
rema174и еще в консоли: WARNING: Injection data not found in JNDI context: jndiName='comp/env/jdbc/mydb', target=com.corejsf.CustomerBean/ds Ну, вот. Уже что-то. Инжекшн обрыгался, потому что не нашел такого объекта в JNDI. Либо с web.xml, либо с context.xml что-то не так. Мы чтобы не пхать DataSource в приложение настраиваем на сервере вот так: /apache-tomcat-6.0.20/conf/Catalina/localhost/app-name.xml ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2013, 15:30:14 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
Поищите по логу ещё что-нибудь про jdbc/mydb. Может оно с перепугу задеплоилось после приложения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2013, 15:30:52 |
|
||
|
Подключение к Derby в JSF
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, сделал определение драйвера и данные к базе в бине, и заработало. На context.xml эклипс показывает: "No grammar constraints (DTD or XML schema) referenced in the document" - это могло быть причиной? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2013, 16:48:48 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38259306&tid=2129339]: |
0ms |
get settings: |
13ms |
get forum list: |
22ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
43ms |
get topic data: |
16ms |
get forum data: |
4ms |
get page messages: |
85ms |
get tp. blocked users: |
3ms |
| others: | 307ms |
| total: | 503ms |

| 0 / 0 |
